°Ê²¼¤Ë¤â¤¦°ì¤Ä¤Î¡¤¥È¥ê¥Ã¥¡¼¤ÊÎ㤬¤¢¤ê¤Þ¤¹¡¥¤½¤ì¤ÏƱ¤¸¥½¡¼¥¹¥Õ¥¡¥¤¥ë
(true.c)¤«¤éÆó¤Ä¤Î¥×¥í¥°¥é¥à(true
¤Èfalse
)¤òÀ¸À®¤¹
¤ëÊýË¡¤ò¼¨¤·¤Þ¤¹¡¥Æñ¤·¤¤Éôʬ¤Ï¡¤¤½¤ì¤¾¤ì¤Îtrue.c¤Î¥³¥ó¥Ñ¥¤¥ë¤Ç¡¤
°Û¤Ê¤ëcpp
¥Õ¥é¥°¤¬É¬Íפˤʤë¤È¤¤¤¦¤³¤È¤Ç¤¹¡¥
bin_PROGRAMS = true false false_SOURCES = false_LDADD = false.o true.o: true.c $(COMPILE) -DEXIT_CODE=0 -c true.c false.o: true.c $(COMPILE) -DEXIT_CODE=1 -o false.o -c true.c
true_SOURCES
¤ÎÄêµÁ¤¬Ìµ¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡¥Automake ¤Ï¡¤¥½¡¼
¥¹¥Õ¥¡¥¤¥ë̾true.c¤¬Â¸ºß¤¹¤ë¤È°ÅÌۤ˲¾Äꤷ¡¤true.o¤Ë¥³¥ó
¥Ñ¥¤¥ë¤·¡¤true¤Ë¥ê¥ó¥¯¤¹¤ë¥ë¡¼¥ë¤òÄêµÁ¤·¤Þ¤¹¡¥¾åµ¤Î
Makefile.am¤ÇÄ󶡤µ¤ì¤Æ¤¤¤ëtrue.o: true.c
¤Î¥ë¡¼¥ë¤Ï¡¤
Automake¤¬À¸À®¤¹¤ëtrue.o¤ò¥Ó¥ë¥É¤¹¤ë¤¿¤á¤Î¥ë¡¼¥ë¤ËÍ¥À褷¤Þ¤¹¡¥
false_SOURCES
¤Ï¶õ¤ÇÄêµÁ¤µ¤ì¤Æ¤¤¤Þ¤¹ — ¤½¤ÎÊýË¡¤Ç¤Ï¡¤°ÅÌÛ¤ÎÃÍ
¤ÇÃÖ´¹¤µ¤ì¤Þ¤»¤ó¡¥false¤Î¥½¡¼¥¹¤Ç¥ê¥¹¥È¥¢¥Ã¥×¤·¤Æ¤¤¤Ê¤¤¤Î¤Ç¡¤¥×
¥í¥°¥é¥à¤ò¥ê¥ó¥¯¤¹¤ëÊýË¡¤òAutomake¤ËÅÁ¤¨¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥¤³¤ì¤¬
false_LDADD
¹Ô¤ÎÌÜŪ¤Ç¤¹¡¥false_DEPENDENCIES
ÊÑ¿ô¤Ï
false¥¿¡¼¥²¥Ã¥È¤Î°Í¸À¤òÊÝ»ý¤·¤Æ¤¤¤Æ¡¤false_LDADD
¤ÎÆâÍÆ
¤«¤éAutomake¤¬¼«Æ°Åª¤ËÀ¸À®¤µ¤ì¤Þ¤¹¡¥
¾åµ¤Î¥ë¡¼¥ë¤Ï¡¤¥³¥ó¥Ñ¥¤¥é¤¬‘-c’¤È‘-o’¤ÎξÊý¤ò¼õ¤±Æþ¤ì¤Ê¤¤¾ì
¹ç¤Ïưºî¤·¤Þ¤»¤ó¡¥¤³¤ì¤ò´Êñ¤Ë½¤Àµ¤¹¤ë¤¿¤á¡¤(ʹԤ·¤¿make
¤ÎÌäÂê
¤òÈò¤±¤ë¤¿¤á¤Ë)µ¶¤Î°Í¸À¤òƳÆþ¤·¤Þ¤¹¡¥
true.o: true.c false.o $(COMPILE) -DEXIT_CODE=0 -c true.c false.o: true.c $(COMPILE) -DEXIT_CODE=1 -c true.c && mv true.o false.o
¤Þ¤¿¡¤¤³¤ì¤é¤ÎÌÀ¼¨Åª¤Ê¥ë¡¼¥ë¤Ï¡¤de-ANSI-fication¤¬»ÈÍѤµ¤ì¤ë¾ì¹ç¤Ïưºî ¤·¤Þ¤»¤ó(see ANSI)¡¥de-ANSI-fication¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤¿¤á¤Ë¤Ï¡¤¤â¤¦¾¯ ¤·Â¿¤¯¤Î»Å»ö¤¬É¬ÍפǤ¹¡¥
true_.o: true_.c false_.o $(COMPILE) -DEXIT_CODE=0 -c true_.c false_.o: true_.c $(COMPILE) -DEXIT_CODE=1 -c true_.c && mv true_.o false_.o
¤ªÊ¬¤«¤ê¤Î¤è¤¦¤Ë¡¤Æ±¤¸ºî¶È¤ò¹Ô¤Ê¤¦¤¿¤á¡¤¤è¤ê¤¤¤Ã¤½¤¦´Êñ¤ÊÊýË¡¤â¤¢¤ê¤Þ
¤¹¡¥¾åµ¤Î¥Æ¥¯¥Ë¥Ã¥¯¤Ë¤Ï¡¤¥Þ¥Ë¥å¥¢¥ë¤ÎÎã¤È¤·¤Æ»Ä¤·¤Æ¤ª¤¯¤Ë¤Ï½½Ê¬Ìò¤ËΩ
¤Ä¤â¤Î¤â¤¢¤ê¤Þ¤¹¡¥¤·¤«¤·¡¤true
¤Èfalse
¤ò¸½¼ÂŪ¤Ë¥Ó¥ë¥É¤¹
¤ë¾ì¹ç¤Ï¡¤°Ê²¼¤Î¤è¤¦¤Ë¡¤¤ª¤½¤é¤¯¥×¥í¥°¥é¥à¤´¤È¤Ë¥³¥ó¥Ñ¥¤¥ë¤Î¥Õ¥é¥°¤ò»È
ÍѤ¹¤ë¤³¤È¤Ç¤·¤ç¤¦¡¥
bin_PROGRAMS = false true false_SOURCES = true.c false_CPPFLAGS = -DEXIT_CODE=1 true_SOURCES = true.c true_CPPFLAGS = -DEXIT_CODE=0
¤³¤Î¾õ¶·¤Ç¤Ï¡¤Automake¤Ë¤è¤Ã¤Æ¡¤true.c¤Ï°Û¤Ê¤ë¥Õ¥é¥°¤ÇÆóÅÙ¥³¥ó ¥Ñ¥¤¥ë¤µ¤ì¤ë¤³¤È¤Ë¤Ê¤ê¤Þ¤¹¡¥de-ANSI-fication¤Ï¼«Æ°Åª¤Ëưºî¤·¤Þ¤¹¡¥¤³¤Î Îã¤Ç¤Ï¡¤¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡¥¤¥ë¤Î̾Á°¤Ïautomake¤¬ÁªÂò¤·¤Þ¤¹¡¥¤½¤ì¤Ï false-true.o¤Ètrue-true.o¤Ë¤Ê¤ë¤Ç¤·¤ç¤¦¡¥(¥ª¥Ö¥¸¥§¥¯¥È¥Õ¥¡ ¥¤¥ë¤Î̾Á°¤¬ÌäÂê¤È¤Ê¤ë¤³¤È¤ÏÌÇ¿¤Ë¤¢¤ê¤Þ¤»¤ó¡¥)