Next: Shell Substitutions, Previous: File Descriptors, Up: Portable Shell [Contents][Index]
autoconf
¤È¤½¤ÎÃç´Öã¤Ï¡¤Ä̾ïÍÍ¡¹¤ÊUnix¤Ç¼Â¹Ô¤µ¤ì¤Þ¤¹¤¬¡¤¤½¤ì¤Ï
¤½¤Î¾¤Î¥·¥¹¥Æ¥à¤Ç¤â»ÈÍѤµ¤ì¡¤ºÇ¤â¸²Ãø¤Ê¤â¤Î¤È¤·¤Æ¤ÏDOS¤ÎÃç´Ö
¤¬¤¢¤²¤é¤ì¤Þ¤¹¡¥¤³¤Î¤³¤È¤Ï¡¤¥Õ¥¡¥¤¥ë¤È¥Ñ¥¹Ì¾¤Ë´Ø¤¹¤ë²¾Äê¤Ë¾×ÆÍ¤·¤Þ¤¹¡¥
Î㤨¤Ð¡¤°Ê²¼¤Î¤è¤¦¤Ê¥³¡¼¥É¤ò¹Í¤¨¤Þ¤¹¡¥
case $foo_dir in /*) # Absolute ;; *) foo_dir=$dots$foo_dir ;; esac
¤½¤ì¤é¤Î¥·¥¹¥Æ¥à¤Ç¤Ï¥É¥é¥¤¥Ö¥¹¥Ú¥Ã¥¯¤ò»ÈÍѤ·¤Æ¤¤¤Æ¡¤Ä̾ï¤Ï¥Ç¥£¥ì¥¯¥È¥ê¤Î ʬΥ»Ò¤È¤·¤Æ¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤ò»ÈÍѤ·¤Æ¤¤¤ë¤¿¤á¡¤ÀäÂХѥ¹¤òÀµ¤·¤¯¸¡½Ð¤¹¤ë ¤³¤È¤Ë¼ºÇÔ¤¹¤ë¤Ç¤·¤ç¤¦¡¥ÀäÂХѥ¹¤ËÂФ¹¤ëÄ´ºº¤Îɸ½àŪ¤ÊÊýË¡¤Ï°Ê²¼¤Î¤È¤ª¤ê ¤Ç¤¹¡¥
case $foo_dir in [\\/]* | ?:[\\/]* ) # Absolute ;; *) foo_dir=$dots$foo_dir ;; esac
ŬÀڤʾì¹ç¤Ï³Ñ¥«¥Ã¥³¤Î°úÍÑÉä¤Ç°Ï¤ß¡¤ºÇ½é¤Îʸ»ú¤È¤·¤Æ¤Î¥Ð¥Ã¥¯¥¹¥é¥Ã¥·¥å¤ò ÊÝ»ý¤·¤Æ¤¤¤ë¤³¤È¤ò³Îǧ¤·¤Æ¤¯¤À¤µ¤¤(see Limitations of Builtins)¡¥
¤Þ¤¿¡¤¥³¥í¥ó¤¬¥Ç¥Ð¥¤¥¹»ØÄê¤Î°ìÉô¤È¤·¤Æ»ÈÍѤµ¤ì¤Æ¤¤¤ë¤Î¤Ç¡¤¤³¤ì¤é¤Î¥·¥¹¥Æ
¥à¤Ç¤Ï¤½¤ì¤ò¥Ñ¥¹¤ÎʬΥ»Ò¤È¤·¤Æ»ÈÍѤ·¤Æ¤¤¤Þ¤»¤ó¡¥¥Ñ¥¹¤òºîÀ®¤·¤Æ¤¤¤ë¤È¤¤ä
¥Ñ¥¹¤Ë¥¢¥¯¥»¥¹¤·¤Æ¤¤¤ë¤È¤¤Ï¡¤Âå¤ï¤ê¤ËPATH_SEPARATOR
½ÐÎÏÊÑ¿ô¤ò»È
ÍѤ·¤Æ¤¯¤À¤µ¤¤¡¥configure
¤Ï¡¤³«»Ï»þ¤Ë¤³¤ì¤òŬÀÚ¤ÊÃÍ(‘:’
¤Þ¤¿¤Ï‘;’)¤ËÀßÄꤷ¤Þ¤¹¡¥
¥Õ¥¡¥¤¥ë̾¤Ë¤â;·×¤ÊÃí°Õ¤¬É¬Íפˤʤê¤Þ¤¹¡¥(DJGPP¤Î¤è¤¦¤Ê)
autoconf
¤ò½½Ê¬¤Ë¼Â¹Ô¤Ç¤¤ëUnix¤Î¤è¤¦¤ÊDOS¥Ù¡¼¥¹¤Î´Ä
¶¤Ç¤Ï¡¤Ä̾ïŤ¤¥Õ¥¡¥¤¥ë̾¤òŬÀڤ˰·¤¦¤³¤È¤¬²Äǽ¤Ç¤¹¤¬¡¤¥Ñ¥Ã¥±¡¼¥¸¤ò²õ¤·
¤Æ¤·¤Þ¤¦¿¼¹ï¤ÊÀ©¸Â¤â»Ä¤Ã¤Æ¤¤¤Þ¤¹¡¥¤³¤ì¤é¤ÎÌäÂê¤Î¤¤¤¯¤Ä¤«¤Ï¡¤
doschk ¥Ñ¥Ã
¥±¡¼¥¸¤ÇÍÆ°×¤Ë¸¡½Ð¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥
°Ê²¼¤Ï´Êñ¤ÊÁ´ÂÎÁü¤Ç¤¹¡¥ÌäÂê¤Ë¤Ï¡¤Å¬ÍѤò¼¨¤¹¤¿¤áSFN/LFN¤Ç°õ¤¬ ¤Ä¤¤¤Æ¤¤¤Þ¤¹¡¥SFN¤Ï¡¤Windows²¼¤ÎDOSÁë¤Ç¤Ï¤Ê¤¯¡¤¥×¥ì¡¼¥ó¤Ê DOS¤Ë¤Î¤ß´ØÏ¢¤¹¤ëÌäÂê¤ò°ÕÌ£¤·¡¤°ìÊýLFN¤Ï¡¤Windows¤Ç¤â¸ºß ¤¹¤ëÌäÂê¤ò°ÕÌ£¤·¤Æ¤¤¤Þ¤¹¡¥
DOS¤Ï¥Õ¥¡¥¤¥ë̾¤ËÊ£¿ô¤Î¥É¥Ã¥È¤¬¤¢¤ë¤â¤Î¤ò°·¤¦¤³¤È¤¬ÉÔ²Äǽ¤Ç¤¹¡¥
¤³¤ì¤Ï¡¤autoconf
¤Ï.in¤ò¥Æ¥ó¥×¥ì¡¼¥È¥Õ¥¡¥¤¥ë¤ÎÀÜÈø»Ò¤Ë»È
ÍѤ¹¤ë¤Î¤Ç¡¤°Ü¿¢À¤Î¹â¤¤configure¥¹¥¯¥ê¥×¥È¤ò¹½ÃÛ¤·¤Æ¤¤¤ë¤È¤¤Ë³Ð¤¨¤Æ¤ª
¤¯É¬Íפ¬¤¢¤ë¡¤ÆÃ¤Ë½ÅÍפʤ³¤È¤Ç¤¹¡¥
°Ê²¼¤ÏUnix¾å¤Ç¤Ï´°Á´¤ËOK¤Ç¤¹¡¥
AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([source.c foo.bar]) AC_OUTPUT
¤·¤«¤·¡¤¤½¤ì¤Ï‘config.h.in’¡¤‘source.c.in’¡¤¤½¤·¤Æ ‘foo.bar.in’¤¬É¬Íפˤʤë¤Î¤Ç¡¤DOS¤Ç¤ÏÌäÂ꤬¤¢¤ê¤Þ¤¹¡¥¥Ñ¥Ã ¥±¡¼¥¸¤òDOS¥Ù¡¼¥¹¤Î´Ä¶¤Ç¤è¤ê°Ü¿¢À¤ò¹â¤¯¤¹¤ë¤¿¤á¡¤¤½¤ÎÂå¤ï¤ê ¤Ë°Ê²¼¤ò»ÈÍѤ¹¤Ù¤¤Ç¤¹¡¥
AC_CONFIG_HEADERS([config.h:config.hin]) AC_CONFIG_FILES([source.c:source.cin foo.bar:foobar.in]) AC_OUTPUT
DOS¤Ï¥É¥Ã¥È¤Ç»Ï¤Þ¤ë¥Õ¥¡¥¤¥ë̾¤ò°·¤¦¤³¤È¤¬ÉÔ²Äǽ¤Ç¤¹¡¥¤³¤ì¤ÏÄÌ
¾ï¡¤autoconf
¤ËÂФ·¤Æ¤Ï¤¢¤Þ¤ê½ÅÍפǤϤʤ¤ÌäÂê¤Ç¤¹¡¥
DOS¤ÏÂçʸ»ú¾®Ê¸»ú¤ò¶èÊ̤·¤Ê¤¤¤Î¤Ç¡¤Î㤨¤Ð¡¤‘INSTALL’¤È¤¤
¤¦Ì¾¤Î¥Õ¥¡¥¤¥ë¤È‘install’¤È¤¤¤¦Ì¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ÎξÊý¤ò»ý¤Ä¤³¤È¤¬¤Ç
¤¤Þ¤»¤ó¡¥¤³¤ì¤Ï¡¤make
¤Ë¤â±Æ¶Á¤·¤Þ¤¹¡¥¥Ç¥£¥ì¥¯¥È¥ê¤Ë
‘INSTALL’¤È¤¤¤¦Ì¾¤Î¥Õ¥¡¥¤¥ë¤¬¤¢¤ë¾ì¹ç¡¤‘make install’¤Ï
(‘install’¤¬PHONY ¤È¤·¤Æ°õ¤¬¤Ä¤¤¤Æ¤¤¤Ê¤¤¤È¤)²¿¤â¤·¤Þ¤»¤ó¡¥
DOS¥Õ¥¡¥¤¥ë¥·¥¹¥Æ¥à¤Ç¤Ï¡¤¥Õ¥¡¥¤¥ë̾¤ÎºÇ½é¤Î8ʸ»ú¤ÈºÇ½é¤Î3ʸ»ú ¤Î³ÈÄ¥»Ò¤Î¤ßÊݸ¤µ¤ì¡¤¤½¤ì¤é¤Ï¥æ¥Ë¡¼¥¯¤Ç¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥¤½¤ì¤Ï¡¤ foobar-part1.c¡¤foobar-part2.c¡¤¤½¤·¤Æ foobar-prettybird.c¤ÎÁ´¤Æ¤ÏƱ¤¸Ì¾Á°(FOOBAR-P.C)¤Ë¤Ê¤ê¤Þ¤¹¡¥ foo.bar¤Èfoo.bartender¤âƱ¤¸¤â¤Î¤Ë¤Ê¤ê¤Þ¤¹¡¥
Ãí°Õ¡§¤³¤ì¤ÏÄ̾¥Õ¥¡¥¤¥ë̾¤ò¥æ¥Ë¡¼¥¯¤Ë¤¹¤ë¤¿¤á¤Ëû¤¤¥Ð¡¼¥¸¥ç¥ó¤Ç¤Ï¿ô»ú ¤Î¸åÃÖ¤ò»ÈÍѤ¹¤ë¤Î¤Ç¡¤Windows¤Ç¤ÏÌäÂê¤Ë¤Ê¤ê¤Þ¤»¤ó¡¥¤·¤«¤·¡¤¥ì¥¸¥¹¥È¥ê¤Î ÀßÄê¤Ç¤³¤Îưºî¤òÄä»ß²Äǽ¤Ç¤¹¡¥¤³¤ì¤ÇŤ¤¥Õ¥¡¥¤¥ë̾¤ò´Þ¤à¥Õ¥¡¥¤¥ë¤Î¥Ä¥ê¡¼ ¤ò¡¤SFN¤ÈLFN¤Î´Ä¶¤Ç¶¦Í¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¤¬¡¤¾åµ¤ÎÌäÂê ¤ÏÆ±Íͤ˸ºß¤·¤Þ¤¹¡¥
DOS¥Õ¥¡¥¤¥ë̾¤Ç̵¸ú¤Êʸ»ú¤â¤¢¤ê¡¤¤½¤Î¤¿¤áÈò¤±¤¿Êý¤¬Îɤ¤¤Ç¤·¤ç ¤¦¡¥LFN¤Î´Ä¶¤Ç¤Ï¡¤‘/’¡¤‘\’¡¤‘?’¡¤‘*’¡¤‘:’¡¤ ‘<’¡¤‘>’¡¤‘|’¡¤¤½¤·¤Æ‘"’¤Ç¤¹¡¥SFN´Ä¶¤Ç¤Ï¡¤¤½¤ì °Ê³°¤Ë¤â̵¸ú¤Ë¤Ê¤ê¤Þ¤¹¡¥¤³¤ì¤Ë¤Ï¡¤‘+’¡¤‘,’¡¤‘[’¡¤¤½¤·¤Æ ‘]’¤¬´Þ¤Þ¤ì¤Þ¤¹¡¥