Next: Canonicalization, Previous: Strictness, Up: Generalities [Contents][Index]
AutomakeÊÑ¿ô¤Ï¡¤°ìÈ̤˰ʲ¼¤Î°ìÍͤÊ̿̾ˡ(uniform naming scheme)
¤Ë½¾¤Ã¤Æ¤¤¤Æ¡¤¤½¤ì¤Ï¡¤¥×¥í¥°¥é¥à(¤È¤½¤Î¾¤ÎÇÉÀ¸¤µ¤ì¤ë¥ª¥Ö¥¸¥§¥¯¥È)¤Î¥Ó
¥ë¥ÉÊýË¡¤È¡¤¤½¤ì¤é¤Î¥¤¥ó¥¹¥È¡¼¥ëÊýË¡¤Î·èÄê¤òÍÆ°×¤Ë¤·¤Þ¤¹¡¥¤³¤Î¼êË¡¤Ï¡¤
configure
»þ¤Ë¥Ó¥ë¥É¤¹¤ë¤â¤Î¤ò·èÄꤹ¤ë¤³¤È¤â¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Þ¤¹¡¥
make
»þ¤Ë¥Ó¥ë¥É¤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ò·èÄꤹ¤ë¤¿¤á¡¤ÆÃÄê¤ÎÊÑ¿ô¤ò»ÈÍÑ
¤·¤Þ¤¹¡¥ÊÑ¿ô¤Î̾Á°¤Ï¡¤¤¤¤¯¤Ä¤«¤ÎÉôÉʤò¤ª¸ß¤¤¤ËÏ¢·ë¤·¤¿¤â¤Î¤«¤é¤Ç¤¤Æ¤¤
¤Þ¤¹¡¥
¥Ó¥ë¥É¤¹¤ë¤â¤Î¤òautomake¤ËÅÁ¤¨¤ëÉôÉʤϡ¤°ìÈ̤˥ץ饤¥Þ¥ê¤È¸Æ¤Ð¤ì
¤Æ¤¤¤Þ¤¹¡¥Î㤨¤Ð¡¤¥×¥é¥¤¥Þ¥ê¤ÎPROGRAMS
¤Ï¡¤¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¥ê¥ó¥¯
¤µ¤ì¤ë¥×¥í¥°¥é¥à¤Î¥ê¥¹¥È¤òÊÝ»ý¤·¤Æ¤¤¤Þ¤¹¡¥
¥Ó¥ë¥É¤·¤¿¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¾ì½ê¤ò·èÄꤹ¤ë¤¿¤á¡¤°Û¤Ê¤ë̾Á°
¤ÎÁȤ¬»ÈÍѤµ¤ì¤Þ¤¹¡¥¤³¤ì¤é¤Î̾Á°¤Ï¥×¥é¥¤¥Þ¥ê¤ËÁ°ÃÖ¤µ¤ì¤Æ¤¤¤Æ¡¤¤½¤ì¤Ï¥¤
¥ó¥¹¥È¡¼¥ë¤¹¤ë¥Ç¥£¥ì¥¯¥È¥ê¤È¤·¤Æ»ÈÍѤµ¤ì¤ëɸ½àŪ¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤ò¼¨¤·¤Æ
¤¤¤Þ¤¹¡¥É¸½àŪ¤Ê¥Ç¥£¥ì¥¯¥È¥ê̾¤ÏGNU¤Îɸ½à¤ÇÍ¿¤¨¤é¤ì¤Æ¤¤¤Þ¤¹
(see Directory Variables in The GNU Coding Standards)¡¥
Automake¤Ï¡¤pkglibdir
¡¤pkgincludedir
¡¤¤½¤·¤Æ
pkgdatadir
¤òÍѤ¤¤Æ¡¤¤³¤Î¥ê¥¹¥È¤ò³ÈÄ¥¤·¤Þ¤¹¡¥¤³¤ì¤é¤ÏÈó
‘pkg’¤Î¥Ð¡¼¥¸¥ç¥ó¤ÈƱ¤¸¤Ç¤¹¤¬¡¤‘$(PACKAGE)’¤¬Éղ䵤ì¤Þ¤¹¡¥
Î㤨¤Ð¡¤pkglibdir
¤Ï$(libdir)/$(PACKAGE)
¤È¤·¤ÆÄêµÁ¤µ¤ì¤Þ
¤¹¡¥
¤½¤ì¤¾¤ì¤Î¥×¥é¥¤¥Þ¥ê¤ËÂФ·¤Æ¡¤‘EXTRA_’¤ò¥×¥é¥¤¥Þ¥ê̾¤ËÁ°ÃÖ¤·¤ÆÌ¿
̾¤µ¤ì¤¿ÄɲäÎÊÑ¿ô¤¬¤¢¤ê¤Þ¤¹¡¥¤³¤ÎÊÑ¿ô¤Ï¡¤¥Ó¥ë¥É¤µ¤ì¤¿¤ê¤µ¤ì¤Ê¤«¤Ã¤¿¤ê
¤¹¤ë²ÄǽÀ¤Î¤¢¤ë¥ª¥Ö¥¸¥§¥¯¥È¤Î¥ê¥¹¥È¤Ç»ÈÍѤµ¤ì¡¤¤½¤ì¤Ï¡¤
configure
¤¬·èÄꤷ¤¿¤â¤Î¤Ë°Í¸¤·¤Þ¤¹¡¥Automake¤Ï¡¤¤¹¤Ù¤Æ¤Î¾õ¶·¤Ç
ưºî¤¹¤ëMakefile.in¤òÀ¸À®¤¹¤ë¤¿¤á¤Ë¡¤¥Ó¥ë¥É¤µ¤ì¤ë²ÄǽÀ¤Î¤¢¤ë¥ª
¥Ö¥¸¥§¥¯¥ÈÁ´ÂΤΥꥹ¥È¤ò¤¢¤é¤«¤¸¤áÃΤäƤª¤¯É¬Íפ¬¤¢¤ë¤Î¤Ç¡¤¤³¤ÎÊÑ¿ô¤¬
ɬÍפˤʤê¤Þ¤¹¡¥
Î㤨¤Ð¡¤cpio
¤Ïconfigure»þ¤Ë¥Ó¥ë¥É¤¹¤ë¥×¥í¥°¥é¥à¤ò·èÄꤷ¤Þ¤¹¡¥
bindir
¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¥×¥í¥°¥é¥à¤â¤¢¤ì¤Ð¡¤sbindir
¤Ë
¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë¤â¤Î¤â¤¢¤ê¤Þ¤¹¡¥
EXTRA_PROGRAMS = mt rmt bin_PROGRAMS = cpio pax sbin_PROGRAMS = $(MORE_PROGRAMS)
ÀÜÆ¬¼¤¬¤Ê¤¤¥×¥é¥¤¥Þ¥ê¤òÊÑ¿ô¤È¤·¤ÆÄêµÁ¤¹¤ë¤³¤È¡¤Î㤨¤ÐPROGRAMS
¤Ï¥¨¥é¡¼¤Ë¤Ê¤ê¤Þ¤¹¡¥
°ìÈÌŪ¤Ê‘dir’ÀÜÈø¼¤Ï¡¤ÊÑ¿ô̾¤òºî¤ë¤È¤¤Ë¤Ï¼Î¤Æ¤é¤ì¤ë¤³¤È¤ËÃí°Õ¤· ¤Æ²¼¤µ¤¤¡¥¤³¤Î¤¿¤á¡¤‘bindir_PROGRAMS’¤Ç¤Ï¤Ê¤¯¡¤ ‘bin_PROGRAMS’¤È½ñ¤¤Þ¤¹¡¥
¤¹¤Ù¤Æ¤Î¼ïÎà¤Î¥ª¥Ö¥¸¥§¥¯¥È¤¬¡¤¤¹¤Ù¤Æ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤ë ¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡¥Automake¤Ï¥¨¥é¡¼¤ò¸«¤Ä¤±¤¿¤È¤¡¤¥Õ¥é¥°¤òÉÕ¤±¤è¤¦¤È ¤·¤Þ¤¹¡¥Automake¤Ï¥Ç¥£¥ì¥¯¥È¥ê̾¤Ç¤ÎÌÀ¤é¤«¤Ê¥¹¥Ú¥ë¥ß¥¹¤â¿ÇÃǤ·¤Þ¤¹¡¥
ɸ½à¥Ç¥£¥ì¥¯¥È¥ê¤Ï — Automake¤Ë¤è¤Ã¤Æ¶¯²½¤µ¤ì¤Æ¤Ï¤¤¤Þ¤¹¤¬ — ½½Ê¬¤Ç
¤Ê¤¤¾ì¹ç¤â¤¢¤ê¤Þ¤¹¡¥ÆÃ¤Ë¡¤Á°¤â¤Ã¤ÆÄêµÁ¤µ¤ì¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Î¥µ¥Ö¥Ç¥£
¥ì¥¯¥È¥ê¤Ë¥ª¥Ö¥¸¥§¥¯¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤ÈÌò¤ËΩ¤Ä¤³¤È¤â¤¢¤ê¤Þ¤¹¡¥¤³¤Î
¤¿¤á¡¤Automake¤Ï¥¤¥ó¥¹¥È¡¼¥ë²Äǽ¤Ê¥Ç¥£¥ì¥¯¥È¥ê¤Î¥ê¥¹¥È¤ò³ÈÄ¥¤¹¤ë¤³¤È¤ò
²Äǽ¤Ë¤·¤Þ¤¹¡¥Í¿¤¨¤é¤ì¤Æ¤¤¤ëÀÜÆ¬¼(Î㤨¤Ð‘zar’)¤Ï¡¤Æ±¤¸Ì¾Á°¤ÎÊÑ¿ô
¤Ë‘dir’¤òÉղä·¤¿ÊÑ¿ô(Î㤨¤Ðzardir
)¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë
͸ú¤Ç¤¹¡¥
Î㤨¤Ð¡¤HTML¥Õ¥¡¥¤¥ë¤Î¥¤¥ó¥¹¥È¡¼¥ë¤ÏAutomake¤Î°ìÉô¤Ç¤¹¤¬¡¤°Ê²¼¤Î¤è¤¦¤Ë ¤·¤ÆÀ¸¤ÎHTML¥É¥¥å¥á¥ó¥È¤ò¥¤¥ó¥¹¥È¡¼¥ë²Äǽ¤Ç¤¹¡¥
htmldir = $(prefix)/html html_DATA = automake.html
ÆÃÊ̤ÊÀÜÆ¬¼‘noinst’¤Ï¡¤³ºÅö¤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¤ò¥Ó¥ë¥É¤·¥¤¥ó¥¹¥È¡¼ ¥ë¤Ï·è¤·¤Æ¹Ô¤Ê¤ï¤Ê¤¤¤³¤È¤ò¼¨¤·¤Þ¤¹¡¥¤³¤ì¤Ï¡¤¥Ñ¥Ã¥±¡¼¥¸»Ä¤ê¤Î¥Ó¥ë¥É¤Çɬ Íפʥª¥Ö¥¸¥§¥¯¥È¡¤Î㤨¤Ð¡¤¥¹¥¿¥Æ¥£¥Ã¥¯¥é¥¤¥Ö¥é¥ê(see A Library)¤ä¡¤ Êä½õŪ¤Ê¥¹¥¯¥ê¥×¥È¤ËÂФ·¤ÆÍ¸ú¤Ç¤¹¡¥
ÆÃÊ̤ÊÀÜÆ¬¼‘check’¤Ï¡¤³ºÅö¤¹¤ë¥ª¥Ö¥¸¥§¥¯¥È¤¬make check
¥³
¥Þ¥ó¥É¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç¥Ó¥ë¥É¤µ¤ì¤Ê¤¤¤³¤È¤ò¼¨¤·¤Þ¤¹¡¥¤³¤ì¤é¤Î¥ª¥Ö¥¸¥§¥¯
¥È¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤â¤µ¤ì¤Þ¤»¤ó¡¥
¸½ºß¤Î¥×¥é¥¤¥Þ¥ê̾¤Ï¡¤‘PROGRAMS’¡¤‘LIBRARIES’¡¤‘LISP’¡¤ ‘PYTHON’¡¤‘JAVA’¡¤‘SCRIPTS’¡¤‘DATA’¡¤ ‘HEADERS’¡¤‘MANS’¡¤¤½¤·¤Æ‘TEXINFOS’¤Ç¤¹¡¥
automake
¤Îưºî¤Î¾¤Î¦Ì̤òÀ©¸æ¤¹¤ë¡¤ÄɲäÎÀÜÆ¬¼¤¬²Äǽ¤Ê¥×¥é¥¤
¥Þ¥ê¤â¤¢¤ê¤Þ¤¹¡¥¸½ºßÄêµÁ¤µ¤ì¤Æ¤¤¤ëÀÜÆ¬¼¤Ï¡¤‘dist_’¡¤
‘nodist_’¡¤¤½¤·¤Æ‘nobase_’¤Ç¤¹¡¥¤³¤ì¤é¤ÎÀÜÆ¬¼¤Ï¸å¤ÇÀâÌÀ¤·¤Þ
¤¹(see Program and Library Variables)¡¥