12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114 |
- GNU Autoconf NEWS - User visible changes.
- scripts continue to run without perl).
- Released by Eric Blake, based on git versions 2.68.*.
- themselves with $CONFIG_SHELL, if that's set in the environment.
- "back-cover" texts, so that it may now be included in Debian's
- "main" section.
- AC_LANG_GO sets variables GOC and GOFLAGS.
- 2.66.
- - AC_PROG_LN_S and AS_LN_S now fall back on 'cp -pR' (not 'cp -p') if 'ln -s'
- does not work. This works better for symlinks to directories.
- - New macro AC_HEADER_CHECK_STDBOOL.
- - New and updated macros for Fortran support:
- AC_FC_CHECK_BOUNDS to enable array bounds checking
- AC_F77_IMPLICIT_NONE and AC_FC_IMPLICIT_NONE to disable implicit integer
- AC_FC_MODULE_EXTENSION to compute the Fortran 90 module name extension
- AC_FC_MODULE_FLAG for the Fortran 90 module search path flag
- AC_FC_MODULE_OUTPUT_FLAG for the Fortran 90 module output directory flag
- AC_FC_PP_SRCEXT for preprocessed Fortran source files extensions
- AC_FC_PP_DEFINE for the Fortran preprocessor define flag
- Released by Eric Blake, based on git versions 2.67.*.
- `dnl'. Regression introduced in 2.66.
- Regression introduced in 2.66.
- variable that expands to a list of functions to check. Regression
- introduced in 2.66.
- test category.
- AC_RUN_IFELSE now warn if the first argument failed to use
- AC_LANG_SOURCE or AC_LANG_PROGRAM to generate the conftest file
- contents. A new macro AC_LANG_DEFINES_PROVIDED exists if you have
- a compelling reason why you cannot use AC_LANG_SOURCE but must
- avoid the warning.
- update non-symlinked cache files atomically, so that concurrent configure
- runs do not leave behind broken cache files. It is still unspecified
- which subset or union of results is cached though.
- portable even when very many test groups are used.
- shell execution environment of the arguments are documented now.
- The following macros have been marked obsolete. New programs
- should use the corresponding Gnulib modules. Gnulib not only
- detects a larger set of portability problems with these functions,
- but also provides complete workarounds.
- AC_FUNC_ERROR_AT_LINE AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
- AC_FUNC_MKTIME AC_FUNC_STRTOD
- Released by Eric Blake, based on git versions 2.66.*.
- Regression introduced in 2.66.
- 2.66.
- file for inspection by the commands in the ACTION-IF-TRUE argument.
- in single- or double-quoted strings, and in quoted and unquoted
- here-documents, for its PACKAGE and VERSION arguments. Regression
- introduced in 2.66.
- race condition that could cause the testsuite run to end early,
- fixing a sporadic failure in autoconf's own testsuite. Bug present
- since introduction of parallel tests in 2.63b.
- Released by Eric Blake, based on git versions 2.65.*.
- since it is seldom right to change diversions behind autoconf's back.
- AC_TYPE_INT64_T work again. Regression introduced in 2.65.
- in 2.64.
- for overloaded C++ functions.
- failed or passed unexpectedly during the last non-debug testsuite run.
- and `--with-*' arguments, converting them to underscores for the variable
- names.
- and problems in loading the configuration site files are diagnosed.
- AT_ARG_OPTION_ARG have seen bug fixes and are documented now.
- AT_ARG_OPTION has been changed in that the negative of a long option
- --OPTION is now --no-OPTION rather than --noOPTION.
- containing shell quotes are no longer treated as literals.
- Furthermore, a new macro, AS_LITERAL_WORD_IF, adds an additional
- level of checking that no whitespace occurs in literals.
- AS_BOX
- Released by Eric Blake, based on git versions 2.64.*.
- or later (GPLv3+). As with earlier versions, the license includes
- an exception clause so that you may release a configure script
- generated by autoconf under the license of your own program.
- AC_PROG_OBJCXX AC_PROG_OBJCXXCPP
- have been reinstated:
- AH_CHECK_HEADERS
- These macros are present only for backwards compatibility purposes.
- lack fopen in the C library, such as AVR or RTEMS (regression
- introduced in 2.64).
- made it fail with some Fortran compilers (regression introduced in
- 2.64).
- longer mistakenly select a 32-bit type on some compilers (bug present
- since macros were introduced in 2.59c).
- Cygwin (bug present since macro was introduced in 2.0).
- AT_CHECK_EUNIT
- m4_toupper m4_tolower
- m4_escape
- requiring quadrigraphs. For uses like AC_ARG_VAR([a], [[b c]]),
- this gives the intuitive behavior of "[b c]" in the output (2.63
- gave the output of "[b], [c]", and 2.64 encountered a failure).
- public use now.
- the DJGPP port of bash 2.04 in handling 'return' in a shell
- function (regression introduced in 2.64).
- Released by Eric Blake, based on git versions 2.63b.*.
- have a bug in regular expression handling that interferes with some
- of the speedups provided since Autoconf 2.63. GNU M4 1.4.13 or
- later is recommended.
- given arguments that expand to just whitespace.
- AC_ERLANG_SUBST_ERTS_VER
- AC_DEFINE and AC_DEFINE_UNQUOTED.
- proper m4 quoting. For shell comments, this is a new feature; for
- non-shell comments, this fixes a regression introduced in 2.63b.
- Additionally, AT_CHECK correctly supplies shell escapes for
- metacharacters occurring in m4 macro expansions within the expected
- stdout and stderr parameters.
- a test exits with an unexpected status 99, cleanup actions for the
- test are inhibited and the test is treated as a failure regardless
- of AT_XFAIL_IF. It also understands the new directives
- ignore-nolog, stdout-nolog, and stderr-nolog.
- AT_CHECK_UNQUOTED AT_FAIL_IF AT_SKIP_IF
- m4_argn m4_copy_force m4_default_nblank m4_default_nblank_quoted
- m4_ifblank m4_ifnblank m4_rename_force
- Released by Eric Blake, based on git versions 2.63.*.
- then later indirectly requires the same inner macro. Previously,
- this case led to silent out-of-order expansion (bug present since
- 2.50); it now issues a syntax warning, and duplicates the expansion
- of the inner macro to guarantee dependencies have been met. See
- the manual for advice on how to refactor macros in order to avoid
- the bug in earlier autoconf versions and avoid increased script
- size in the current version.
- with AC_DEFUN_ONCE warned on a second invocation; and out-of-order
- expansion was still possible. Now, dependencies are guaranteed,
- and subsequent invocations are a silent no-op. This makes
- AC_DEFUN_ONCE an ideal macro for silencing AC_REQUIRE warnings.
- a subtle change in semantics; previously, an AC_DEFUN macro could
- expand one of these macros multiple times or surround the macro
- inside shell conditional text to bypass the effects of these
- macros, but now the macro will expand exactly once, and prior to
- the start of any enclosing AC_DEFUN macro:
- AC_CANONICAL_BUILD AC_CANONICAL_HOST AC_CANONICAL_TARGET
- AC_HEADER_ASSERT AC_PROG_INSTALL AC_PROG_MKDIR_P
- AC_USE_SYSTEM_EXTENSIONS
- longer mistakenly disables assertions.
- set AC_PACKAGE_URL, a URL for the package's home page; the URL is
- used in `configure --help' and is also available via AC_DEFINE.
- This feature is still in testing, and may not work on every
- platform, help in improving it would be appreciated.
- to the log file before that is opened (regression introduced in 2.63).
- smaller configure files and faster execution.
- the compiler's result if a header is present but cannot be compiled.
- The warning is still printed, and you should really fix it by
- providing a fourth parameter to AC_CHECK_HEADER/AC_CHECK_HEADERS.
- `autoreconf -I dir' option.
- m4_chomp m4_chomp_all m4_cleardivert m4_curry m4_default_quoted
- m4_esyscmd_s m4_map_args m4_map_args_pair m4_map_args_sep
- m4_map_args_w m4_set_map m4_set_map_sep m4_stack_foreach
- m4_stack_foreach_lifo m4_stack_foreach_sep
- m4_stack_foreach_sep_lifo
- with slightly different semantics than what the previous
- undocumented version had:
- m4_copy m4_dumpdefs m4_rename m4_version_prereq
- comments and shell case statements. As a result, it is used
- internally in more places, such as AC_DEFINE and AT_CHECK. Most
- uses of AC_DEFINE and AT_CHECK should not behave any differently;
- however, it may be necessary to add double-quoting around
- unbalanced `(' where single-quoting used to be sufficient.
- AS_INIT_GENERATED AS_LINENO_PREPARE AS_ME_PREPARE AS_SET_STATUS
- AS_VAR_APPEND AS_VAR_ARITH AS_VAR_COPY
- with slightly different semantics than what the previous
- undocumented version had:
- AS_ECHO AS_ECHO_N AS_ESCAPE AS_EXIT AS_LITERAL_IF AS_UNSET
- AS_VAR_IF AS_VAR_POPDEF AS_VAR_PUSHDEF AS_VAR_SET AS_VAR_SET_IF
- AS_VAR_TEST_SET AS_VERSION_COMPARE
- The responsibility for supplying a trailing newline now belongs to
- the call site, but since most users did not add dnl, this generally
- results in fewer empty lines in configure.
- Released by Eric Blake, based on git versions 2.62.*.
- bigendian hosts, a regression introduced with universal binary
- support in 2.62.
- library directories.
- AC_DEFINE([__EXTENSIONS__]). This fixes a regression introduced in
- 2.62 when using macros such as AC_AIX that were made obsolete in
- favor of the more portable AC_USE_SYSTEM_EXTENSIONS.
- The following macro has been marked obsolete, since current porting
- targets can safely assume C89 semantics that signal handlers return
- void. We have no current plans to remove the macro.
- AC_TYPE_SIGNAL
- consisting of just empty quotes, and m4_map_sep now expands its
- separator. This fixes a regression in 2.62 when these macros were
- first documented, for the sake of clients expecting the semantics
- that these macros had prior to that time. The new macros m4_mapall
- and m4_mapall_sep, along with extra quoting of the separator, can
- be used to get the semantics that m4_map_sep had in 2.62.
- handle properly quoted but otherwise unbalanced parentheses (for
- some macros, this fixes a regression in 2.62).
- allowing the output of unbalanced parentheses in more contexts.
- m4_cleardivert m4_joinall m4_mapall m4_mapall_sep m4_reverse
- m4_set_add m4_set_add_all m4_set_contains m4_set_contents
- m4_set_delete m4_set_difference m4_set_dump m4_set_empty
- m4_set_foreach m4_set_intersection m4_set_list m4_set_listc
- m4_set_remove m4_set_size m4_set_union
- case with underlying m4:
- m4_defn m4_popdef m4_undefine
- previously had linear scaling with m4 1.6 but quadratic scaling
- when using m4 1.4.x. All macros built on top of these also gain
- the scaling improvements.
- m4_bmatch m4_bpatsubsts m4_case m4_cond m4_do m4_dquote_elt
- m4_foreach m4_join m4_list_cmp m4_map m4_map_sep m4_max
- m4_min m4_shiftn
- AT_KEYWORDS([m4_if([$1], [], [default])]) no longer complains about
- the possibly unexpanded m4_if [regression introduced in 2.62].
- nested comments any more; regression introduced in 2.62.
- Released by Eric Blake, based on git versions 2.61a.*.
- - As a side effect, AC_DEFINE and AC_DEFINE_UNQUOTED now handle multi-line
- values, i.e., backslash-newline combinations are handled correctly.
- Further, for config headers, the total size of values is not limited by
- the POSIX length limit of text lines any more, only each single line.
- AC_AUTOCONF_VERSION AC_OPENMP AC_PATH_PROGS_FEATURE_CHECK
- like '__restrict' if the variant spelling is available, as this is
- more likely to work when mixing C and C++ code.
- be a string of tokens such that "T y;" is a valid member declaration
- in a struct.
- is that sizeof (X) works, then AC_CHECK_SIZEOF (X) should work.
- they did not work for function types. In C++, they now work on any
- type-id that can be the operand of sizeof; this is similar to C,
- except it excludes anonymous struct and union types. Formerly,
- some (but not all) C++ types involving anonymous struct and union
- were accepted, though this was not documented.
- if found, and it works to link against a file of the same name in
- the source tree, even if both trees coincide.
- the case where the first argument contains single-quoted commas.
- For example, "AS_HELP_STRING([-a, [--arg[=foo]]], [bar])" produces:
- " -a, --arg[=foo] bar"
- Additionally, the macro now takes two additional arguments,
- indent-column and wrap-column; these should not normally be needed,
- but can be used to fine-tune how the output text is wrapped.
- files into a target directory.
- or '--bindir', trailing slashes are stripped. As an example, if
- tab completion in the user's shell appends trailing slashes, the
- command './configure --prefix=/usr/' will still result in an
- expanded libdir value of /usr/lib, not /usr
- unconfigured build trees.
- check warns instead of fails, and reuses the old value.
- length.
- to adjust the working directory prior to creating files.
- a bug in macro tracing that interferes with the interaction between
- Autoconf and Automake. GNU M4 1.4.11 or later is recommended. The
- configure search for a working M4 is improved.
- anything larger than $9 to refer to arguments.
- - The following macros were previously available as undocumented
- interfaces; the macros are now documented as stable interfaces.
- __oline__ m4_assert m4_bmatch m4_bpatsubsts m4_car m4_case
- m4_cdr m4_default m4_divert_once m4_divert_pop m4_divert_push
- m4_divert_text m4_do m4_errprintn m4_fatal m4_flatten
- m4_ifndef m4_ifset m4_ifval m4_ifvaln m4_location
- m4_n m4_shiftn m4_strip m4_warn
- - The following macros were previously available as undocumented
- interfaces, but had bug fixes or semantic changes as part of this
- release. Packages that relied on the undocumented behavior
- should be analyzed to make sure they will still work with the
- new documented behavior.
- m4_cmp m4_list_cmp m4_join m4_map m4_map_sep m4_sign
- m4_text_box m4_text_wrap m4_version_compare
- - The m4_wrap macro used to have unspecified order, but now
- guarantees FIFO order. m4_wrap_lifo was added to guarantee LIFO
- order.
- - Packages using the undocumented m4sugar macro m4_PACKAGE_VERSION
- should consider using the new AC_AUTOCONF_VERSION instead.
- - m4sugar macros that are not documented in the manual are still
- deemed experimental, and should not be used outside of Autoconf.
- 2.60, have been fixed to treat both the string and the separator
- arguments consistently with regards to quoting. Prior to this fix,
- m4_append_uniq could mistakenly duplicate entries if the expansion
- of the separator resulted in a different string (for example, if it
- contained quotes, a comma, or a macro name). However, it means
- that programs previously using
- m4_append([name], [string], [[, ]])
- are now using a four-character separator instead of the intended
- comma and space. If you need portability to earlier versions of
- Autoconf, you can insert the following snippet after AC_INIT but
- before any other macro expansions, to enforce the new semantics:
- m4_pushdef([m4_append], [m4_define([$1],
- m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
- Additionally, m4_append_uniq now takes optional parameters that can
- be used to take action depending on whether anything was appended,
- and warns if a non-empty separator occurs within the string being
- appended, since that can lead to duplicates.
- m4_append_uniq_w m4_apply m4_combine m4_cond m4_count
- m4_dquote_elt m4_echo m4_expand m4_ignore m4_make_list m4_max
- m4_min m4_newline m4_shift2 m4_shift3 m4_unquote m4_wrap_lifo
- 'configure' with an unknown --enable-* or --with-* option.
- These warnings can be disabled with the new AC_DISABLE_OPTION_CHECKING
- macro, or by invoking 'configure' with --disable-option-checking.
- The documentation for the following macros is adjusted to make it
- more clear that they have previously been marked obsolete, as their
- functionality can be accomplished by other macros. We have no
- current plans to remove them from Autoconf.
- AC_ENABLE AC_STRUCT_ST_BLKSIZE AC_STRUCT_ST_RDEV AC_WITH
- The following macros have been marked obsolete, as they only
- perform a subset of AC_USE_SYSTEM_EXTENSIONS. We have no current
- plans to remove them.
- AC_AIX AC_GNU_SOURCE AC_ISC_POSIX AC_MINIX
- The documentation now says that AC_C_LONG_DOUBLE is obsolescent: it
- tests for problems that are so old that it is no longer of
- practical importance on current systems. New programs need not use
- AC_C_LONG_DOUBLE. We have no current plans to remove it.
- The documentation now favors the use of M4sugar macros m4_warn and
- m4_fatal, since the naming makes it more obvious that the
- diagnostics are associated with M4 expansion (ie. when running
- `autoconf'), and offers less confusion with the AC_MSG_ERROR,
- AC_MSG_FAILURE, and AC_MSG_WARN macros which manage diagnostics
- when running `configure'. We have no current plans to remove these
- macros.
- on many platforms. This has been fixed.
- compatibility but it does nothing. The macro was already
- obsolescent, as the last systems to have the problem were those
- based on SVR2, which became obsolete in 1987. The macro had bugs
- on some modern systems and could no longer be maintained reliably
- due to lack of ancient systems to test it on.
- - As a side effect multi-line values of substituted variables no
- longer have a small limit in total size, though for portability
- each line should not exceed the POSIX length limit for text lines.
- - It is now documented that Makefile.in should not contain
- overlapping variable occurrences, e.g., @VAR1@VAR2@.
- Autoconf's behavior was always iffy in such cases, and the
- awk implementation has changed the behavior.
- scripts have fewer problems with strings or file names containing
- embedded special characters such as backslash or leading "-". This
- was implemented by using `printf '%s\n' "$foo"' instead of `echo
- "$foo"' when printf works. Due to the implementation technique
- used, Autoconf-generated scripts now run considerably more slowly
- on ancient implementations lacking printf. However, this should
- not be a problem, since Autoconf-generated scripts in practice
- invariably find a more-modern shell these days.
- Autoconf-generated shell scripts no longer export BIN_SH, due to
- configuration hassles with this. Installers who need BIN_SH in
- their environment should set it before invoking 'configure' and
- 'make'. As far as we know, this affects only Unixware installations.
- The documentation now says that the following macros are obsolescent,
- as they are superseded by Gnulib:
- AC_FUNC_FNMATCH AC_FUNC_FNMATCH_GNU AC_FUNC_GETLOADVG AC_REPLACE_FNMATCH
- New programs should use the Gnulib counterparts of these macros.
- We have no current plans to remove them from Autoconf.
- New M4sugar macro, which is more secure than the POSIX M4 maketemp.
- Now an alias for m4_mkstemp.
- It also tests that the preprocessor supports 64-bit integers.
- "#if HAVE_STDLIB_H", so that it now works with "gcc -Wundef -Werror".
- by a public and documented macro, AC_COMPUTE_INT. The parameters to the
- two macros are different, so autoupdate will not change the old private name
- to the new one. _AC_COMPUTE_INT may be removed in a future release.
- that long long types be at least 64 bits wide, as C99 and tradition
- requires. Formerly, they accepted implementations of any width.
- Released 2006-06-23, by Ralf Wildenhues.
- or LIFO (as in GNU M4 1.4.x). GNU M4 2.0 is expected to conform to Posix
- here, so m4wrap/m4_wrap users should no longer depend on LIFO behavior.
- Released 2006-06-05, by Ralf Wildenhues.
- INSTALL now suggests VPATH builds (e.g., "sh ../srcdir/configure")
- only if you use GNU make. In practice, other 'make' implementations
- have too many subtle incompatibilities in their support for VPATH.
- Many packages (including Autoconf itself) are portable to other
- 'make' implementations, but some packages are not, and recommending
- GNU make keeps the installation instructions simpler.
- Warn about suspicious `${datarootdir}' found in config files output.
- These never-documented macros and variables have been marked with
- comments saying that they may be removed in a future release,
- because their use can lead to unintended code being executed.
- If you need functionality that only these macros or variables
- currently supply, please write bug-autoconf@gnu.org.
- Literal arguments to these are passed to m4_pattern_allow now.
- Passing 'ac_cv_prog_cc_stdc=no' to 'configure' now sets ac_cv_prog_cc_c99
- and ac_cv_prog_cc_c89 to 'no' as well, for backward compatibility with
- obsolete K&R tests in the Automake test suite.
- New macro.
- New macro.
- Now more robust with special characters in file names, or when
- multiple processes create the same directory at the same time.
- The documentation now says that the following macros are obsolescent:
- they test for problems that are so old that they are no longer of
- practical importance on current systems.
- AC_C_BACKSLASH_A AC_FUNC_MEMCMP AC_HEADER_DIRENT
- AC_C_CONST AC_FUNC_SELECT_ARGTYPES AC_HEADER_STAT
- AC_C_PROTOTYPES AC_FUNC_SETPGRP AC_HEADER_STDC
- AC_C_STRINGIZE AC_FUNC_SETVBUF_REVERSED AC_HEADER_SYS_WAIT
- AC_C_VOLATILE AC_FUNC_STAT AC_HEADER_TIME
- AC_FUNC_CLOSEDIR_VOID AC_FUNC_STRFTIME AC_ISC_POSIX
- AC_FUNC_GETPGRP AC_FUNC_UTIME_NULL AC_PROG_GCC_TRADITIONAL
- AC_FUNC_LSTAT AC_FUNC_VPRINTF AC_STRUCT_TM
- New programs need not use these macros. We have no current plans to
- remove them.
- For compatibility with future Libtool 2.0, autoreconf will invoke
- libtoolize with the option `--ltdl' now, if LT_CONFIG_LTDL_DIR is
- used.
- Released 2006-04-12, by Ralf Wildenhues.
- to help avoid problems with subsidiary commands that might mistakenly
- read standard input. AS_ORIGINAL_STDIN_FD points to the original
- standard input before this redirection, if you really want configure to
- read from standard input.
- The following directory variables are new:
- datarootdir read-only architecture-independent data root [PREFIX/share]
- localedir locale-specific message catalogs [DATAROOTDIR/locale]
- docdir documentation root [DATAROOTDIR/doc/PACKAGE]
- htmldir html documentation [DOCDIR]
- dvidir dvi documentation [DOCDIR]
- pdfdir pdf documentation [DOCDIR]
- psdir ps documentation [DOCDIR]
- The following variables have new default values:
- datadir read-only architecture-independent data [DATAROOTDIR]
- infodir info documentation [DATAROOTDIR/info]
- mandir man documentation [DATAROOTDIR/man]
- This means that if you use any of `@datadir@', `@infodir@', or
- `@mandir@' in a file, you will have to ensure `${datarootdir}' is
- defined in this file. As a temporary measure, if any of those are
- found but no mention of `datarootdir', the substitutions will be
- replaced with values that do not contain `${datarootdir}', and a
- warning will be issued.
- a trailing slash. Similar change will be made to ac_top_builddir in a
- future release; the old style value, which matches (../)*, is (and will
- continue to be) available as ac_top_build_prefix.
- New macro to check for support of 'typeof' syntax a la GNU C.
- New "once-only" variants of commonly-used macros, to make 'configure'
- smaller and faster in common cases.
- New macro to check for strtold with C99 semantics.
- New macro that lets builder disable assertions at 'configure'-time.
- Now checks for X11/Xlib.h and XrmInitialize (X proper) rather than
- X11/Intrinsic.h and XtMalloc (Xt).
- New macro that causes `configure' to display help strings for AC_ARG_ENABLE
- and AC_ARG_WITH arguments in one region, in the order defined. The default
- behavior is to group options of each classes separately.
- No longer automatically arrange to declare the 'exit' function of C,
- when a C++ compiler is used. Standard Autoconf macros no longer use
- 'exit', so this is no longer an issue for them. If you use C++, and
- want to call 'exit', you'll have to arrange for its declaration
- yourself. But we now suggest you return from 'main' instead.
- New macros for ISO C99 support. AC_PROG_CC_C89 and AC_PROG_CC_C99
- check for ANSI C89 and ISO C99 support respectively.
- Has been unobsoleted, and will check if the compiler supports ISO
- C99, falling back to ANSI C89 if not. ac_cv_prog_cc_stdc is
- retained for backwards compatibility, assuming the value of
- ac_cv_prog_cc_c99 or ac_cv_prog_cc_c89 (whichever is valid, in
- that order).
- New macros for checking commonly-used members of struct dirent.
- The substituted value can now contain newlines.
- The substitution now occurs only when @variable@ is on a line by itself,
- optionally surrounded by spaces and tabs. The whole line is replaced.
- New macros to check for long double, and whether it is wider than double.
- The old macro AC_C_TYPE_LONG_DOUBLE has been marked as obsolete;
- applications should switch to the new macro.
- AC_TYPE_INTMAX_T, AC_TYPE_INTPTR_T, AC_TYPE_LONG_LONG_INT, AC_TYPE_SSIZE_T,
- AC_TYPE_UINT8_T, AC_TYPE_UINT16_T, AC_TYPE_UINT32_T, AC_TYPE_UINT64_T,
- AC_TYPE_UINTMAX_T, AC_TYPE_UINTPTR_T, AC_TYPE_UNSIGNED_LONG_LONG_INT
- New macros to check for C99 and POSIX types.
- New macro to enable extensions to Posix.
- New macro which is defined to the name of the first declared config header
- or undefined if no config headers have been declared yet.
- The macro correctly handles quadrigraphs now.
- These macros are new or published now.
- New macro for copyright notices in testsuite files.
- Object names added to these variables are now prefixed with `${LIBOBJDIR}',
- as in `${LIBOBJDIR}alloca.o'. LIBOBJDIR is meant to be defined from
- `Makefile.in' in case the object files lie in a different directory.
- The LIBOBJDIR feature is experimental.
- Supports --no-recursive now.
- New macros for configuring paths to Erlang tools and libraries:
- AC_ERLANG_PATH_ERLC, AC_ERLANG_NEED_ERLC, AC_ERLANG_PATH_ERL,
- AC_ERLANG_NEED_ERL, AC_ERLANG_CHECK_LIB, AC_ERLANG_SUBST_ROOT_DIR,
- AC_ERLANG_SUBST_LIB_DIR.
- New macros for configuring installation of Erlang libraries:
- AC_ERLANG_SUBST_INSTALL_LIB_DIR, AC_ERLANG_SUBST_INSTALL_LIB_SUBDIR.
- AC_PROG_OBJC, AC_PROG_OBJCPP.
- Released 2004-08-20, by Paul Eggert.
- New macro that computes the default alignment of a type.
- When cross-compiling, these macros will give a warning if the tool
- is not prefixed. In the future, unprefixed cross tools will not
- be detected; please consult the info documentation for information
- about the reason of this change.
- New macros that detect programs whose name is prefixed with the
- target type, if the build type and target type are different.
- New trace macro that declares expected auxiliary files.
- New macro that tests for a grep program that accepts as a long a line
- as possible.
- These macros now require AC_PROG_GREP, and try EGREP="$GREP -E" and
- FGREP="$GREP -F" respectively if possible, or else run a path search for
- a program that accepts as long a line as possible.
- New macro that tests for a sed program that truncates as few characters
- as possible.
- Released 2003-11-04, by Akim Demaille
- Absolute file names were actually relative in 2.58.
- Released 2003-11-04, by Akim Demaille
- core.* files are no longer removed, as they may be valid user files.
- Autoreconf creates the auxiliary directory if needed. This is
- especially useful for initial "bootstrapping" of fresh CVS checkouts.
- Use this macro to declare the directory for local M4 macros for aclocal.
- No longer includes twice the same file in LIBOBJS if invoked
- multiple times.
- The directory for its first argument is automatically created. For
- instance, with
- AC_CONFIG_COMMANDS([src/modules.hh], [...])
- $top_builddir/src/ is created if needed.
- The optional file local.at is always included in Autotest test suites.
- The warnings are always issued, including with cached runs.
- This became a significant problem since aclocal and automake can
- run autoconf behind the scene.
- The warnings of autoheader can be turned off, using --warning.
- For instance, -Wno-obsolete disables the complaints about acconfig.h
- and other deprecated constructs.
- AC_C_RESTRICT, AC_INCLUDES_DEFAULT, AC_LANG_ASSERT, AC_LANG_WERROR,
- AS_SET_CATFILE.
- Works again.
- Now checks that mktime is the inverse of localtime.
- The Autoconf tools and configure behave better under DJGPP.
- New FAQ section dedicated to the mystic
- configure: WARNING: pi.h: present but cannot be compiled
- configure: WARNING: pi.h: check for missing prerequisite headers?
- configure: WARNING: pi.h: proceeding with the preprocessor's result
- messages.
- autom4te now locks its internal files, which enables concurrent
- executions of autom4te, likely to happen if automake, autoconf,
- autoheader etc. are run simultaneously.
- Use of Libtool 1.5 and higher is encouraged. Compatibility with
- Libtool pre-1.4 is not checked.
- Testsuites no longer rerun failed tests in verbose mode; instead,
- failures are logged while the test is run.
- In addition, expected failures can be marked as such.
- Released 2002-12-03 by Paul Eggert.
- Bug fixes for problems with AIX linker, with freestanding C compilers,
- with GNU M4 limitations, and with obsolete copies of GNU documents.
- The Free Documentation License has been upgraded from 1.1 to 1.2.
- Released 2002-11-15 by Akim Demaille.
- One packaging problem fixed (config/install-sh was not executable).
- Released 2002-11-14 by Akim Demaille.
- Release tips:
- Have your configure.ac checked by autoscan ("autoscan").
- Try the warning options ("autoreconf -fv -Wall").
- - AC_CHECK_HEADER, AC_CHECK_HEADERS
- More information on proper use.
- - Writing Test Programs
- This sections explains how to write good test sources to use with
- AC_COMPILE_IFELSE etc. It documents AC_LANG_PROGRAM and so forth.
- - AC_FOO_IFELSE vs. AC_TRY_FOO
- Explains why Autoconf moves from AC_TRY_COMPILE etc. to
- AC_COMPILE_IFELSE and AC_LANG_PROGRAM etc.
- - Is more robust to different Gettext installations.
- - Produces messages (when --verbose) to be understood by Emacs'
- compile mode.
- - Supports -W/--warnings.
- - -m/--make
- Once the GNU Build System reinstalled, run `./config.status
- --recheck && ./config.status && make' if possible.
- - Supports --cache, and --no-cache.
- - ~/.autom4te.cfg makes it possible to disable the caching mechanism
- (autom4te.cache). See `Customizing autom4te' in the documentation.
- Supports --quiet.
- Support for the obsoleted options -m, --macrodir, -l, --localdir is
- dropped in favor of the safer --include/--prepend-include scheme.
- - New macros
- AC_COMPILER_IFELSE, AC_FUNC_MBRTOWC, AC_HEADER_STDBOOL,
- AC_LANG_CONFTEST, AC_LANG_SOURCE, AC_LANG_PROGRAM, AC_LANG_CALL,
- AC_LANG_FUNC_TRY_LINK, AC_MSG_FAILURE, AC_PREPROC_IFELSE.
- - Obsoleted
- Obsoleted macros are kept for Autoconf backward compatibility, but
- should be avoided in configure.ac. Running autoupdate is advised.
- AC_DECL_SYS_SIGLIST.
- - AC_DEFINE/AC_DEFINE_UNQUOTED
- We have to stop using the old compatibility scheme --that tried to
- avoid useless backslashes-- because Libtool 1.4.3 contains a
- AC_DEFINE([error_t], [int],
- [Define to a type to use for \`error_t' if it is not
- otherwise available.])
- We have to quote the single quotes and backslashes with \. The old
- compatibility scheme saw that ` was backslashed, and therefore did
- not quote the single quote... Failure. Hence, Autoconf 2.54 is not
- compatible with Libtool. Autoconf 2.55 is, but in some cases might
- produce more \ than wanted.
- Please, note that in the future the same problem will happen with
- AC_MSG_*: use `autoreconf -f -Wall'.
- - Portability of the Autoconf package to Solaris.
- - Spurious warnings caused by config.status.
- This bug is benign, but painful: on some systems (typically
- FreeBSD), warnings such as:
- config.status: creating Makefile
- mv: Makefile: set owner/group (was: 1357/0): Operation not permitted
- could be issued. This is fixed.
- - Parallel Builds
- Simultaneous executions of config.status are possible again.
- - Precious variables accumulation
- config.status could stack several copies of the precious variables
- assignments.
- - ./configure <host>
- The compatibility hooks with the old scheme will be completely
- removed. Please, advice/use `--build', `--host', and `--target'
- only.
- - AC_CHECK_HEADER, AC_CHECK_HEADERS
- The tests will be stricter, please make sure your invocations are
- valid.
- - shell functions
- Shell functions will gradually be introduced, probably starting with
- Autotest. If you know machines which are in use that you suspect
- Autoconf 2.55 on it, and report the results to
- bug-autoconf@gnu.org.
- - AC_MSG_*
- Special characters in AC_MSG_* need not be quoted. Currently,
- Autoconf has heuristics to decide when a string is escaped, or has
- to be escaped. This scheme is fragile, and will be removed; the
- only risk is uglified messages. Please, run `autoreconf -f -Wall'
- to find occurrences that will be affected.
- Released 2002-09-13 by Akim Demaille.
- - autoreconf no longer changes the version of the gettext/po/intl
- support files. It now adds the files the correspond to the
- AM_GNU_GETTEXT_VERSION declared in configure.ac.
- Warning: It now relies on the 'autopoint' program, which is part
- of GNU gettext 0.11.4 and newer.
- Please note that you need to have a GNU gettext version that
- corresponds at least to the AM_GNU_GETTEXT_VERSION declared
- in configure.ac. You can upgrade to newer GNU gettext versions,
- though, without needing to change configure.ac.
- - The -I DIR or --include=DIR option now appends DIR to the include path
- instead of prepending; this is for consistency with other GNU tools.
- The new -B DIR or --prepend-include=DIR option has the old behavior.
- - AC_OUTPUT
- Now handles all the gory details about LIBOBJS and LTLIBOBJS.
- Please, remove lines such as
- # This is necessary so that .o files in LIBOBJS are also
- # built via the ANSI2KNR-filtering rules.
- LIBOBJS=`echo $LIBOBJS|sed 's/\.o /\$U.o /g;s/\.o$/\$U.o/'`
- and read the `AC_LIBOBJ vs LIBOBJS' section. Do not define U in
- your Makefiles either.
- - AC_CONFIG_LINKS now makes copies if it can't make links.
- - AC_FUNC_FNMATCH now tests only for POSIX compatibility, reverting to
- Autoconf 2.13 behavior. The new macro AC_FUNC_FNMATCH_GNU also
- tests for GNU extensions to fnmatch, and replaces fnmatch if needed.
- - AC_FUNC_SETVBUF_REVERSED no longer fails when cross-compiling.
- - AC_PROG_CC_STDC is integrated into AC_PROG_CC.
- - AC_PROG_F77 default search no longer includes cf77 and cfg77.
- - New macros
- AC_C_BACKSLASH_A, AC_CONFIG_LIBOBJ_DIR, AC_GNU_SOURCE,
- AC_PROG_EGREP, AC_PROG_FGREP, AC_REPLACE_FNMATCH,
- AC_FUNC_FNMATCH_GNU, AC_FUNC_REALLOC, AC_TYPE_MBSTATE_T.
- - AC_FUNC_GETLOADAVG
- looks for getloadavg.c in the CONFIG_LIBOBJ_DIR.
- - AC_FUNC_MALLOC
- Now defines HAVE_MALLOC to 0 if `malloc' does not work, and asks
- for an AC_LIBOBJ replacement.
- - Spurious complaints from `m4_bmatch' about invalid regular
- expressions are suppressed.
- - Empty top_builddirs are properly handled.
- - AC_CHECK_MEMBER works correctly when the member is an aggregate.
- - AC_PATH_PROG
- Now colon in the optional path arguments are properly handled.
- - Both Autoconf the package, and the scripts it produces, should run
- more reliably with Zsh. Bear in mind it is the default Bourne shell
- on Darwin.
- - Autoconf and the scripts it produces no longer assume the existence of
- the obsolescent commands egrep and fgrep.
- - Limitations of Make
- More of them.
- - GNATS
- The GNATS base moved to
- http:
- (It is no longer available, though.)
- - config.log
- Now contains the list of output variables and files (AC_SUBST,
- AC_SUBST_FILES).
- Released 2002-03-08 by Akim Demaille.
- Perl 5.005_03 or later is required: autom4te is written in Perl and is
- needed by autoconf. autoheader, autoreconf, ifnames, and autoscan are
- rewritten in Perl.
- - AC_INIT
- Argument requirements, output variables, defined macros.
- - M4sugar, M4sh, Autotest
- First sketch.
- - Double quoting macros
- AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and AC_TRY_RUN.
- - Licensing
- The Autoconf manual is now distributed under the terms of the GNU FDL.
- - Section `Hosts and Cross-Compilation'
- Explains the rationale for the 2.5x changes in the cross-compilation
- chain, and in the relationships between build, host, and target
- types.
- Emphasizes that `cross-compilation' == `--host is given'.
- If you are working on compilers etc., be sure to read this section.
- - Section `AC_LIBOBJ vs. LIBOBJS'
- Explains why assigning LIBOBJS directly is now an error.
- Details how to update the code.
- - $LINENO
- Now used instead of hard coded line numbers.
- This eases the comparison of `configure's, and diminishes the
- pressure over control version archives.
- Automatic replacement for shells that don't support this feature.
- - New output variables
- @builddir@, @top_builddir@, @abs_srcdir@, @abs_top_srcdir@, @abs_builddir@,
- @abs_top_builddir@.
- Autoconf and Autotest modes are provided.
- - autom4te
- New, used by the Autoconf suite to cache and speed up most processing.
- - --force, -f
- Supported by autom4te, autoconf and autoheader.
- - --include, -I
- Replaces --autoconf-dir and --localdir in autoconf, autoheader,
- autoupdate, and autoreconf.
- - autoreconf
- No longer passes --cygnus, --foreign, --gnits, --gnu, --include-deps:
- automake options are to be given via AUTOMAKE_OPTIONS.
- - autoreconf
- Runs gettextize and libtoolize when appropriate.
- - autoreconf
- --m4dir is no longer supported.
- - autoreconf
- Now runs only in the specified directories, defaulting to `.',
- but understands AC_CONFIG_SUBDIRS for dependent directories.
- Before, it used to run on all the `configure.ac' found in the
- current tree.
- Independent packages are properly updated.
- - The top level $prefix is propagated to the AC_CONFIG_SUBDIRS configures.
- - AC_TRY_RUN
- Under the user pressure, $? is finally available. Probably a mistake.
- - AC_F77_LIBRARY_LDFLAGS now supports the HP/UX f90 compiler.
- - Precious variables accumulation
- config.status could stack several copies of the precious variables
- assignments.
- - AC_PATH_PROG and family.
- Works properly when given a literal path.
- - AC_FUNC_SETPGRP
- Somewhere since 2.13, the result had been reversed.
- - AC_C_BIGENDIAN supports the cross-compiling case.
- - AC_C_BIGENDIAN accepts ACTION-IF-TRUE, ACTION-IF-FALSE, and
- ACTION-IF-UNKNOWN arguments. All are optional, and the default
- for ACTION-IF-TRUE is to define WORDS_BIGENDIAN like AC_C_BIGENDIAN
- always did.
- - AC_C_LONG_DOUBLE now succeeds only if `long double' has more range or
- precision than `double'.
- - AC_INIT
- It now defines the preprocessor symbols PACKAGE_NAME,
- PACKAGE_TARNAME, PACKAGE_VERSION, PACKAGE_STRING, and
- PACKAGE_BUGREPORT.
- - AC_INIT
- Admits a fourth optional parameter: the tar name.
- - AC_CONFIG_COMMANDS, HEADERS, FILES, LINKS.
- Provide the user with srcdir, ac_srcdir, ac_top_srcdir, ac_builddir,
- ac_top_builddir, ac_abs_srcdir, ac_abs_top_srcdir, ac_abs_builddir,
- ac_abs_top_builddir.
- - AC_CONFIG_COMMANDS, HEADERS, FILES, LINKS and AC_OUTPUT.
- Are much less expensive when using long lists of files.
- - AC_PREFIX_PROGRAM
- Works with shell variables, and non alphanumeric names.
- - AC_FUNC_STRERROR_R now sets STRERROR_R_CHAR_P, not HAVE_WORKING_STRERROR_R,
- because POSIX 1003.1-200x draft 7 says strerror_r returns int, not char *.
- - AC_FUNC_STRTOD substitutes POW_LIB.
- - AC_FUNC_STRNLEN
- New.
- Released 2001-07-18 by Akim Demaille.
- - AC_ARG_VAR
- - Quadrigraphs
- This feature was present in autoconf 2.50 but was not documented.
- For example, `@<:@' is translated to `[' just before output. This
- is useful when writing strings that contain unbalanced quotes, or
- other hard-to-quote constructs.
- - m4_pattern_forbid, m4_pattern_allow
- - Tips for upgrading from 2.13.
- - Using autoscan to maintain a configure.ac.
- - Now include stdint.h.
- - sys/types.h and sys/stat.h are guarded.
- - strings.h is included if available, and not conflicting with string.h.
- - The test suite is more robust and presents less false failures.
- - Invocation of GNU M4 now robust to POSIXLY_CORRECT.
- - configure accepts --prefix='' again.
- - AC_CHECK_LIB works properly when its first argument is not a
- literal.
- - HAVE_INTTYPES_H is defined only if not conflicting with sys/types.h.
- - build_, host_, and target_alias are AC_SUBST as in 2.13.
- - AC_ARG_VAR properly propagates precious variables inherited from the
- environment to ./config.status.
- - Using --program-suffix/--program-prefix is portable.
- - Failures to detect the default compiler's output extension are less
- likely.
- - `config.status foo' works properly when `foo' depends on variables
- set in an AC_CONFIG_THING INIT-CMD.
- - autoheader is more robust to broken input.
- - Fixed Fortran name-mangling and link tests on a number of systems,
- e.g. NetBSD; see AC_F77_DUMMY_MAIN, below.
- - AC_CHECK_HEADER and AC_CHECK_HEADERS support a fourth argument to
- specify pre-includes. In this case, the headers are compiled with
- cc, not merely preprocessed by cpp. Therefore it is the _usability_
- of a header which is checked for, not just its availability.
- - AC_ARG_VAR refuses to run configure when precious variables have
- changed.
- - Versions of compilers are dumped in the logs.
- - AC_CHECK_TYPE recognizes use of `foo_t' as a replacement type.
- - AC_PATH_XTRA only adds -ldnet to $LIBS if it's needed to link.
- - AC_FUNC_WAIT3 and AC_SYS_RESTARTABLE_SYSCALLS are obsoleted.
- - AM_FUNC_ERROR_AT_LINE, AM_FUNC_FNMATCH, AM_FUNC_MKTIME,
- AM_FUNC_OBSTACK, and AM_FUNC_STRTOD are now activated.
- Be sure to read `Upgrading from Version 2.13' to understand why
- running `autoupdate' is needed.
- - AC_F77_DUMMY_MAIN, AC_F77_MAIN: new macros to detect whether
- a main-like routine is required/possible when linking C/C++ with
- Fortran. Users of e.g. AC_F77_WRAPPERS should be aware of these.
- - AC_FUNC_GETPGRG behaves better when cross-compiling.
- There was no release of Autoconf 2.51 since some packagers had used
- this version number without permission to ship intermediary versions
- of 2.50. The version was skipped to avoid confusion.
- Released 2001-05-21 by Akim Demaille.
- There have been far too many to enumerate them here. Check out
- ChangeLog if you really want to know more.
- In particular, portability issues are better covered.
- All the standard GNU Makefile targets are supported. The layout has
- changed: m4/ holds the M4 extensions Autoconf needs for its
- configuration, doc/ contains the documentation, and tests/ contains
- the test suite.
- For autoconf, autoreconf, autoupdate, autoheader, autoscan, ifnames,
- config.guess, config.sub.
- - --trace
- Provides a safe and powerful means to trace the macro uses. This
- provide the parsing layer for tools which need to `study'
- configure.in.
- - --warnings
- Specify what category of warnings should be enabled.
- - When recursing into subdirectories, try for configure.gnu before
- configure to adapt for packages not using autoconf on case-insensitive
- file systems.
- - Diagnostics
- More errors are now caught (circular AC_REQUIRE dependencies,
- AC_DEFINE in the action part of an AC_CACHE_CHECK, too many pops
- etc.). In addition, their location and call stack are given.
- autoupdate is much more powerful, and is able to provide the glue code
- which might be needed to move from an old macro to its newer
- equivalent.
- You are strongly encouraged to use it to modernize both your
- `configure.in' and your .m4 extension files.
- The internal machinery of autoheader has completely changed. As a
- result, using `acconfig.h' should be considered to be obsoleted, and
- you are encouraged to get rid of it using the AH macros.
- Extensive overhaul.
- Globally, the support for Fortran 77 is considerably improved.
- Support for automatically determining a Fortran 77 compiler's
- name-mangling scheme. New CPP macros F77_FUNC and F77_FUNC_ are
- provided to wrap C/C++ identifiers, thus making it easier and more
- transparent for C/C++ to call Fortran 77 routines, and Fortran 77 to
- call C/C++ routines. See the Texinfo documentation for details.
- The test suite no longer uses DejaGNU. It should be easy to submit
- test cases in this new framework.
- - --help, --help=long, -hl
- no longer dumps useless items.
- - --help=short, -hs
- lists only specific options.
- - --help=recursive, -hr
- displays the help of all the embedded packages.
- - Remembers environment variables when reconfiguring.
- The previous scheme to set envvar before running configure was
- ENV=VAL ./configure
- what prevented configure from remembering the environment in which
- it was run, therefore --recheck was run in an inconsistent
- environment. Now, one should run
- ./configure ENV=VAR
- and then --recheck will work properly. Variables declared with
- AC_ARG_VAR are also preserved.
- - cross-compilation
- $build defaults to `config.guess`, $host to $build, and then $target
- to $host.
- Cross-compilation is a global status of the package, it no longer
- depends upon the current language.
- Cross compilation is enabled iff the user specified `--host'.
- `configure' now fails if it can't run the executables it compiles,
- unless cross-compilation is enabled.
- - Cache file
- The cache file is disabled by default. The new options
- `--config-cache', `-C' set the cache to `config.cache'.
- - faster
- Much faster on most architectures.
- - concurrent executions
- It is safe to use `make -j' with config.status.
- - human interface improved
- It is possible to invoke
- ./config.status foobar
- instead of the former form (still valid)
- CONFIG_COMMANDS= CONFIG_HEADERS= CONFIG_LINKS= \
- CONFIG_FILES=foobar:foo.in:bar.in \
- ./config.status
- The same holds for configuration headers and links.
- You can instantiate unknown files and headers:
- ./config.status --header foo.h:foo.h.in --file bar:baz
- - has a useful --help
- - accepts special file name "-" for stdin/stdout
- - AC_COPYRIGHT
- Specify additional copyright information.
- - AC_INIT
- Now expects the identity of the package as argument.
- - Uniform quotation
- Most macros, if not all, now strictly follow the `one quotation
- level' rule. This results in a more predictable expansion.
- - AC_REQUIRE
- A sly bug in the AC_REQUIRE machinery, which could produce incorrect
- configure scripts, was fixed by Axel Thimm.
- - AC_ARG_VAR
- Document and ask for the registration of an envvar.
- - AC_CONFIG_SRCDIR
- Specifies the file which `configure' should look for when trying to
- find the source tree (used to be handled by AC_INIT).
- - AC_CONFIG_COMMANDS
- To add new actions to config.status. Should be used instead of
- AC_OUTPUT_COMMANDS.
- - AC_CONFIG_LINKS
- Replaces AC_LINK_FILES.
- - AC_CONFIG_HEADERS, AC_CONFIG_COMMANDS, AC_CONFIG_SUBDIRS,
- AC_CONFIG_LINKS, and AC_CONFIG_FILES
- They now obey sh: you should no longer use shell variables as
- argument. Instead of
- test "$package_foo_enabled" = yes && $my_subdirs="$my_subdirs foo"
- AC_CONFIG_SUBDIRS($my_subdirs)
- write
- if test "$package_foo_enabled" = yes; then
- AC_CONFIG_SUBDIRS(foo)
- fi
- - AC_HELP_STRING
- To format an Autoconf macro's help string so that it looks pretty
- when the user executes `configure --help'.
- - AC_CHECK families
- The interface of the AC_CHECK families of macros (decl, header,
- type, member, func) is now uniform. They support the same set of
- default includes.
- - AC_CHECK_DECL, AC_CHECK_DECLS
- To check whether a symbol is declared.
- - AC_CHECK_SIZEOF, AC_C_CHAR_UNSIGNED.
- No longer need a cross-compilation default.
- - AC_CHECK_TYPE
- The test it performs is much more robust than previously, and makes
- it possible to test builtin types in addition to typedefs.
- It is now schizophrenic:
- - AC_CHECK_TYPE(TYPE, REPLACEMENT)
- remains for backward compatibility, but its use is discouraged.
- - AC_CHECK_TYPE(TYPE, IF-FOUND, IF-NOT-FOUND, INCLUDES)
- behaves exactly like the other AC_CHECK macros.
- - AC_CHECK_TYPES
- Checks whether given types are supported by the system.
- - AC_CHECK_MEMBER, AC_CHECK_MEMBERS
- Check for given members in aggregates (e.g., pw_gecos in struct
- passwd).
- - AC_PROG_CC_STDC
- Checks if the compiler supports ISO C, included when needs special
- options.
- - AC_PROG_CPP
- Checking whether the preprocessor indicates missing includes by the
- error code. stderr is checked by AC_TRY_CPP only as a fallback.
- - AC_LANG
- Takes a language as argument and replaces AC_LANG_C,
- AC_LANG_CPLUSPLUS and AC_LANG_FORTRAN77.
- - AC_LANG_PUSH, AC_LANG_POP
- Are preferred to AC_LANG_SAVE, AC_LANG_RESTORE.
- - AC_FUNC_CHOWN, AC_FUNC_MALLOC, AC_FUNC_STRERROR_R,
- AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK, AC_FUNC_STAT, AC_FUNC_LSTAT,
- AC_FUNC_ERROR_AT_LINE, AC_FUNC_OBSTACK, AC_FUNC_STRTOD, AC_FUNC_FSEEKO.
- New.
- - AC_FUNC_GETGROUPS
- Sets GETGROUPS_LIBS.
- - AC_FUNC_GETLOADAVG
- Defines `HAVE_STRUCT_NLIST_N_UN_N_NAME' instead of `NLIST_NAME_UNION'.
- - AC_PROG_LEX
- Now integrates `AC_DECL_YYTEXT' which is obsoleted.
- - AC_SYS_LARGEFILE
- Arrange for large-file support.
- - AC_EXEEXT, AC_OBJEXT
- You are no longer expected to use them: their computation is
- performed by default.
- Every macro has been revisited in order to support at best CC=c++.
- Major changes in Autoconf 2.14:
- There was no release of GNU Autoconf 2.14.
- Major changes in Autoconf 2.13:
- Released 1999-05-01 by Ben Elliston.
- C++ compiler is the Microsoft Visual C++ command line compiler
- (`cl'). Additional support for building on 32-bit Windows systems which are
- using the Cygwin or Mingw32 environments.
- On 32-bit Windows, for example, these are .obj and .exe. These are discovered
- using AC_OBJEXT and AC_EXEEXT, which substitute @OBJEXT@ and
- @EXEEXT@ in the output, respectively.
- AC_VALIDATE_CACHED_SYSTEM_TUPLE, AC_SEARCH_LIBS, AC_TRY_LINK_FUNC,
- AC_C_STRINGIZE, AC_CHECK_FILE(S), AC_PROG_F77 (and friends).
- placed in the config header input file (e.g. config.h.in).
- improved to include an explicit return type for main(). This was
- causing failures on systems using recent versions of the EGCS C++
- compiler.
- script to report that `sometype_t' was present when only `type_t'
- was defined.
- these scripts. Add support for a few new hosts in config.guess.
- Incorporate latest versions of install-sh, mkinstalldirs and
- texinfo.tex from the FSF.
- applicable).
- Major changes in Autoconf 2.12:
- Released 1996-11-26 by David J. MacKenzie
- concatenating multiple input files separated by colons, like so:
- AC_CONFIG_HEADER(config.h:conf.pre:config.h.in:conf.post)
- AC_OUTPUT(Makefile:Makefile.in:Makefile.rules)
- The arguments may be shell variables, to compute the lists on the fly.
- Major changes in Autoconf 2.11:
- Released November 18th, 1996, by David J. MacKenzie
- They also default CFLAGS/CXXFLAGS to "-g -O2" for gcc, instead of "-g -O".
- fail are saved in config.log.
- Major changes in Autoconf 2.10:
- Released May 7th, 1996, by Roland McGrath
- changed: now $ac_cv_lib_LIB_FUNC, previously $ac_cv_lib_LIB.
- Major changes in Autoconf 2.9:
- Released March 16th, 1996, by Roland McGrath
- Major changes in Autoconf 2.8:
- Released March 8th, 1996, by Roland McGrath
- Major changes in Autoconf 2.7:
- Released November 22nd, 1995, by David J. MacKenzie
- Major changes in Autoconf 2.6:
- Released November 20th, 1995, by David J. MacKenzie
- Major changes in Autoconf 2.5:
- Released November 17th, 1995, by Roland McGrath
- corresponding output variables.
- AC_CHECK_TOOL can search a path other than $PATH.
- Major changes in Autoconf 2.4:
- Released June 14th, 1995, by David J. MacKenzie
- Major changes in Autoconf 2.3:
- Released March 27th, 1995, by David J. MacKenzie
- Major changes in Autoconf 2.2:
- Released March 8th, 1995, by David J. MacKenzie
- library before existing libs, not after, in case it uses them.
- Major changes in Autoconf 2.1:
- Released November 4th, 1994, by David J. MacKenzie
- that are older than any of their particular input files; there is a
- --force option to use after installing a new version of Autoconf.
- Thanks to everybody who's submitted changes and additions to Autoconf!
- I've incorporated many of them, and am still considering others for
- future releases -- but I didn't want to postpone this release indefinitely.
- Caution: don't indiscriminately rebuild configure scripts with
- Autoconf version 2. Some configure.in files need minor adjustments to
- work with it; the documentation has a chapter on upgrading. A few
- configure.in files, including those for GNU Emacs and the GNU C
- Library, need major changes because they relied on undocumented
- internals of version 1. Future releases of those packages will have
- updated configure.in files.
- It's best to use GNU M4 1.3 (or later) with Autoconf version 2.
- Autoconf now makes heavy use of M4 diversions, which were implemented
- inefficiently in GNU M4 releases before 1.3.
- Major changes in Autoconf 2.0:
- Released October 26th, 1994, by David J. MacKenzie
- and has several new indexes.
- scanning its source code for commonly used nonportable functions,
- programs, and header files.
- source tree.
- files in a source tree.
- in an alternate directory.
- that macros invoked with AC_REQUIRE don't interrupt other macros.
- support deciding unguessable features based on the host and target types.
- --program-suffix, and --program-transform-name to change the names
- of programs being installed.
- whether or not the test succeeds. They obsolete AC_CHECKING and AC_VERBOSE.
- backward compatibility.
- non-Makefiles where it finds @configure_input@ in an input file, to
- support files with various comment syntaxes.
- files when they are not enclosed in @ signs.
- override the file name "config.status".
- configure to config.status.
- CPPFLAGS, and LDFLAGS from the environment.
- specified by AC_CONFIG_AUXDIR, or srcdir or srcdir/.. or
- srcdir/../.. by default.
- mechanism (AC_MSG_CHECKING and AC_MSG_RESULT).
- --enable- and --with- options.
- execute on success or failure.
- better maintained with them.
- take arguments, for consistency with all of the other specific checks.
- can be selected with the --cache-file=FILE option.
- $prefix/etc/config.site to perform site or system specific initializations.
- Major changes in Autoconf 1.11:
- Plus a few other bug fixes.
- Major changes in Autoconf 1.10:
- never uses cp.
- Plus several bugs fixed.
- Major changes in Autoconf 1.9:
- and autoheader generates entries for those names automatically.
- Major changes in Autoconf 1.8:
- AC_PROG_CXX, AC_PROG_CXXCPP, AC_REQUIRE_CPP
- for checking both C++ and C features in one configure script.
- AC_SET_MAKE, AC_ENABLE.
- install.sh is distributed with Autoconf.
- a rewrite of quoting in AC_DEFINE.
- warns about unknown options.
- have names beginning with `ac_'.
- More big improvements are in process for future releases, but have not
- yet been (variously) finished, integrated, tested, or documented enough
- to release yet.
- Major changes in Autoconf 1.7:
- Major changes in Autoconf 1.6:
- the file didn't change.
- modify its behavior.
- Major changes in Autoconf 1.5:
- --version and --help options (they print their message and exit).
- Major changes in Autoconf 1.4:
- AC_GETGROUPS_T, AC_DEFINE_UNQUOTED.
- name of the M4 program to use.
- in which acspecific.m4, acgeneral.m4, etc. reside if not the default.
- read stdin as input.
- to print the results of their tests.
- shell characters, etc. will be preserved during various stages of
- expansion done by the shell. If you don't want this, use
- AC_DEFINE_UNQUOTED instead.
- internalized with builtin M4 `patsubst' and `translit' calls.
- set the shell variables `gen_files' and `gen_config' to the list of
- file names to output.
- "lex.yy" or "lexyy", depending on the system.
- the default value.
- Major changes in Autoconf 1.3:
- configure no longer requires awk for packages that use a config.h.
- Support handling --with-PACKAGE options.
- New `autoheader' script to create `config.h.in' from `configure.in'.
- Ignore troublesome -lucb and -lPW when searching for alloca.
- Rename --exec_prefix to --exec-prefix for GNU standards conformance.
- Improve detection of STDC library.
- Add AC_HAVE_LIBRARY to check for non-default libraries.
- Function checking should work with future GNU libc releases.
- Major changes in Autoconf 1.2:
- The --srcdir option is now usually unnecessary.
- Add a file containing sample comments describing CPP macros.
- A comment in config.status tells which host it was configured on.
- Substituted variable values can now contain commas.
- Fix bugs in various feature checks.
- Major changes in Autoconf 1.1:
- Added AC_STRCOLL macro.
- Made AC_GETLOADAVG check for more things.
- AC_OUTPUT argument is now optional.
- Various bug fixes.
- -----
- Copyright (C) 1993-1996, 1998-2012 Free Software Foundation, Inc.
- Copying and distribution of this file, with or without modification,
- are permitted in any medium without royalty provided the copyright
- notice and this notice are preserved. This file is offered as-is,
- without warranty of any kind.
- Local Variables:
- mode: outline
- End:
|