Next: , Previous: Running the Linker, Up: Writing Tests   [Contents][Index]


6.6 ¼Â¹Ô»þ¤Îưºî¤ÎÄ´ºº

Åö³º´Ø¿ô¤ËÆÃÄê¤ÎǽÎϤä¥Ð¥°¤¬¤¢¤ë¤«¤É¤¦¤«¤È¤¤¤Ã¤¿¡¤¼Â¹Ô»þ¤Ë¥·¥¹¥Æ¥à¤¬¤É¤Î ¤è¤¦¤Êưºî¤ò¤¹¤ë¤«Ä´¤Ù¤ëɬÍפ¬¤¢¤ë¤³¤È¤â¤¢¤ê¤Þ¤¹¡¥²Äǽ¤Ç¤¢¤ì¤Ð¡¤¥³¥ó¥Õ¥£ ¥°¥ì¡¼¥·¥ç¥ó»þ¤Ç¤Ï¤Ê¤¯¥×¥í¥°¥é¥à¤ò¼Â¹Ô¤¹¤ë¤È¤­¤½¤Î¤è¤¦¤ÊÄ´ºº¤ò¤·¤Æ¤¯¤À¤µ ¤¤¡¥¥Þ¥·¥ó¤Î¥¨¥ó¥Ç¥£¥¢¥ó¤Î¤è¤¦¤Ê¤â¤Î¤Ï¡¤¥×¥í¥°¥é¥à¤Î½é´ü²½»þ¤ËÄ´ºº¤¹¤ë¤³ ¤È¤¬²Äǽ¤Ç¤¹¡¥

¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó»þ¤Ë¼Â¹Ô»þ¤Îưºî¤òÄ´ºº¤¹¤ëɬÍפ¬ËÜÅö¤Ë¤¢¤ë¾ì¹ç¡¤·ë²Ì ¤ò·èÄꤹ¤ë¥Æ¥¹¥È¥×¥í¥°¥é¥à¤ò½ñ¤­¡¤¥³¥ó¥Ñ¥¤¥ë¤·¤ÆAC_RUN_IFELSE ¤ò »ÈÍѤ·¤Æ¼Â¹Ô¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡¥¤³¤ì¤Ï¡¤¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤Ç¥Ñ¥Ã¥±¡¼¥¸¤ò¥³ ¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¤¹¤ë¿Í¡¹¤Î˸¤²¤Ë¤Ê¤ë¤Î¤Ç¡¤²Äǽ¤Ç¤¢¤ì¤Ð¡¤¥Æ¥¹¥È¥×¥í¥°¥é ¥à¤Î¼Â¹Ô¤ÏÈò¤±¤Æ¤¯¤À¤µ¤¤¡¥

Macro: AC_RUN_IFELSE (input, [action-if-found], [action-if-not-found], [action-if-cross-compiling])

program¤Î¥³¥ó¥Ñ¥¤¥ë¤È¥ê¥ó¥¯¤¬Àµ¾ï½ªÎ»¤·¡¤¼Â¹Ô»þ¤Ë0¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹ ¤¬ÊÖ¤ë¾ì¹ç¡¤¥·¥§¥ë¥³¥Þ¥ó¥Éaction-if-true¤ò¼Â¹Ô¤·¤Þ¤¹¡¥¤½¤ì°Ê³°¤Ç¤Ï¡¤ ¥·¥§¥ë¥³¥Þ¥ó¥Éaction-if-false¤ò¼Â¹Ô¤·¤Þ¤¹¡¥

input¤Ï¡¤AC_LANG_PROGRAM¤È¤½¤ÎÃç´Ö¤ÇºîÀ®¤¹¤ë¤³¤È¤¬²Äǽ¤Ç¤¹¡¥ ¸½ºß¤Î¸À¸ì(see Language Choice)¤Î¥³¥ó¥Ñ¥¤¥é¥Õ¥é¥°¤Ë²Ã¤¨¤Æ¡¤¥ê¥ó¥¯»þ ¤Ë¤ÏLDFLAGS¤ÈLIBS¤â»ÈÍѤ·¤Þ¤¹¡¥

»ÈÍѤµ¤ì¤ë¥³¥ó¥Ñ¥¤¥é¤¬¡¤configure¤¬¼Â¹Ô¤µ¤ì¤Æ¤¤¤ë¥·¥¹¥Æ¥à¤Ç¼Â ¹Ô¤¹¤ë¼Â¹Ô·Á¼°¤òÀ¸À®¤·¤Ê¤¤¾ì¹ç¡¤¥Æ¥¹¥È¥×¥í¥°¥é¥à¤Ï¼Â¹Ô¤µ¤ì¤Þ¤»¤ó¡¥¥ª¥×¥·¥ç ¥ó¤Î¥·¥§¥ë¥³¥Þ¥ó¥Éaction-if-cross-compiling¤¬Í¿¤¨¤é¤ì¤Æ¤¤¤ë¾ì¹ç¡¤ ¤½¤ì¤é¤¬ÊѤï¤ê¤Ë¼Â¹Ô¤µ¤ì¤Þ¤¹¡¥¤½¤ì°Ê³°¤Î¾ì¹ç¡¤configure¤Ï¥¨¥é¡¼ ¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·½ªÎ»¤·¤Þ¤¹¡¥

action-if-false¥»¥¯¥·¥ç¥ó¤Ç¤Ï¡¤¥×¥í¥°¥é¥à¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤Ï¥·¥§¥ë ÊÑ¿ô‘$?’¤ÇÍøÍѲÄǽ¤Ç¤¹¤¬¡¤127̤Ëþ¤ÎÀµ¤ÎÃͤËÀ©¸Â¤¹¤ë¤è¤¦½½Ê¬Ãí°Õ¤·¤Æ ¤¯¤À¤µ¤¤¡¥Â礭¤ÊÃͤϡ¤program¤Ç¥Õ¥¡¥¤¥ë¤ËÊݸ¤¹¤Ù¤­¤Ç¤¹¡¥¤Þ¤¿¡¤¤³ ¤Î½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤¬program¤Ç¡¤¤Þ¤¿¤Ï¤½¤Î¥³¥ó¥Ñ¥¤¥ë¤Î°Û¾ï½ªÎ»¤Ç¡¤À¸ À®¤µ¤ì¤ë¤³¤È¤òÊݾڤµ¤ì¤Æ¤¤¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡¥¸À¤¤Âؤ¨¤ë¤È¡¤²×¤á ¤é¤ì¤ë¤Î¤¬¹¥¤­¤Ê¿Í¤À¤±¤³¤Îµ¡Ç½¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡¥¤½¤ì¤Ï¡¤Autoconf¤Î´ÉÍý ¼Ô¤¬Ë°¤­Ë°¤­¤¹¤ë¤Û¤É“¥Ð¥°¤ÎÊó¹ð”¤ò¼õ¤±¤È¤ë¤³¤È¤Ë¤Ê¤Ã¤¿¤Î¤Ç¡¤¸µ¤ËÌᤷ¤Þ ¤·¤¿¡¥

´·½¬Åª¤Ë¡¤Í½´ü¤»¤Ì°Û¾ï½ªÎ»¤ÏAC_MSG_FAILURE¤ÇÊó¹ð¤·¤Þ¤¹¡¥

¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤Ç¼Â¹Ô»þ¤Î¥Æ¥¹¥È¤¬ÉÔ²Äǽ¤Ê»þ¤Ï¡¤»ÈÍѤ¹¤ëÈá´ÑŪ¤Ê¥Ç¥Õ¥©¥ë ¥ÈÃͤòÄ󶡤·¤Æ¤ß¤Æ¤¯¤À¤µ¤¤¡¥¥ª¥×¥·¥ç¥ó¤ÎºÇ¸å¤Î°ú¿ô¤òAC_RUN_IFELSE ¤ËÅϤ¹¤³¤È¤Ç¤³¤¦¤·¤Þ¤¹¡¥autoconf¤Ï¡¤ action-if-cross-compiling°ú¿ô̵¤·¤ÇAC_RUN_IFELSE¤ò¸Æ¤Ó½Ð¤¹ ¤´¤È¤Ë¡¤configure¤òÀ¸À®¤¹¤ë¤È¤­¤Ë·Ù¹ð¥á¥Ã¥»¡¼¥¸¤ò½ÐÎϤ·¤Þ¤¹¡¥ ·Ù¹ð¤ò̵»ë¤·¤Æ¤â¤«¤Þ¤¤¤Þ¤»¤ó¤¬¡¤¥æ¡¼¥¶¤Ï¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤Ç¥Ñ¥Ã¥±¡¼¥¸¤Î¥³ ¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¤¬ÉÔ²Äǽ¤Ë¤Ê¤ê¤Þ¤¹¡¥Autoconf¤ÇÇÛÉÛ¤µ¤ì¤ë¥Þ¥¯¥í¤Ë¤Ï¡¤¤³ ¤Î·Ù¹ð¥á¥Ã¥»¡¼¥¸¤òÀ¸À®¤¹¤ë¤â¤Î¤â¤¢¤ê¤Þ¤¹¡¥

¥¯¥í¥¹¥³¥ó¥Ñ¥¤¥ë¤Ç¥³¥ó¥Õ¥£¥°¥ì¡¼¥·¥ç¥ó¤¹¤ë¤¿¤á¡¤¤³¤ì¤é¤Î¥Ñ¥é¥á¡¼¥¿¤ÎÃͤò ɸ½àŪ¤Ê¥·¥¹¥Æ¥à̾¤ò´ð¤ËÁªÂò¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹(see Manual Configuration)¡¥¤Þ¤¿¤Ï¡¤¥Æ¥¹¥È·ë²Ì¤Î¥­¥ã¥Ã¥·¥å¥Õ¥¡¥¤¥ë¤ò¥Û¥¹¥È¥·¥¹¥Æ¥à ¤ËÂФ¹¤ëÀµ¤·¤¤ÃͤÇÀßÄꤷ¤Æ¤¯¤À¤µ¤¤(see Caching Results)¡¥

Autoconf¤È¤È¤â¤Ë´Þ¤Þ¤ì¤Æ¤¤¤ë¾¤Î¥Þ¥¯¥í¤ËËä¤á¹þ¤Þ¤ì¤Æ¤¤¤ë¡¤ AC_RUN_IFELSE¤Î¸Æ¤Ó½Ð¤·¤ËÂФ¹¤ë¥Ç¥Õ¥©¥ë¥È¤òÄ󶡤¹¤ë¤¿¤á¡¤¥·¥§¥ëÊÑ ¿ôcross_compiling¤¬‘yes’¤ËÀßÄꤵ¤ì¤Æ¤¤¤ë¤«¤É¤¦¤«¤òÄ´ºº¤·¡¤¥Þ ¥¯¥í¸Æ¤Ó½Ð¤·¤ÎÂå¤ï¤ê¤Ë·ë²Ì¤ò¼èÆÀ¤¹¤ë¤¿¤á¡¤Âå¤ï¤ê¤Î¼êË¡¤ò»ÈÍѤ·¤Æ¤¯¤À¤µ¤¤¡¥