Next: , Up: Alternative Programs   [Contents][Index]


5.2.1 ÆÃÄê¤Î¥×¥í¥°¥é¥à¤ÎÄ´ºº

°Ê²¼¤Î¥Þ¥¯¥í¤Ï¡¤ÆÃÄê¤Î¥×¥í¥°¥é¥à¤òÄ´ºº¤·¤Þ¤¹ — ¤½¤ì¤Ï¸ºß¤¹¤ë¤«¤É¤¦¤«¡¤ ¤½¤·¤Æ¾ì¹ç¤Ë¤è¤Ã¤Æ¤ÏÆÃÄê¤Îµ¡Ç½¤ò¥µ¥Ý¡¼¥È¤¹¤ë¤«¤É¤¦¤«¤Ç¤¹¡¥

Macro: AC_PROG_AWK

gawk¡¤mawk¡¤nawk¡¤¤½¤·¤Æawk¤ò¡¤¤³¤Î½çÈÖ¤ÇÄ´ ºº¤·¡¤ºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¤â¤Î¤Ë½ÐÎÏÊÑ¿ôAWK¤òÀßÄꤷ¤Þ¤¹¡¥ºÇÎɤμÂÁõ¤È Êó¹ð¤µ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¤ºÇ½é¤Ëgawk¤òÄ´ºº¤·¤Þ¤¹¡¥

Macro: AC_PROG_EGREP

grep -E¤Èegrep¤ò¤³¤Î½çÈÖ¤ÇÄ´ºº¤·¡¤ºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¤â¤Î¤Ç½Ð ÎÏÊÑ¿ôEGREP¤òÀßÄꤷ¤Þ¤¹¡¥

Macro: AC_PROG_FGREP

grep -F¤Èfgrep¤ò¤³¤Î½çÈÖ¤ÇÄ´ºº¤·¡¤ºÇ½é¤Ë¸«¤Ä¤«¤Ã¤¿¤â¤Î¤Ç½Ð ÎÏÊÑ¿ôFGREP¤òÀßÄꤷ¤Þ¤¹¡¥

Macro: AC_PROG_INSTALL

¸½ºß¤ÎPATH¤Ë¡¤BSD¸ß´¹¤Îinstall¥×¥í¥°¥é¥à¤¬¸«¤Ä¤«¤Ã ¤¿¾ì¹ç¡¤½ÐÎÏÊÑ¿ôINSTALL¤ò¤½¤Î¥Ñ¥¹¤ËÀßÄꤷ¤Þ¤¹¡¥¤½¤ì°Ê³°¤Ç¤Ï¡¤ INSTALL¤ò‘dir/install-sh -c’¤ËÀßÄꤷ¡¤ AC_CONFIG_AUX_DIR¤Ç»ØÄꤵ¤ì¤¿¥Ç¥£¥ì¥¯¥È¥ê(¤Þ¤¿¤Ï¥Ç¥Õ¥©¥ë¥È¥Ç¥£¥ì ¥¯¥È¥ê)¤ò¡¤dir¤ò·èÄꤹ¤ë¤¿¤á¤ËÄ´ºº¤·¤Þ¤¹(see Output)¡¥¤Þ¤¿¡¤ÊÑ ¿ôINSTALL_PROGRAM¤ÈINSTALL_SCRIPT¤ò‘${INSTALL}’ ¤Ë¡¤ ‘${INSTALL}’¤ÈINSTALL_DATA¤ò‘${INSTALL}-m 644’¤ËÀß Äꤷ¤Þ¤¹¡¥

¤³¤Î¥Þ¥¯¥í¤Ï¡¤Æ°ºî¤·¤Ê¤¤¤³¤È¤¬ÃΤé¤ì¤Æ¤¤¤ëinstall¤ÎÍÍ¡¹¤Ê¼ÂÎã¤ò¤Õ ¤ë¤¤Íî¤È¤·¤Þ¤¹¡¥¤½¤ì¤Ï®Å٤Τ¿¤á¡¤¥·¥§¥ë¥¹¥¯¥ê¥×¥È¤è¤êC¥×¥í¥°¥é¥à¤ò¸«ÉÕ ¤±¤è¤¦¤È¤·¤Þ¤¹¡¥install-sh¤ÎÂå¤ï¤ê¤Ë¡¤install.sh¤ò»ÈÍѤ¹¤ë ¤³¤È¤â²Äǽ¤Ç¤¹¤¬¡¤make¥×¥í¥°¥é¥à¤Ë¤Ï¡¤ Makefile ¤¬Ìµ¤¤ ¾ì¹ç¡¤¤½¤ì¤«¤éinstall¤òºîÀ®¤¹¤ë¥ë¡¼¥ë¤ò»ý¤Ã¤Æ¤¤¤ë¤â¤Î¤â¤¢¤ë¤Î¤Ç¡¤ ¤½¤Î̾Á°¤Ï»þÂåÃÙ¤ì¤Ç¤¹¡¥

»ÈÍѲÄǽ¤Êinstall-sh¤Î¥³¥Ô¡¼¤Ï¡¤Autoconf¤Ç¥¤¥ó¥¹¥È¡¼¥ë¤µ¤ì¤Þ¤¹¡¥ AC_PROG_INSTALL¤ò»ÈÍѤ¹¤ë¾ì¹ç¡¤ÇÛÉÛʪ¤Ëinstall-sh¤« install.sh¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¡¤¤½¤¦¤·¤Ê¤¤¾ì¹ç¡¤configure ¤Ï¸«¤Ä¤«¤é¤Ê¤¤»Ý¡¤¥¨¥é¡¼¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹ — ¤¿¤È¤¨¥·¥¹¥Æ¥à¤ËÎɤ¤ install¤¬¤¢¤Ã¤Æ¤â¤½¤¦¤Ê¤ê¤Þ¤¹¡¥¤³¤ÎÄ´ºº¤Ï¡¤¤½¤Î¥Õ¥¡¥¤¥ë¤ò¤¿¤Þ¤¿¤Þ Æþ¤ì˺¤ì¤ë¤³¤È¤òÁ˻ߤ¹¤ë°ÂÁ´Âкö¤Ç¡¤¤½¤ì¤ÏBSD¸ß´¹¤Î install¥×¥í¥°¥é¥à¤¬Ìµ¤¤¥·¥¹¥Æ¥à¤Ç¥Ñ¥Ã¥±¡¼¥¸¤ò¥¤¥ó¥¹¥È¡¼¥ë¤¹¤ë¤³¤È ¤ò˸¤²¤Þ¤¹¡¥

ɸ½àŪ¤Êinstall¥×¥í¥°¥é¥à¤Ë¤Ï¸«Åö¤¿¤é¤Ê¤¤ÆÃħ¤¬¤¢¤ë¤¿¤á¤Ë¡¤ÆÈ¼«¤Î ¥¤¥ó¥¹¥È¡¼¥ë¥×¥í¥°¥é¥à¤ò»ÈÍѤ¹¤ëɬÍפ¬¤¢¤ë¾ì¹ç¡¤AC_PROG_INSTALL¤ò »ÈÍѤ¹¤ëÍýͳ¤Ï¤¢¤ê¤Þ¤»¤ó¡¥Makefile.in¥Õ¥¡¥¤¥ë¤Ë¥×¥í¥°¥é¥à¤Î¥Õ¥¡¥¤ ¥ë̾¤ò½ñ¤­¹þ¤ó¤Ç¤¯¤À¤µ¤¤¡¥

Macro: AC_PROG_LEX

flex¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¤¥é¥¤¥Ö¥é¥ê¤¬É¸½àŪ¤Ê¾ì½ê¤Ë¤¢¤ì¤Ð¡¤½ÐÎÏÊÑ¿ô LEX¤ò‘flex’¤Ë¡¤LEXLIB¤ò‘-lfl’¤ËÀßÄꤷ¤Þ¤¹¡¥¤½¤ì °Ê³°¤Î¾ì¹ç¡¤LEX¤ò‘lex’¤Ë¡¤LEXLIB¤ò‘-ll’¤ËÀßÄꤷ ¤Þ¤¹¡¥

yytext¤¬‘char []’¤Ç¤Ï¤Ê¤¯‘char *’¤Î¾ì¹ç¡¤ YYTEXT_POINTER¤òÄêµÁ¤·¤Þ¤¹¡¥¤Þ¤¿¡¤½ÐÎÏÊÑ¿ôLEX_OUTPUT_ROOT ¤òlexer¤¬À¸À®¤¹¤ë¥Õ¥¡¥¤¥ë̾¤Î¥Ù¡¼¥¹¤ËÀßÄꤷ¤Þ¤¹¡¥Ä̾ï¤Ïlex.yy¤Ç¤¹ ¤¬°Û¤Ê¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡¥¤³¤ì¤é¤Ï¡¤·ë²Ì¤È¤·¤Ælex¤Èflex¤Î¤É ¤Á¤é¤¬»ÈÍѤµ¤ì¤Æ¤¤¤ë¤«¤Ë°Í¸¤·¤ÆÊѲ½¤·¤Þ¤¹¡¥

ÉáÄ̤ÎLex¤È¤½¤ì¤¬À¸À®¤¹¤ëC¥½¡¼¥¹¤ò»ÈÍѤ¹¤ë¤è¤ê¡¤°Ü¿¢À­¤ÎÌ̤Ǥè¤ê¹¥¤Þ¤·¤¤ ¤Î¤Ç¡¤¥½¡¼¥¹¤ÇFlex¤ò»ÈÍѤ¹¤ë¤³¤È¤ò¿ä¾©¤·¤Þ¤¹¡¥¤·¤«¤·¡¤°Ü¿¢À­¤ò³Î¼Â¤Ë¤¹¤ë ¤¿¤á¤Ë¡¤´Ø¿ôyywrap¤òÄ󶡤¹¤ë¡¤¤Þ¤¿¤Ï¡¤¤½¤ì¤ò»ÈÍѤ·¤Ê¤¤¾ì¹ç(Î㤨¤Ð¡¤ ¥¹¥­¥ã¥Ê¤Ë‘#include’¤Î¤è¤¦¤Êµ¡Ç½¤¬Ìµ¤¤¾ì¹ç)¡¤Ã±½ã¤Ë¥¹¥­¥ã¥Ê¥½¡¼¥¹¤Ç ‘%noyywrap’ʸ¤ò´Þ¤á¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥°ìö¤³¤Î¤è¤¦¤Ë¤¹¤ë¤³¤È¤Ç¡¤¥¹¥­¥ã ¥Ê¤Ï(¤¢¤Ê¤¿¤¬°Ü¿¢À­¤Î̵¤¤¹½À®Êª¤ò»ÈÍѤ·¤Ê¤¤¸Â¤ê) °Ü¿¢À­¤¬¤¢¤ê¡¤¥é ¥¤¥Ö¥é¥ê¤Ë°Í¸¤·¤Þ¤»¤ó¡¥¤³¤Î¾ì¹ç¡¤¤½¤·¤Æ¤³¤Î¾ì¹ç¤Î¤ß¡¤°Ê²¼¤Î¤è¤¦¤Ê Autoconf¤ÎÃÇÊÒ¤ò»ÈÍѤ¹¤ë¤³¤È¤òÄ󰯤·¤Þ¤¹¡¥

AC_PROG_LEX
if test "$LEX" != flex; then
  LEX="$SHELL $missing_dir/missing flex"
  AC_SUBST(LEX_OUTPUT_ROOT, lex.yy)
  AC_SUBST(LEXLIB, '')
fi

¥·¥§¥ë¥¹¥¯¥ê¥×¥Èmissing¤Ï¡¤Automake¤ÎÇÛÉÛʪ¤Ç¸«¤Ä¤«¤ë¤Ï¤º¤Ç¤¹¡¥

²¼°Ì¸ß´¹¤ò³Î¼Â¤Ë¤¹¤ë¤¿¤á¡¤Automake¤ÎAM_PROG_LEX¤Ï¡¤(´ÖÀÜŪ¤Ë)¤³¤Î ¥Þ¥¯¥í¤òÆó²ó¸Æ¤Ó½Ð¤·¡¤ÉÔ²÷¤Ê“AC_PROG_LEX invoked multiple times” ¤Ç»Ï¤Þ¤ë·Ù¹ð¤òÀ¸¤¸¤Þ¤¹¡¥¾­Íè¤Î¥Ð¡¼¥¸¥ç¥ó¤ÎAutomake¤Ç¤Ï¤³¤Î¾É¾õ¤Ï ½¤Àµ¤µ¤ì¤ë¤Ç¤·¤ç¤¦¡¥¤½¤ì¤Þ¤Ç¡¤¤³¤Î¥á¥Ã¥»¡¼¥¸¤ò̵»ë¤·¤Æ¤¯¤À¤µ¤¤¡¥

Macro: AC_PROG_LN_S

¸½ºß¤Î¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¡¤‘ln -s’¤¬Æ°ºî¤¹¤ë(¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ ¥à¤È¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤¬¥·¥ó¥Ü¥ê¥Ã¥¯¥ê¥ó¥¯¤ò¥µ¥Ý¡¼¥È¤·¤Æ¤¤¤ë)¾ì¹ç¡¤½ÐÎÏÊÑ ¿ôLN_S¤ò‘ln -s’¤ËÀßÄꤷ¤Þ¤¹¡¥¤½¤ì°Ê³°¤Î¾ì¹ç¤Ï¡¤‘ln’¤¬Æ° ºî¤¹¤ë¾ì¹ç¤Ï¡¤LN_S¤ò‘ln’¤ËÀßÄꤷ¡¤¤½¤¦¤Ç¤â¤Ê¤±¤ì¤Ð‘cp -p’¤ËÀßÄꤷ¤Þ¤¹¡¥

¥ê¥ó¥¯¤ò¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê°Ê³°¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËºîÀ®¤¹¤ë¾ì¹ç¡¤¤½¤ÎÊýË¡¤Ï¡¤ ‘ln’¤È‘ln -s’¤Î¤É¤Á¤é¤¬»ÈÍѤµ¤ì¤ë¤«¤Ë°Í¸¤·¤Þ¤¹¡¥ ‘$(LN_S)’¤ò»ÈÍѤ·¤Æ°ÂÁ´¤Ë¥ê¥ó¥¯¤òºîÀ®¤¹¤ë¤¿¤á¡¤»ÈÍѤ¹¤ë½ñ¼°¤ÈÀµ¤·¤¤ °ú¿ô¤òÍý²ò¤¹¤ë¤«¡¤¥ê¥ó¥¯¤¬ºîÀ®¤µ¤ì¤ë¥Ç¥£¥ì¥¯¥È¥ê¤Çln¤ò¾ï¤Ë¸Æ¤Ó½Ð ¤¹¤«¡¤¤É¤Á¤é¤«¤Ë¤·¤Æ¤¯¤À¤µ¤¤¡¥

¸À¤¤Âؤ¨¤ë¤È¡¤°Ê²¼¤Î¤â¤Î¤Ïưºî¤·¤Þ¤»¤ó¡¥

$(LN_S) foo /x/bar

¤½¤ÎÂå¤ï¤ê¤Ë¡¤°Ê²¼¤Î¤è¤¦¤Ë¤·¤Þ¤¹¡¥

(cd /x && $(LN_S) foo bar)
Macro: AC_PROG_RANLIB

ranlib¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¤½ÐÎÏÊÑ¿ôRANLIB¤ò‘ranlib’¤ËÀß Äꤷ¡¤¤½¤ì°Ê³°¤Ç¤Ï¡¤‘:’(²¿¤â¤·¤Þ¤»¤ó)¤ËÀßÄꤷ¤Þ¤¹¡¥

Macro: AC_PROG_YACC

bison¤¬¸«¤Ä¤«¤Ã¤¿¾ì¹ç¡¤½ÐÎÏÊÑ¿ôYACC¤ò‘bison -y’¤ËÀßÄê ¤·¤Þ¤¹¡¥¤½¤ì°Ê³°¤Ç¡¤byacc¤¬¸«¤Ä¤«¤ë¾ì¹ç¡¤YACC¤ò ‘byacc’¤ËÀßÄꤷ¤Þ¤¹¡¥¤½¤ì°Ê³°¤Ç¤Ï¡¤YACC¤ò‘yacc’¤ËÀßÄꤷ ¤Þ¤¹¡¥