Next: , Previous: Support for Other Languages, Up: Programs   [Contents][Index]


7.15 ¼«Æ°Åª¤Êde-ANSI-fication

GNU standards¤ÏANSI C¤Î»ÈÍѤòµö²Ä¤·¤Æ¤¤¤Þ¤¹¤¬¡¤¤³¤ì¤Ï¤â¤Ã¤È¸Å¤¤¥³¥ó¥Ñ ¥¤¥é(ÆÃ¤ËSunOS C ¥³¥ó¥Ñ¥¤¥é)¤Ø¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î°Ü¿¢À­¤òÀ©¸Â¤¹¤ë¤³¤È¤Ë¤Ê¤ë ¤Ï¤º¤Ç¤¹¡¥

¼ÂºÝ¤Ë¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤ëÁ°¤Ëde-ANSI-fyng¤·¤¿¤½¤ì¤¾¤ì¤Î¥Õ¥¡¥¤¥ë¤Ë¤è¤Ã ¤Æ¡¤Automake¤Ç¤Ï¤½¤Î¤è¤¦¤Ê¥Þ¥·¥ó¾å¤Ç¤Î¤³¤ÎÌäÂê¤ò²ò·è¤¹¤ë¤³¤È¤¬²Äǽ¤Ë¤Ê ¤ê¤Þ¤¹¡¥

Makefile.am¤ÎÊÑ¿ôAUTOMAKE_OPTIONS(see Options)¤¬¥ª¥× ¥·¥ç¥óansi2knr¤ò´Þ¤ó¤Ç¤¤¤ë¾ì¹ç¡¤de-ANSI-fication¤ò½èÍý¤¹¤ë¤¿¤á ¤Î¥³¡¼¥É¤¬À¸À®¤µ¤ì¤¿Makefile.in¤ËÁÞÆþ¤µ¤ì¤Þ¤¹¡¥

¤³¤ì¤Ë¤è¤Ã¤Æ¡¤¥Ç¥£¥ì¥¯¥È¥êÆâ¤Î¤½¤ì¤¾¤ì¤ÎC¥½¡¼¥¹¥Õ¥¡¥¤¥ë¤òANSI C¤È¤·¤Æ °·¤¤¤Þ¤¹¡¥ANSI C¥³¥ó¥Ñ¥¤¥é¤¬ÍøÍѲÄǽ¤Ê¾ì¹ç¡¤¤½¤ì¤¬»ÈÍѤµ¤ì¤Þ¤¹¡¥ANSI C ¥³¥ó¥Ñ¥¤¥é¤¬ÍøÍѲÄǽ¤Ç¤Ê¤¤¾ì¹ç¡¤ansi2knr¥×¥í¥°¥é¥à¤¬¥½¡¼¥¹¥Õ¥¡ ¥¤¥ë¤òK&R C¤ËÊÑ´¹¤¹¤ë¤¿¤á¤Ë»ÈÍѤµ¤ì¡¤¤½¤·¤Æ¥³¥ó¥Ñ¥¤¥ë¤µ¤ì¤Þ¤¹¡¥

ansi2knr¥×¥í¥°¥é¥à¤Ïñ½ã¤Ç¤¹¡¥¤½¤ì¤Ï¥½¡¼¥¹¥³¡¼¥É¤¬ÆÃÄê¤ÎÊýË¡¤Ç ½ñ¼°²½¤µ¤ì¤ë¤È²¾Äꤷ¤Þ¤¹¡¥¾ÜºÙ¤Ïansi2knr¤Îman¥Ú¡¼¥¸¤ò»²¾È¤·¤Æ¤¯ ¤À¤µ¤¤¡¥

de-ANSI-fication¤ËÂФ¹¤ë¥µ¥Ý¡¼¥È¤Ç¤Ï¡¤¥½¡¼¥¹¥Õ¥¡¥¤¥ëansi2knr.c ¤Èansi2knr.1¤¬ANSI C¥½¡¼¥¹¤ÈƱ¤¸¥Ñ¥Ã¥±¡¼¥¸¤Ë¤¢¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡¥ ¤³¤ì¤é¤Î¥Õ¥¡¥¤¥ë¤ÏAutomake¤È°ì½ï¤ËÇÛÉÛ¤µ¤ì¤Þ¤¹¡¥¤Þ¤¿¡¤¥Ñ¥Ã¥±¡¼¥¸ configure.ac¤Ç¤Ï¡¤AM_C_PROTOTYPES¥Þ¥¯¥í¤ò¸Æ¤Ó½Ð¤¹É¬Íפ⠤¢¤ê¤Þ¤¹(see Macros)¡¥

Automake¤Ï¡¤¸½ºß¤Î¥Ñ¥Ã¥±¡¼¥¸¤Î¾¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Çansi2knr¥µ¥Ý¡¼ ¥È¥Õ¥¡¥¤¥ë¤ò¸«¤Ä¤±¤ë¤³¤È¤â¤Ç¤­¤Þ¤¹¡¥¤³¤ì¤Ï¡¤ansi2knr¥ª¥×¥·¥ç¥ó ¤ØÅ¬Àڤʥǥ£¥ì¥¯¥È¥ê¤Ø¤ÎÁêÂÐŪ¤Ê¥Ñ¥¹¤òÁ°ÃÖ¤¹¤ë¤³¤È¤Ç¹Ô¤Ê¤ï¤ì¤Þ¤¹¡¥Î㤨 ¤Ð¡¤¥Ñ¥Ã¥±¡¼¥¸¤Îsrc¤Èlib¥µ¥Ö¥Ç¥£¥ì¥¯¥È¥ê¤ËANSI C¥³¡¼¥É¤¬ ¤¢¤ë¤È²¾Äꤷ¤Þ¤¹¡¥¥Õ¥¡¥¤¥ëansi2knr.c¤Èansi2knr.1¤Ï lib¤Ë¤¢¤ê¤Þ¤¹¡¥¤³¤Î¾ì¹ç¡¤src/Makefile.am¤Ï°Ê²¼¤Î¤è¤¦¤Ë½ñ ¤¯¤³¤È¤¬²Äǽ¤Ç¤·¤ç¤¦¡¥

AUTOMAKE_OPTIONS = ../lib/ansi2knr

¥Ç¥£¥ì¥¯¥È¥ê¤ÎÀÜÆ¬¼­¤¬Í¿¤¨¤é¤ì¤Æ¤Ê¤¤¾ì¹ç¡¤¥Õ¥¡¥¤¥ë¤Ï¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È ¥ê¤Ë¤¢¤ë¤È²¾Äꤵ¤ì¤Þ¤¹¡¥

¼«Æ°Åª¤Êde-ANSI-fication¤Ï¡¤¥Ñ¥Ã¥±¡¼¥¸¤¬°Û¤Ê¤ë¥Û¥¹¥È¥¢¡¼¥­¥Æ¥¯¥Á¥ã¤ËÂÐ ¤¹¤ë¥Ó¥ë¥É¤Ç¤Ïưºî¤·¤Ê¤¤¤³¤È¤ËÃí°Õ¤·¤Æ¤¯¤À¤µ¤¤¡¥¤½¤ì¤Ï¡¤¥Ó¥ë¥É¥Þ¥·¥ó¤Ë ÂФ·¤Æansi2knr¤ò¥Ó¥ë¥É¤¹¤ëÊýË¡¤¬¡¤¸½ºß¤Îautomake¤Ë¤Ï̵¤¤¤¿¤á¤Ç ¤¹¡¥

¥½¡¼¥¹¤Îde-ANSI-fication¤ÇLIBOBJS¤ò»ÈÍѤ¹¤ë¤È¡¤configure ¤ÎLIBOBJS¤Îbasename¤Ë$U¤ò¼êư¤ÇÄɲ乤ëɬÍפ¬¤¢¤ê¤Þ¤·¤¿¡¥ ¸½ºß¤Ç¤Ï¤½¤¦¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¡¥¥Ð¡¼¥¸¥ç¥ó2.54¤«¤é¡¤Autoconf¤Ï LIBOBJS¤ÈLTLIBOBJS¤òÃí°Õ¿¼¤¯½ñ¤­´¹¤¨¤Æ¤¤¤Þ¤¹¡¥ (see AC_LIBOBJ vs. LIBOBJS in The Autoconf Manual)