Next: Build Directories, Previous: Preset Output Variables, Up: Makefile Substitutions [Contents][Index]
°Ê²¼¤ÎÊÑ¿ô¤Ï¡¤¥Ñ¥Ã¥±¡¼¥¸¤¬¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¾ì½ê¤ò»ØÄꤷ¤Þ¤¹¡¥¾ÜºÙ¤Ï¡¤ Variables for Installation Directories in The GNU Coding Standards¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡¥¤³¤ì¤é ¤ÎÊÑ¿ô¤ò»ÈÍѤ¹¤ë¤È¤¤È¤½¤ÎÊýË¡¤Î¾ÜºÙ¤Ï¡¤¤³¤Î¥»¥¯¥·¥ç¥ó¤Î½ª¤ê¤ò»²¾È¤·¤Æ¤¯ ¤À¤µ¤¤¡¥
¥æ¡¼¥¶¤¬¼Â¹Ô¤¹¤ë¼Â¹Ô·Á¼°¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
ÆÉ¤ß¹þ¤ßÀìÍѤΥ¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í¸¤·¤Ê¤¤¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯ ¥È¥ê¤Ç¤¹¡¥
¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í¸¤¹¤ë¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥×¥ì¥Õ¥£¥¯¥¹¤Ç¤¹¡¥¥Ç¥Õ¥© ¥ë¥È¤Ïprefix¤ÈƱ¤¸¤Ç¤¹¡¥exec_prefix¤Ë¤¤¤í¤¤¤í¤Ê¤â¤Î¤òľÀÜ¥¤ ¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È¤ÏÈò¤±¤¿Êý¤¬Îɤ¤¤Ç¤·¤ç¤¦¡¥¤·¤«¤·¡¤¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í¸ ¤¹¤ë¥Õ¥¡¥¤¥ë¤ò´Þ¤à¥Ç¥£¥ì¥¯¥È¥ê¤ËÂФ¹¤ë¥Ç¥Õ¥©¥ë¥ÈÃͤϡ¤exec_prefix ¤«¤éÁêÂÐŪ¤Ê¤â¤Î¤Ë¤¹¤Ù¤¤Ç¤¹¡¥
C¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
Info·Á¼°¤Î¥É¥¥å¥á¥ó¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
¥ª¥Ö¥¸¥§¥¯¥È¥³¡¼¥É¥é¥¤¥Ö¥é¥ê¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
¾¤Î¥×¥í¥°¥é¥à¤¬¼Â¹Ô¤¹¤ë¡¤¼Â¹Ô²Äǽ¤Ê¥×¥í¥°¥é¥à¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯ ¥È¥ê¤Ç¤¹¡¥
½¤Àµ²Äǽ¤Ê¥·¥ó¥°¥ë¥Þ¥·¥ó¤Î¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
man·Á¼°¤Î¥É¥¥å¥á¥ó¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥È¥Ã¥×¥ì¥Ù¥ë¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
GCC¥³¥ó¥Ñ¥¤¥é°Ê³°¤Î¤¿¤á¤ÎC¥Ø¥Ã¥À¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç ¤¹¡¥
Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¤ËÂФ¹¤ë¶¦Ä̤Υ¤¥ó¥¹¥È¡¼¥ë¥×¥ì¥Õ¥£¥¯¥¹¤Ç¤¹¡¥ exec_prefix¤¬°Û¤Ê¤ëÃͤÇÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¡¤prefix¤Ï¥¢¡¼¥¥Æ ¥¯¥Á¥ãÈó°Í¸¥Õ¥¡¥¤¥ë¤ËÂФ·¤Æ¤Î¤ß»ÈÍѤµ¤ì¤Þ¤¹¡¥
¥·¥¹¥Æ¥à´ÉÍý¼Ô¤¬¼Â¹Ô¤¹¤ë¼Â¹Ô·Á¼°¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
½¤Àµ²Äǽ¤Ê¡¤¥¢¡¼¥¥Æ¥¯¥Á¥ã¤Ë°Í¸¤·¤Ê¤¤¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È ¥ê¤Ç¤¹¡¥
ÆÉ¤ß¹þ¤ßÀìÍѤΡ¤¥·¥ó¥°¥ë¥Þ¥·¥ó¤Î¥Ç¡¼¥¿¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ç¤¹¡¥
¤³¤ì¤é¤ÎÊÑ¿ô¤Î¤Û¤È¤ó¤É¤Ï¡¤prefix
¤äexec_prefix
¤Ë°Í¸¤¹¤ëÃÍ
¤Ë¤Ê¤ê¤Þ¤¹¡¥¥Ç¥£¥ì¥¯¥È¥êÊÑ¿ô¤Î½ÐÎÏÃͤ¬Å¸³«¤µ¤ì¤Ê¤¤¤è¤¦¤Ë¹Í褵¤ì¤Æ¤¤¤Þ¤¹¡¥
ŵ·¿Åª¤ÊÎã¤È¤·¤Æ¡¤‘@datadir@’¤Ï¡¤‘/usr/local/share’ ¤Ç¤Ï¤Ê¤¯
‘${prefix}/share’¤ËÃÖ´¹¤µ¤ì¤Þ¤¹¡¥
°Ê²¼¤Îưºî¤Ï¡¤GNU coding standards¤Ç¼¨¤µ¤ì¤ì¤Æ¤¤¤Æ¡¤¥æ¡¼¥¶¤¬¼Â ¹Ô»þ¤Ë¤½¤¦¤Ê¤ë¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡¥
configure
¤Ë»ØÄꤵ¤ì¤ë¤â¤Î¤È¤Ï°Û¤Ê¤ë¥×¥ì¥Õ¥£¥¯¥¹¤ò»ØÄꤹ¤ë¤³¤È
¤¬¤Þ¤À²Äǽ¤Ç¡¤¤½¤Î¾ì¹ç¤ËɬÍפ¬¤¢¤ì¤Ð¡¤¥Ñ¥Ã¥±¡¼¥¸¤Ïmake¤Ç»ØÄꤵ¤ì¤Æ¤¤¤ë¥×
¥ì¥Õ¥£¥¯¥¹¤ËÂбþ¤¹¤ë¤è¤¦¤Ë°Í¸À¤¬¥Ï¡¼¥É¥³¡¼¥É²½¤µ¤ì¤Þ¤¹¡¥
°Û¤Ê¤ë¥¤¥ó¥¹¥È¡¼¥ë°ÌÃÖ¤ò»ØÄꤹ¤ë¤³¤È¤¬²Äǽ¤Ç¡¤¤½¤Î¾ì¹ç¡¤¥Ñ¥Ã¥±¡¼¥¸¤Ï¥³¥ó ¥Ñ¥¤¥ë¤Ç»ØÄꤷ¤¿¾ì½ê¤Ë¡¤¤Þ¤À°Í¸¤·¤Æ¤¤¤ë¤Ï¤º¤Ç¤¹(¤¹¤Ê¤ï¤Á¡¤ ‘make install’¤ò¼Â¹Ô¤¹¤ë¤È¤¤ÏºÆ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤»¤ó)¡¥¤ª¸ß¤¤¤Ë¥°¥ë¡¼ ¥×²½¤µ¤ì¤¿Á´¤Æ¤Î¥Õ¥¡¥¤¥ë¤ò¡¤¥¤¥ó¥¹¥È¡¼¥ë»þ¤Ë·èÄꤹ¤ë¿Í¤â¿¤¤¤Î¤Ç¡¤¤³¤ì¤Ï Èó¾ï¤Ë½ÅÍ×¤ÊÆÃħ¤Ç¡¤¤½¤³¤«¤é¥¤¥ó¥¹¥È¡¼¥ë¸å¤ËºÇ½ªÅª¤Ê¾ì½ê¤Ë¥ê¥ó¥¯¤¬Ä¥¤é¤ì ¤Þ¤¹¡¥
¤³¤ì¤é¤Îµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Ë¡¤datadir
¤¬prefix
¤Î¸½ºß¤Î
Ãͤ˰͸¤¹¤ë‘${prefix}/share’¤È¤·¤ÆÄêµÁ¤µ¤ì¤¿¤Þ¤Þ¤Ë¤Ê¤Ã¤Æ¤¤¤ë¤³¤È
¤¬½ÅÍפǤ¹¡¥
ÅöÁ³¤Î¤³¤È¤Ç¤¹¤¬¡¤¤³¤ì¤é¤ÎÊÑ¿ô¤òMakefiles¤Ç»ÈÍѤ¹¤Ù¤¤Ç¤Ï¤¢¤ê¤Þ¤»
¤ó¡¥Î㤨¤Ð¡¤configure¤Çdatadir
¤òɾ²Á¤¹¤ëÂå¤ï¤ê¤Ë¡¤
Makefile¤Ç¡¤Î㤨¤Ð‘AC_DEFINE_UNQUOTED(DATADIR, "$datadir")’
¤È¤·¤Æ¥Ï¡¼¥É¥³¡¼¥É¤¹¤ë¾ì¹ç¤Ï¡¤‘-DDATADIR="$(datadir)"’¤ò
CPPFLAGS
¤Ë²Ã¤¨¤ë¤Ù¤¤Ç¤¹¡¥
ƱÍͤˡ¤datadir
¤È¤½¤ÎÃç´Ö¤ò¡¤¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤ä¤½¤Î¾¤Î¥Õ¥¡¥¤¥ë¤Ç
ÃÖ´¹¤¹¤ë¤¿¤á¤Ë¡¤AC_OUTPUT_FILES
¤ËÍê¤ë¤Ù¤¤Ç¤Ï¤Ê¤¯¡¤¤½¤ÎÂå¤ï¤ê¤Ë
make
¤Ë¤½¤ÎÃÖ´¹¤ò¹Ô¤Ê¤ï¤»¤Æ¤¯¤À¤µ¤¤¡¥Î㤨¤Ð¡¤Autoconf¤Ï
‘.in’¤Ç½ª¤ë¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤Î¥Æ¥ó¥×¥ì¡¼¥È¤òÇÛÉÛ¤·¤Æ¤¤¤Æ¡¤°Ê²¼¤Î¤è¤¦
¤ÊMakefile¤Î°ìÉô¤ò»ÈÍѤ·¤Æ¤¤¤Þ¤¹¡¥
edit = sed \ -e 's,@datadir\@,$(pkgdatadir),g' \ -e 's,@prefix\@,$(prefix),g'
autoconf: Makefile $(srcdir)/autoconf.in rm -f autoconf autoconf.tmp $(edit) $(srcdir)/autoconf.in >autoconf.tmp chmod +x autoconf.tmp mv autoconf.tmp autoconf
autoheader: Makefile $(srcdir)/autoheader.in rm -f autoheader autoheader.tmp $(edit) $(srcdir)/autoconf.in >autoheader.tmp chmod +x autoheader.tmp mv autoheader.tmp autoheader
ÃíÌܤ¹¤Ù¤¤³¤È¤¬¤¤¤¯¤Ä¤«¤¢¤ê¤Þ¤¹¡¥
¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤Çconfigure
¤¬‘@datadir@’¤òsed¤Î¼°¼«¿È¤Ë
ÃÖ´¹¤¹¤ë¤³¤È¤ò˸¤²¤Þ¤¹¡¥
‘@pkgdatadir@’¤ò»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡ª Âå¤ï¤ê¤Ë¡¤makefileÊÑ¿ô¤Î¥Þ¥Ã ¥Á¥ó¥°¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡¥
‘$(pkgdatadir)’¤Î¤è¤¦¤Ë‘/’¤ò´Þ¤ó¤Ç¤¤¤ëÊÑ¿ô¤ò»ÈÍѤ¹¤ë¤³¤È¤â¤¢¤ë
¤Î¤Ç¡¤sed
¤Î¼°¤Ç‘/’¤ò»ÈÍѤ·¤Ê¤¤¤Ç¤¯¤À¤µ¤¤¡¥
edit
¤Ï¡¤¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥óÆÃͤÎÃÍ(prefix
Åù)¤Ë°Í¸¤·¡¤
VERSION
¤ä¤½¤ì¤Î°ÊÁ°¤Î¤â¤Î¤Ë¤Ï°Í¸¤·¤Ê¤¤Ãͤò»ÈÍѤ¹¤ë¤Î¤Ç¡¤½ÐÎϤÏ
configure.ac¤Ç¤Ï¤Ê¤¯Makefile¤Ë°Í¸¤·¤Þ¤¹¡¥
¤½¤ì¤é¤ò»ÈÍѤ¹¤ë¤³¤È¤ÏÉÔ²Äǽ¤Ç¤¹¡ª¾åµ¤ÎÃÇÊÒ¤ò¡¤(¤ª¤½¤é¤¯)°Ê²¼¤Î¤è¤¦¤Ë½ñ ¤´¹¤¨¤ë¤³¤È¤ÏÉÔ²Äǽ¤Ç¤¹.
autoconf autoheader: Makefile
.in: rm -f $@ $@.tmp $(edit) $< >$@.tmp chmod +x $@.tmp mv $@.tmp $@
¾ÜºÙ¤Ï¡¤See Limitations of Make.
¥½¡¼¥¹¤Ø¤Î¥Ñ¥¹¤ò³Î¼Â¤Ë»ØÄꤷ¡¤¤½¤¦¤·¤Ê¤¤¾ì¹ç¤Ï¥Ñ¥Ã¥±¡¼¥¸¤Ïʬ³ä¥Ó¥ë¥É¤ò¥µ ¥Ý¡¼¥È¤·¤Ê¤¤¤Ç¤·¤ç¤¦¡¥
Next: Build Directories, Previous: Preset Output Variables, Up: Makefile Substitutions [Contents][Index]