Automake´Â ÆÐÅ°ÁöÀÇ `configure.in'À» °Ë»öÇؼ ÆÐÅ°Áö¿¡ ¾î¶² Á¤º¸°¡
ÀÖ´ÂÁö °áÁ¤ÇÑ´Ù. ¸î°³ÀÇ autoconf
¸ÅÅ©·Î°¡ ÇÊ¿äÇÏ°í, ¸î°³ÀÇ º¯¼ö°¡
`configure.in'¿¡ Á¤ÀǵǾî¾ß ÇÑ´Ù. Automake´Â `configure.in'
¾ÈÀÇ Á¤º¸¸¦ »ç¿ëÇؼ ´õ¿í ¾Ë¸Â°Ô Ãâ·Â¹°À» ³¾ °ÍÀÌ´Ù.
Automake´Â ¸ÞÀÎÅ×À̳ʸ¦ Á»´õ ½±°Ô ÇØÁÖ´Â autoconf
¸ÅÅ©·Î¸¦ °°ÀÌ
Æ÷ÇÔÇÑ´Ù. ÀÌ ¸ÅÅ©·ÎµéÀº aclocal
ÇÁ·Î±×·¥À» ½á¼ ÀÚµ¿À¸·Î
aclocal.m4
¿¡ Ãß°¡µÈ´Ù.
Automake¿¡¼ ÇÊ¿äÇÑ ±âº»ÀûÀÎ °ÍÀ» ¸¸Á·½ÃÅ°´Â °¡Àå °£´ÜÇÑ ¹æ¹ýÀº
AM_INIT_AUTOMAKE
¸ÅÅ©·Î¸¦ »ç¿ëÇÏ´Â °ÍÀÌ´Ù (FIXME: xref). ÇÏÁö¸¸,
´õ ÁÁ¾ÆÇÑ´Ù¸é, ÇÊ¿äÇÑ °ÍÀ» Çϳª¾¿ ¼ÕÀ¸·Î ÇØ ³ª°¥ ¼ö ÀÖ´Ù.
PACKAGE
¿Í VERSION
º¯¼ö¸¦ AC_SUBST
¿Í ÇÔ²² Á¤ÀÇÇÑ´Ù.
PACKAGE
´Â ¹èÆ÷ÇÏ·Á°í ¹À» ¶§ ³ªÅ¸³ª´Â ÆÐÅ°ÁöÀÇ À̸§ÀÌ µÇ¾ß
ÇÑ´Ù. ¿¹¸¦ µé¾î, Automake´Â PACKAGE
¸¦ `automake'·Î
Á¤ÀÇÇÏ¿´´Ù. VERSION
Àº °³¹ßµÈ °ÍÀ» releaseÇÒ ¶§ ¹öÀü ¹øÈ£°¡ µÇ¾ß
ÇÑ´Ù. `configure.in'ÀÌ ÆÐÅ°Áö¿¡¼ ¹öÀü ¹øÈ£°¡ Á¤ÀÇµÈ À¯ÀÏÇÑ °÷À¸·Î
Ç϶ó°í ÃßõÇÑ´Ù: ÀÌ·¸°Ô Çϸé release°¡ °£ÆíÇØ Áø´Ù.
Automake´Â PACKAGE
³ª VERSION
¿¡ ´ëÇؼ `Gnits' ¸ðµå¿¡
ÀÖÀ» ¶§¸¦ Á¦¿ÜÇÏ°í´Â ¾î¶² Çؼ®µµ ÇÏÁö ¾Ê´Â´Ù.
AC_ARG_PROGRAM
¸ÅÅ©·Î¸¦ »ç¿ëÇÑ´Ù.
AC_PROG_MAKE_SET
À» »ç¿ëÇÑ´Ù.
AM_SANITY_CHECK
¸¦ ¾´´Ù.
AM_PROG_INSTALL
À» »ç¿ëÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é,
AC_PROG_INSTALL
.
aclocal
, autoconf
, automake
, autoheader
,
±×¸®°í makeinfo
°¡ ÄÄÆÄÀÏ È¯°æ¿¡¼ Á¸ÀçÇÏ´ÂÁö ¾Ë¾Æº¸·Á¸é,
AM_MISSING_PROG
¸¦ »ç¿ëÇÑ´Ù. ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù:
missing_dir=`cd $ac_aux_dir && pwd` AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir)
±× ¿Ü¿¡ Automake°¡ ÇÊ¿ä·Î ÇÏÁö¸¸, AM_INIT_AUTOMAKE
¿¡ ÀÇÇØ
½ÇÇàµÇÁö ¾Ê´Â ¸ÅÅ©·Î°¡ ¿©±â ÀÖ´Ù:
AC_OUTPUT
Makefile
À̶ó´Â À̸§À¸·Î ¿°ÅµÈ ÆÄÀϵéÀº `Makefile'·Î
´Ù·ïÁø´Ù. ±× ¿Ü¿¡ ¿°ÅµÈ ÆÄÀϵéÀº ´Ù¸¥ ½ÄÀ¸·Î 󸮵ȴÙ. ÇöÀç ´Ù¸¥ Á¡Àº
`Makefile'µéÀÌ make distclean
¿¡ ÀÇÇØ Áö¿öÁöÁö¸¸, ´Ù¸¥
ÆÄÀϵéÀº make clean
À¸·Î Áö¿öÁø´Ù´Â °Í »ÓÀÌ´Ù.
¶ÇÇÑ Automake´Â ƯÁ¤ ¸ÅÅ©·Î¸¦ ¾Ë¾Æ³»¼ ÀûÀýÈ÷ ¸¸µé¾îÁö´Â `Makefile.in'À» ¼Õº»´Ù. ÇöÀç Automake°¡ ¾Ë¾Æ³»´Â ¸ÅÅ©·Î¿Í ±× È¿°ú´Â:
AC_CONFIG_HEADER
AC_OUTPUT
¸í·ÉÀº `stamp-h'¸¦ ¸¸µé¾î¾ß ÇÑ´Ù. ¿¹¸¦ µé¾î:
AC_OUTPUT(Makefile, [test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h])ÇöÀç´Â Automake°¡
AC_OUTPUT
¸í·ÉÀÌ ¿Ã¹Ù¸¥Áö °Ë»çÇÏÁö ¾Ê´Â °Í¿¡
À¯ÀÇÇÏÀÚ. ¹Ù¶ó°Çµ¥ ¾ÕÀ¸·Î autoconf
¹öÀüÀº Automake°¡ ÀÌ ÀÏÀ»
ÀÚµ¿À¸·Î ó¸®ÇÏ°Ô ÇØ ÁÙ °ÍÀÌ´Ù.
AC_CONFIG_AUX_DIR
AC_PATH_XTRA
AC_PATH_XTRA
°¡ Á¤ÀÇÇÑ º¯¼ö¿¡ ´ëÇÑ Á¤Àǹ®À» C
ÇÁ·Î±×·¥À̳ª ¶óÀ̺귯¸®¸¦ buildÇÏ´Â °¢ `Makefile.in'¿¡ ³Ö´Â´Ù.
AC_CANONICAL_HOST
AC_CHECK_TOOL
AC_CANONICAL_SYSTEM
AC_CANONICAL_HOST
¿Í ºñ½ÁÇÏÁö¸¸, `Makefile' º¯¼ö
`build_alias'¿Í `target_alias'¸¦ Á¤ÀÇÇÑ´Ù.
AC_FUNC_ALLOCA
AC_FUNC_GETLOADAVG
AC_FUNC_MEMCMP
AC_STRUCT_ST_BLOCKS
AM_FUNC_FNMATCH
AM_FUNC_STRTOD
AC_REPLACE_FUNCS
AC_REPLACE_GNU_GETOPT
AM_WITH_REGEX
LIBOBJS
LIBOBJS
·Î ³Ö´Â ¹®ÀåÀ» ã¾Æ³»°í, ÀÌ
ºÎ°¡ÀûÀÎ ÆÄÀϵéÀ» ¸¶Ä¡ AC_REPLACE_FUNC
¸¦ ÅëÇØ ¹ß°ßµÈ °Íó·³
´Ù·ê °ÍÀÌ´Ù.
AC_PROG_RANLIB
AC_PROG_CXX
AM_PROG_LIBTOOL
libtool
À» À§ÇÑ Ã³¸®¸¦ ÇÒ °ÍÀÌ´Ù. (see section `The Libtool Manual' in The Libtool Manual).
AC_PROG_YACC
AC_DECL_YYTEXT
AC_PROG_LEX
ALL_LINGUAS
AM_C_PROTOTYPES
AM_GNU_GETTEXT
AM_MAINTAINER_MODE
configure
¿¡ `--enable-maintainer-mode' ¿É¼ÇÀ»
ºÙÀδÙ. ÀÌ ¸ÅÅ©·Î°¡ ¾²À̸é, automake
´Â ¸¸µé¾î Áö´Â
`Makefile.in'¿¡¼ ±âº»À¸·Î "maintainer¸¸ »ç¿ëÇÏ´Â" rule µéÀ»
¾ø¾Öµµ·Ï ÇÑ´Ù. ÀÌ ¸ÅÅ©·Î´Â `Gnits' ¸ðµå¿¡¼´Â »ç¿ëÇÒ ¼ö ¾ø´Ù.
FIXME xref.
AC_SUBST
AC_CHECK_TOOL
AC_CHECK_PROG
AC_CHECK_PROGS
AC_PATH_PROG
AC_PATH_PROGS
Automake´Â ÆÐÅ°Áö ³»¿¡¼ ¾²ÀÏ ¿©·¯°³ÀÇ Autoconf ¸ÅÅ©·Î¸¦ Æ÷ÇÔÇÑ´Ù;
¸î°³´Â ½ÇÁ¦·Î ƯÁ¤ »óȲ¿¡¼¸¸ ÇÊ¿äÇÏ´Ù. ÀÌ·¯ÇÑ ¸ÅÅ©·Î´Â
`aclocal.m4'¿¡ Á¤ÀÇµÇ¾ß ÇÑ´Ù; ±×·¸Áö ¾ÊÀ¸¸é, autoconf
°¡
ã¾Æ³»Áö ¸øÇÒ °ÍÀÌ´Ù.
aclocal
ÇÁ·Î±×·¥Àº ÀÚµ¿À¸·Î `aclocal.m4' ÆÄÀÏÀ»
`configure.in' ³»¿ë¿¡ ±âÃÊÇؼ ¸¸µç´Ù. ÀÌ ÇÁ·Î±×·¥Àº ¿©±âÀú±â
µ¹¾Æ´Ù´Ò ÇÊ¿ä¾øÀÌ Automake°¡ Á¦°øÇÏ´Â ¸ÅÅ©·Î¸¦ »ç¿ëÀ» Æí¸®ÇÏ°Ô ÇØ ÁØ´Ù.
¶Ç, ÀÌ·¯ÇÑ aclocal
ÀÇ ¹æ¹ýÀº ¶Ç´Ù¸¥ ÆÐÅ°Áö¿¡¼ »ç¿ëÇÒ¶§ È®ÀåÇÒ ¼ö
ÀÖ´Ù.
aclocal
ÀÌ ½ÃÀÛÇÒ¶§, ¸ÅÅ©·Î Á¤ÀǸ¦ ã¾Æ ³»±â À§Çؼ, ãÀ» ¼ö ÀÖ´Â
¸ðµç `.m4' ÆÄÀÏÀ» °Ë»öÇÑ´Ù. ±× ´ÙÀ½¿¡ `configure.in'À»
°Ë»öÇÑ´Ù. ù¹ø° ´Ü°è¿¡¼ ¹ß°ßµÇ´Â ¸ÅÅ©·ÎÁß Çϳª¶óµµ ¾ð±ÞµÇ¾î ÀÖÀ¸¸é ±×
¸ÅÅ©·Î¿Í ±× ¸ÅÅ©·Î¿¡¼ ÇÊ¿äÇÑ ´Ù¸¥ ¸ÅÅ©·ÎµéÀ» `aclocal.m4'¿¡ Áý¾î
³Ö´Â´Ù.
aclocal
¿¡ ´ÙÀ½ ¿É¼ÇÀ» ÁÙ ¼ö ÀÖ´Ù:
--acdir=dir
--help
--output=file
--verbose
--version
AM_CONFIG_HEADER
AM_CYGWIN32
configure
°¡ `Cygwin32' ȯ°æ¿¡¼ µ¿ÀÛÇÏ´ÂÁö üũÇÑ´Ù.
(FIXME xref). ¸¸¾à ±×·¸´Ù¸é, º¯¼ö EXEEXT
¸¦ `.exe'·Î
Á¤ÀÇÇÑ´Ù; ±×·¸Áö ¾ÊÀ¸¸é ÀÌ º¯¼ö¸¦ ºó ¹®ÀÚ¿·Î ÇÑ´Ù. Automake´Â ÀÌ
¸ÅÅ©·Î¸¦ ¹ß°ßÇϸé, `Cygwin32'¿¡¼ ÀÚµ¿À¸·Î µ¿ÀÛÇÏ´Â
`Makefile.in'À» ¸¸µéµµ·Ï ÇÒ °ÍÀÌ´Ù. `Cygwin32' ȯ°æ¿¡¼,
gcc
´Â ÆÄÀÏ À̸§ÀÌ `.exe'·Î ³¡³ª´Â ½ÇÇà ÆÄÀÏÀ» ¸¸µç´Ù (ºñ·Ï
¸í·ÉÇà¿¡¼ `.exe'¸¦ ¸í½ÃÇÒ ÇÊ¿ä´Â ¾øÁö¸¸). Automake´Â ÀÌ°ÍÀ»
¸ÚÁö°Ô ó¸®Çϴ Ưº°ÇÑ Äڵ带 `Makefile.in'¿¡ Ãß°¡ÇÑ´Ù.
AM_FUNC_STRTOD
strtod
ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ¾ø°Å³ª, ¿Ã¹Ù¸£°Ô µ¿ÀÛÇÏÁö ¾ÊÀ¸¸é (SunOS
5.4ÀÇ ÇÔ¼öó·³), `strtod.o'¸¦ LIBOBJS
º¯¼ö¿¡ Ãâ·ÂÇÑ´Ù.
AM_FUNC_ERROR_AT_LINE
error_at_line
ÇÔ¼ö°¡ ¾øÀ¸¸é, LIBOBJS
¿¡
`error.o'¸¦ Ãß°¡ÇÑ´Ù.
AM_FUNC_MKTIME
mktime
ÇÔ¼ö°¡ µ¿ÀÛÇÏ´ÂÁö È®ÀÎÇÑ´Ù. ¸¸¾à ¾øÀ¸¸é,
`mktime.o'¸¦ `LIBOBJS'¿¡ Ãß°¡ÇÑ´Ù.
AM_FUNC_OBSTACK
AM_C_PROTOTYPES
AM_HEADER_TIOCGWINSZ_NEEDS_SYS_IOCTL
TIOCGWINSZ
¸¦ ¾µ¶§ `<sys/ioctl.h>'°¡ ÇÊ¿äÇϸé,
GWINSZ_IN_SYS_IOCTL
À» Á¤ÀÇÇÑ´Ù. ¾Æ´Ï¸é,
TIOCGWINSZ
´Â `<termios.h>'¿¡ ÀÖÀ» ¼öµµ ÀÖ´Ù.
AM_INIT_AUTOMAKE
AC_DEFINE
ÇÑ´Ù.
ÀÌ ±â´ÉÀº ¼¼¹ø° Àμö·Î ¹«¾ð°¡¸¦ ³Ñ°ÜÁÖ¸é ÇÇÇÒ ¼ö ÀÖ´Ù.
AM_PATH_LISPDIR
emacs
ÇÁ·Î±×·¥À» ã´Â´Ù. ±×¸®°í ãÀ¸¸é, Ãâ·Â º¯¼ö
lispdir
À» EmacsÀÇ site-lisp µð·ºÅ丮ÀÇ °æ·Î(full path)·Î ¸ÂÃá´Ù.
AM_PROG_CC_STDC
CC
°¡ ANSI C ¸ðµå·Î µ¿ÀÛÇϵµ·Ï ½ÃµµÇÑ´Ù. ÀÌ ¸ÅÅ©·Î´Â ¿©·¯°¡Áö
½Ã½ºÅÛ¿¡¼ ANSI C¸¦ ¼±ÅÃÇÏ´Â ¿É¼ÇµéÀ» ½ÃµµÇØ º»´Ù. ¸¸¾à
__STDC__
°¡ 1ÀÌ°í, ÇÔ¼ö ¿øÇü(prototype)À» Á¦´ë·Î ó¸®Çϸé ANSI C
¸ðµå¶ó°í »ý°¢ÇÑ´Ù.
ÀÌ ¸ÅÅ©·Î¸¦ ¾²¸é, ¸ÅÅ©·Î°¡ ½ÇÇàµÈ µÚ¿¡ C ÄÄÆÄÀÏ·¯°¡ ANSI C¸¦
¹Þ¾ÆµéÀ̵µ·Ï ¸ÂÃçÁ³´ÂÁö È®ÀÎÇØ¾ß ÇÑ´Ù; ±×·¸Áö ¾ÊÀ¸¸é, ¼Ð º¯¼ö
am_cv_prog_cc_stdc
°¡ `no'·Î Á¤ÀǵȴÙ. ¼Ò½º Äڵ尡 ANSI C·Î
µÇ¾î ÀÖÀ¸¸é, ansi2knr
¿É¼ÇÀ» ½á¼ ANSI ±â´ÉÀ» ¾ø¾Ø Ä«ÇǸ¦ ¸¸µé ¼ö
ÀÖ´Ù.
AM_PROG_INSTALL
AC_PROG_INSTALL
°ú ¸¶Âù°¡ÁöÀÌÁö¸¸, INSTALL_SCRIPT
µµ
Á¤ÀÇÇÑ´Ù.
AM_SANITY_CHECK
AM_INIT_AUTOMAKE
¿¡¼ ÀÚµ¿À¸·Î
½ÇÇàµÈ´Ù.
AM_SYS_POSIX_TERMIOS
am_cv_sys_posix_termios
¼Ð º¯¼ö¸¦ `yes'·Î
Á¤ÀÇÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é, º¯¼ö¸¦ `no'·Î Á¤ÀÇÇÑ´Ù.
AM_TYPE_PTRDIFF_T
AM_WITH_DMALLOC
dmalloc
ÆÐÅ°Áö Áö¿øÀ» Ãß°¡ÇÑ´Ù. »ç¿ëÀÚ°¡ `--with-dmalloc'
¿É¼ÇÀ» ºÙ¿©¼ configure¸¦ Çϸé, WITH_DMALLOC
À» Á¤ÀÇÇÏ°í,
LIBS
¿¡ `-ldmalloc'À» Ãß°¡ÇÑ´Ù. dmalloc
ÆÐÅ°Áö´Â
ftp://ftp.letters.com/src/dmalloc/dmalloc.tar.gz¿¡ ÀÖ´Ù.
AM_WITH_REGEX
configure
¸í·ÉÇà¿¡ `--with-regex'À» Ãß°¡ÇÑ´Ù. ¸¸¾à
ÀÌ ¸ÅÅ©·Î°¡ »ç¿ëµÈ´Ù¸é (»ç¿ëµÇ´Â °ÍÀÌ ±âº»), `regex' Á¤±Ô½Ä(regular
expression) ¶óÀ̺귯¸®°¡ »ç¿ëµÇ°í, `regex.o'°¡ `LIBOBJS'¿¡
Ãß°¡µÇ°í, `WITH_REGEX'°¡ Á¤ÀǵȴÙ. `--without-regex' ¿É¼ÇÀÌ
ÀÖ´Ù¸é, `rx' Á¤±Ô½Ä(regular expression) ¶óÀ̺귯¸®°¡ »ç¿ëµÇ°í,
`rx.o'°¡ `LIBOBJS'¿¡ Ãß°¡µÈ´Ù.
AclocalÀº ³»ºÎÀûÀ¸·Î ¾î¶² ¸ÅÅ©·Î¿¡ ´ëÇؼµµ ¾ËÁö ¸øÇϱ⠶§¹®¿¡, Àڱ⸸ÀÇ ¸ÅÅ©·Î¸¦ °¡Áö°í È®ÀåÇÏ´Â °ÍÀº ½¬¿î ÀÏÀÌ´Ù.
È®ÀåÇÏ´Â °ÍÀº ´Ù¸¥ ÇÁ·Î±×·¥¿¡¼ »ç¿ëÇÒ¶§ ¾²ÀÌ´Â °íÀ¯ÇÑ Autoconf ¸ÅÅ©·Î¸¦
Æ÷ÇÔÇÏ´Â ¶óÀ̺귯¸®°¡ »ç¿ëÇÑ´Ù. ¿¹¸¦ µé¾î, gettext
¶óÀ̺귯¸®´Â
gettext
¸¦ ¾²´Â ¾î¶² ÆÐÅ°ÁöµçÁö »ç¿ëÇØ¾ß ÇÏ´Â
AM_GNU_GETTEXT
¸ÅÅ©·Î¸¦ Æ÷ÇÔÇÑ´Ù. ¶óÀ̺귯¸®°¡ ¼³Ä¡µÇ¸é,
¶óÀ̺귯¸®´Â aclocal
ÀÌ Ã£À» ¼ö ÀÖµµ·Ï ÀÌ ¸ÅÅ©·Î¸¦ ¼³Ä¡ÇÑ´Ù.
¸ÅÅ©·Î ÆÄÀÏÀº AC_DEFUN
ÀÇ ¿¬¼ÓÀ̾î¾ß ÇÑ´Ù. ¶Ç aclocal
˼
AC_REQUIRE
¸¦ ¾Ë¾Æº¸±â ¶§¹®¿¡, °¢°¢ÀÇ ¸ÅÅ©·Î¸¦ ´Ù¸¥ ÆÄÀÏ¿¡ ³Ö´Â
°Íµµ °¡´ÉÇÏ´Ù.
¸ÅÅ©·Î ÆÄÀÏÀÇ À̸§Àº `.m4'·Î ³¡³ª¾ß ÇÑ´Ù. ÀÌ·¯ÇÑ ÆÄÀÏÀº `$(datadir)/aclocal'¿¡ ¼³Ä¡µÇ¾î¾ß ÇÑ´Ù.
Go to the first, previous, next, last section, table of contents.