Previous: Extending, Up: Not Enough [Contents][Index]
¤Û¤È¤ó¤É¤Î¥×¥í¥¸¥§¥¯¥È¤Ç¡¤¤¹¤Ù¤Æ¤ÎMakefile¤ÏAutomake¤ÇÀ¸À®¤µ¤ì ¤Þ¤¹¡¥¤·¤«¤·¡¤¾õ¶·¤Ë¤è¤Ã¤Æ¤Ï¼ê½ñ¤¤ÎMakefile¤ò¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê ¤ËÇÛÃÖ¤¹¤ëɬÍפ¬¤¢¤ë¥×¥í¥¸¥§¥¯¥È¤â¤¢¤ê¤Þ¤¹¡¥Î㤨¤Ð¡¤¤¢¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Ï ÆÈ¼«¤Î¥Ó¥ë¥É¥·¥¹¥Æ¥à¤òÍѤ¤¤¿¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤Î¥×¥í¥¸¥§¥¯¥È¤Ç¡¤¤½¤ì°Ê³° ¤ÏAutomake¤ò»ÈÍѤ·¤Æ¤¤¤ë¤³¤È¤â¤¢¤ë¤Ç¤·¤ç¤¦¡¥
°Ê²¼¤ÎºÆµ¢Åª¤Ê¥¿¡¼¥²¥Ã¥È¤ò¤¹¤Ù¤ÆÇ§¼±¤¹¤ëMakefile¤¬¤¢¤ë¥Ç¥£¥ì¥¯
¥È¥ê¤Ç¤¢¤ì¤Ð¡¤Ç¤°Õ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤òSUBDIRS
¤äDIST_SUBDIRS
¤Ë¥ê¥¹¥È¥¢¥Ã¥×¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥
¥æ¡¼¥¶¤¬°Ê²¼¤Î¥¿¡¼¥²¥Ã¥È¤ò¼Â¹Ô¤·¤¿¤È¤¡¤¥¿¡¼¥²¥Ã¥È¤Ï¤¹¤Ù¤Æ¤Î¥µ¥Ö¥Ç¥£¥ì ¥¯¥È¥ê¤ÇºÆµ¢Åª¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡¥¤³¤ì¤Ï¡¤¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤Î Makefile¤¬¤½¤ì¤é¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤³¤È¤¬½ÅÍפǤ¢¤ëÍýͳ¤Ç¤¹¡¥
all
¥Ñ¥Ã¥±¡¼¥¸¤ò´°Á´¤Ë¥³¥ó¥Ñ¥¤¥ë¤·¤Þ¤¹¡¥¤³¤ì¤Ï¡¤Automake¤¬À¸À®¤¹¤ë Makefile¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤Î¥¿¡¼¥²¥Ã¥È¤Ç¤¹¤¬¡¤¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤Î Makefile¤Ç¤Ï¥Ç¥Õ¥©¥ë¥È¤Ç¤¢¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¡¥
distdir
tarball¤¬¹½ÃÛ¤µ¤ì¤ëÁ°¤Ë$(distdir)
¤ËÇÛÉÛ¤¹¤Ù¤¥Õ¥¡¥¤¥ë¤ò¥³¥Ô¡¼¤·
¤Þ¤¹¡¥¤â¤Á¤í¤ó¡¤¤³¤Î¥¿¡¼¥²¥Ã¥È¤âno-dist
¥ª¥×¥·¥ç¥ó
(see Options¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¾ì¹ç¤ÏÉÔÍפǤ¹¡¥
ÊÑ¿ô$(top_distdir)
¤È$(distdir)
(see Dist)¤Ï¡¤
distdir
¥¿¡¼¥²¥Ã¥È¤¬¸Æ¤Ó½Ð¤µ¤ì¤ë¤È¤¡¤¥µ¥Ö¥Ñ¥Ã¥±¡¼¥¸¤È¤Ê¤ë³°Éô¥Ñ¥Ã
¥±¡¼¥¸¤«¤éÅϤµ¤ì¤Þ¤¹¡¥¤³¤ì¤éÆó¤Ä¤ÎÊÑ¿ô¤Ï¡¤ºÆµ¢Åª¤Ë¤Ê¤Ã¤Æ¤¤¤ë¥Ç¥£¥ì¥¯¥È
¥ê¤ÇÄ´À°¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¤¤¹¤Ç¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤Þ¤¹¡¥
install
install-data
install-exec
uninstall
¥Õ¥¡¥¤¥ë¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¤ê¥¢¥ó¥¤¥ó¥¹¥È¡¼¥ë¤·¤¿¤ê¤·¤Þ¤¹ (see Install)¡¥
install-info
Texinfo¥É¥¥å¥á¥ó¥È¤À¤±¤ò¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤¹(see Texinfo)¡¥
installdirs
¥¤¥ó¥¹¥È¡¼¥ë¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¤Þ¤¹¤¬¡¤¥Õ¥¡¥¤¥ë¤Ï¥¤¥ó¥¹¥È¡¼¥ë¤·¤Þ¤»¤ó¡¥
check
installcheck
¥Ñ¥Ã¥±¡¼¥¸¤òÄ´ºº¤·¤Þ¤¹(see Tests)¡¥
mostlyclean
clean
distclean
maintainer-clean
¥¯¥ê¡¼¥ó¥ë¡¼¥ë¤Ç¤¹(see Clean)¡¥
dvi
pdf
ps
info
html
¤µ¤Þ¤¶¤Þ¤Ê½ñ¼°¤Î¥É¥¥å¥á¥ó¥È¤ò¥Ó¥ë¥É¤·¤Þ¤¹(see Texinfo)¡¥
tags
ctags
TAGS
¤ÈCTAGS
¤ò¥Ó¥ë¥É¤·¤Þ¤¹(see Tags)¡¥
¥×¥í¥¸¥§¥¯¥È¤ÇGettext¤ò»ÈÍѤ·¤¿¤³¤È¤¬¤¢¤ë¾ì¹ç¡¤¤³¤ì¤Ï¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼
¤ÎMakefile¤¬Automake¤¬»ÈÍѲÄǽ¤À¤È¤¤¤¦Îɤ¤Îã¤Ë¤Ê¤ê¤Þ¤¹¡¥
po/¤Èintl/¤Ë¤¢¤ëgettextize
¤µ¤ì¤¿
Makefile¤Ï¡¤¤³¤ì¤é¤¹¤Ù¤Æ¤Î¥¿¡¼¥²¥Ã¥È¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¼ê½ñ¤¤Î
Makefile¤Ç¤¹¡¥¤¹¤Ê¤ï¤Á¡¤Automake¥Ñ¥Ã¥±¡¼¥¸¤ÎSUBDIRS
¤ËÄÉ
²Ã¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥
DIST_SUBDIRS
¤À¤±¤Ç¥ê¥¹¥È¥¢¥Ã¥×¤µ¤ì¤Æ¤¤¤Æ¡¤SUBDIRS
¤Ç¥ê¥¹
¥È¥¢¥Ã¥×¤µ¤ì¤Æ¤¤¤Ê¤¤¥Ç¥£¥ì¥¯¥È¥ê¤Ï¡¤distclean
¡¤
maintainer-clean
¡¤¤½¤·¤Ædistdir
¥ë¡¼¥ë¤À¤±¤¬É¬ÍפǤ¹
(see Conditional Subdirectories)¡¥
Ä̾¤³¤ì¤é¤Î¥ë¡¼¥ë¤Î¿¤¯¤Ï¡¤¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤Î¥µ¥Ö¥×¥í¥¸¥§¥¯¥È¤Ë¤Ï̵ ´Ø·¸¤Ç¤¹¤¬¡¤¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤ¬¤¦¤Þ¤¯Æ°ºî¤¹¤ë¤¿¤á¤ËÍ׵ᤵ¤ì¤Þ¤¹¡¥²¿¤â¤·¤Ê ¤¤¥ë¡¼¥ë¤âOK¤Ê¤Î¤Ç¡¤¥É¥¥å¥á¥ó¥È¤â¥¿¥°¤Î¥µ¥Ý¡¼¥È¤â¤Ê¤¤¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼ ¤Î¥×¥í¥¸¥§¥¯¥È¤òÅý¹ç¤¹¤ë¾ì¹ç¤Ï¡¤Ã±½ã¤ËMakefile¤Ë¤òÄɲ乤뤳¤È ¤â²Äǽ¤Ç¤·¤ç¤¦¡¥
EMPTY_AUTOMAKE_TARGETS = dvi pdf ps info html tags ctags .PHONY: $(EMPTY_AUTOMAKE_TARGETS) $(EMPTY_AUTOMAKE_TARGETS):
¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤Î¥Ó¥ë¥É¥·¥¹¥Æ¥à¤È¤ÎÅý¹ç¤Î¤â¤¦°ì¤Ä¤Î¦Ì̤ϡ¤¤½¤ì¤é¤¬
VPATH¤Î¥Ó¥ë¥É¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë¤«¤É¤¦¤«¤Ë¤è¤ê¤Þ¤¹¡¥ÌÀ¤é¤«¤Ë¡¤¥µ¥Ö¥Ñ¥Ã
¥±¡¼¥¸¤¬VPATH¤Î¥Ó¥ë¥É¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¤¥Ñ¥Ã¥±¡¼¥¸Á´ÂΤǤÏVPATH
¤Î¥Ó¥ë¥É¤ò¥µ¥Ý¡¼¥È¤·¤Ê¤¤¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡¥¸À¤¤Âؤ¨¤ë¤È¡¤make
distcheck
¤ÏVPATH¤Î¥Ó¥ë¥É¤Ë°Í¸¤¹¤ë¤¿¤áưºî¤·¤Ê¤¤¤³¤È¤ò°ÕÌ£¤·¤Þ¤¹¡¥¤³
¤ì¤òÍøÍѤ·¤Ê¤¤¤³¤È¤â²Äǽ¤Ç¤¹(¼ÂºÝ¡¤Automake¥æ¡¼¥¶¤Ë¤Ïmake
distcheck
¤òʹ¤¤¤¿¤³¤È¤â¤Ê¤¤¿Í¤¬¤¿¤¯¤µ¤ó¤¤¤Þ¤¹)¡¥¤½¤ì°Ê³°¤Î¿Í¡¹¤Ï¡¤´û
¸¤ÎMakefile¤òVPATH¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤è¤¦¤Ë²þ¤¤¹¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡¥
¤½¤¦¤¹¤ë¤³¤È¤ÎɬÍ×À¤òAutomake¤¬Í׵᤹¤ë¤ï¤±¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¤¬¡¥Autoconf
¤À¤±¤ÏɬÍפȤ·¤Þ¤¹(see Build Directories in The Autoconf Manual)¡¥É¬ÍפȤʤëÂåÆþ¤Ï¡¤Makefile¤Î½è
Íý¤Çconfigure¤ÇÄêµÁ¤µ¤ì¤ë@scrdir@
¡¤
@top_srcdir@
¡¤¤½¤·¤Æ@top_buildir@
¤Ç(see Preset Output Variables in The Autoconf
Manual)¡¤¤½¤ì¤é¤ÏÁ°½Ò¤Î$(distdir)
¤È$(top_distdir)
ÊÑ¿ô¤Î
¤è¤¦¤ËMakefile¤Ç·×»»¤µ¤ì¤Þ¤»¤ó¡¥
¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¡¼¤ÎMakefile¤¬¾åµ¤ÇÍ׵ᤵ¤ì¤ë¥¿¡¼¥²¥Ã¥È¤òƳÆþ¤¹ ¤ë¤è¤¦¤ËÊÔ½¸¤¹¤ë¤Î¤Ï¡¤ÉÔÊØ¤Ê¤³¤È¤â»þ¡¹¤¢¤ê¤Þ¤¹¡¥Î㤨¤Ð¡¤¿·¤·¤¤¥Ð¡¼¥¸¥ç ¥ó¤Ë´Êñ¤Ë¹¹¿·¤Ç¤¤ë¤è¤¦¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¤Î¥½¡¼¥¹¤ò¤¤¤¸¤é¤Ê¤¤¤è¤¦¤Ë¤·¤¿¤¤ ¿Í¤â¤¤¤ë¤«¤â¤·¤ì¤Þ¤»¤ó¡¥
¾¤Ë¤âÆó¤Ä¤Î¹Í¤¨¤¬¤¢¤ê¤Þ¤¹¡¥GNU make¤È²¾Äꤹ¤ë¾ì¹ç¡¤°ì¤Ä¤ÎÊýË¡¤È¤·¤Æ¡¤
Í׵ᤵ¤ì¤ë¥¿¡¼¥²¥Ã¥È¤òÄɲä·¥µ¡¼¥É¥Ñ¡¼¥Æ¥£¤ÎMakefile¤ò¥¤¥ó¥¯¥ë¡¼
¥É¤·¤¿GNUmakefile¤ò¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËÄɲ乤뤳¤È¤¬²Äǽ¤Ç¤¹¡¥
VPATH¤Î¥Ó¥ë¥É¤Ç¤³¤ì¤òưºî¤¹¤ë¤¿¤á¡¤GNUmakefile¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Î
¥Ó¥ë¥É¤Ç¤À¤Þ¤¹É¬Íפ¬¤¢¤ê¤Þ¤¹¡¥¤³¤¦¤¹¤ë¤¿¤á¤ÎºÇ¤â´Êñ¤ÊÊýË¡¤Ï¡¤Âå¤ï¤ê¤Ë
¤³¤ì¤òGNUmakefile.in¤Ë½ñ¤¡¤³°Éô¥Ñ¥Ã¥±¡¼¥¸¤«¤é
AC_CONFIG_FILES
¤Ç½èÍý¤µ¤»¤ë¤³¤È¤Ç¤¹¡¥Î㤨¤Ð¡¤Makefile¤Ç
¥É¥¥å¥á¥ó¥È¤Î¥¿¡¼¥²¥Ã¥È°Ê³°¤Î¤¹¤Ù¤Æ¤Î¥¿¡¼¥²¥Ã¥È¤òÄêµÁ¤·¤Æ¤¤¤ë¤È²¾Äꤷ¡¤
check
¥¿¡¼¥²¥Ã¥È¤Ï¼ÂºÝ¤Ë¤Ïtest
¤Ç¸Æ¤Ó½Ð¤µ¤ì¤ë¾ì¹ç¡¤
GNUmakefile(¤Þ¤¿¤ÏGNUmakefile.in)¤ò°Ê²¼¤Î¤è¤¦¤Ë½ñ¤¯¤Ç¤·¤ç
¤¦¡¥
# First, include the real Makefile include Makefile # Then, define the other targets needed by Automake Makefiles. .PHONY: dvi pdf ps info html check dvi pdf ps info html: check: test
include
¤ò»ÈÍѤ·¤Ê¤¤Æ±¤¸¤è¤¦¤Ê¹Í¤¨¤Ï¡¤ËÜʪ¤ÎMakefile¤Ë¥ë¡¼
¥ë¤òÁ÷¤ë¡¤Âå¤ï¤ê¤ÎMakefile¤ò½ñ¤¯¤³¤È¤Ç¡¤$(MAKE) -f
Makefile.real $(AM_MAKEFLAGS) target
(¥ª¥ê¥¸¥Ê¥ë¤ÎMakefile¤Î̾
Á°¤òÊѹ¹¤Ç¤¤ë¾ì¹ç)¡¤¤Þ¤¿¤Ï¡¤cd subdir && $(MAKE)
$(AM_MAKEFLAGS) target
(¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤Î¥×¥í¥¸¥§¥¯¥È¤Î³¬Áؤò¤â¤¦°ì
¤Ä¿¼¤¯¤Ç¤¤ë¾ì¹ç)¤Î¤¤¤º¤ì¤«¤òÍѤ¤¤Þ¤¹¡¥¤³¤ÎÂå¤ï¤ê¤ÎMakefile¤ò
Automake¤ÇÀ¸À®²Äǽ¤À¤È¤¤¤¦¤Î¤Ï¡¤Îɤ¤ÃΤ餻¤Ç¤·¤ç¤¦¡¥¥ë¡¼¥ë¤òÁ÷¤ê¤Ä¤±¤ë
-local ¥¿¡¼¥²¥Ã¥È(see Extending)¤À¤±¤¬É¬ÍפǤ¹¡¥¤â¤Á¤í¤ó¡¤¤½¤ì°Ê³°
¤ÎAutomake¤Îµ¡Ç½¤âÍøÍѲÄǽ¤Ê¤Î¤Ç¡¤Automake¤ËÇÛÉۤȥ¤¥ó¥¹¥È¡¼¥ë¤ò¼Â¹Ô¤µ
¤»¤ë¤³¤È¤ò·èÄꤹ¤ë¤³¤È¤â²Äǽ¤Ç¤·¤ç¤¦¡¥°Ê²¼¤Ï¡¤¼Â¹Ô²Äǽ¤Ê
Makefile.am¤Ç¤¹¡¥
all-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) all check-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) test clean-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) clean # Assuming the package knows how to install itself install-data-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) install-data install-exec-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) install-exec uninstall-local: cd subdir && $(MAKE) $(AM_MAKEFLAGS) uninstall # Distribute files from here. EXTRA_DIST = subdir/Makefile subdir/program.c ...
¤³¤Î¥¢¥¤¥Ç¥£¥¢¤ÏºÇ¸å¤Î¼êÃʤǡ¤¥µ¥Ö¥×¥í¥¸¥§¥¯¥È¤Î¥Ó¥ë¥É¥·¥¹¥Æ¥à¤ò̵»ë¤·¡¤ ¤¹¤Ù¤Æ¤ò¤³¤ÎÂå¤ï¤ê¤ÎMakefile.am¤ÇÀ¸À®¤·¤Þ¤¹¡¥¤³¤ì¤Ï¡¤VPATH¤Î¥Ó ¥ë¥É¤¬É¬Íפǥµ¥Ö¥×¥í¥¸¥§¥¯¥È¤¬¤½¤ì¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤Ê¤¤¾ì¹ç¡¤Èó¾ï¤ËÍý¤Ë ¤«¤Ê¤Ã¤¿¤â¤Î¤Ë´¶¤¸¤ë¤Ç¤·¤ç¤¦¡¥
Previous: Extending, Up: Not Enough [Contents][Index]