📄 news
字号:
- 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.** Generic macros- 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.** Specific Macros- 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.* Major changes in Autoconf 2.51There was no release of Autoconf 2.51 since some packagers had usedthis version number without permission to ship intermediary versionsof 2.50. The version was skipped to avoid confusion.* Major changes in Autoconf 2.50 Released 2001-05-21 by Akim Demaille.** Lots of bug fixesThere have been far too many to enumerate them here. Check outChangeLog if you really want to know more.** Improved documentationIn particular, portability issues are better covered.** Use of AutomakeAll the standard GNU Makefile targets are supported. The layout haschanged: m4/ holds the M4 extensions Autoconf needs for itsconfiguration, doc/ contains the documentation, and tests/ containsthe test suite.** Man pages are providedFor autoconf, autoreconf, autoupdate, autoheader, autoscan, ifnames,config.guess, config.sub.** autoconf- --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.** autoupdateautoupdate is much more powerful, and is able to provide the glue codewhich might be needed to move from an old macro to its newerequivalent.You are strongly encouraged to use it to modernize both your`configure.in' and your .m4 extension files.** autoheaderThe internal machinery of autoheader has completely changed. As aresult, using `acconfig.h' should be considered to be obsoleted, andyou are encouraged to get rid of it using the AH macros.** autoreconfExtensive overhaul.** Fortran 77 compilersGlobally, the support for Fortran 77 is considerably improved.Support for automatically determining a Fortran 77 compiler'sname-mangling scheme. New CPP macros F77_FUNC and F77_FUNC_ areprovided to wrap C/C++ identifiers, thus making it easier and moretransparent for C/C++ to call Fortran 77 routines, and Fortran 77 tocall C/C++ routines. See the Texinfo documentation for details.** Test suiteThe test suite no longer uses DejaGNU. It should be easy to submittest cases in this new framework.** configure- --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'.** config.status- 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** Identity Macros- AC_COPYRIGHT Specify additional copyright information.- AC_INIT Now expects the identity of the package as argument.** General changes.- 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.** Setup Macros- 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'.** Generic Test Macros- 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.** Specific Macros- 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.** C++ compatibility 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.* Support for building on Win32 systems where the only available C or C++ compiler is the Microsoft Visual C++ command line compiler (`cl'). Additional support for building on Win32 systems which are using the Cygwin or Mingw32 environments.* Support for alternative object file and executable file extensions. On Win32, 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.* New macros: AC_CACHE_LOAD, AC_CACHE_SAVE, AC_FUNC_SELECT_ARGTYPES, AC_VALIDATE_CACHED_SYSTEM_TUPLE, AC_SEARCH_LIBS, AC_TRY_LINK_FUNC, AC_C_STRINGIZE, AC_CHECK_FILE(S), AC_PROG_F77 (and friends).* AC_DEFINE now has an optional third argument for a description to be placed in the config header input file (e.g. config.h.in).* The C++ code fragment compiled for the C++ compiler test had to be improved to include an explicit return type for main(). This was causing failures on systems using recent versions of the EGCS C++ compiler.* Fixed an important bug in AC_CHECK_TYPE that would cause a configure script to report that `sometype_t' was present when only `type_t' was defined.* Merge of the FSF version of config.guess and config.sub to modernize 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.* autoreconf is capable of running automake if necessary (and applicable).* Support for Fortran 77. See the Texinfo documentation for details.* Bug fixes and workarounds for quirky bugs in vendor utilities.Major changes in Autoconf 2.12: Released 1996-11-26 by David J. MacKenzie* AC_OUTPUT and AC_CONFIG_HEADER can create output files by 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.* AC_LINK_FILES and AC_CONFIG_SUBDIRS may be called multiple times.* New macro AC_OUTPUT_COMMANDS adds more commands to run in config.status.* Bug fixes.Major changes in Autoconf 2.11: Released November 18th, 1996, by David J. MacKenzie* AC_PROG_CC and AC_PROG_CXX check whether the compiler works. They also default CFLAGS/CXXFLAGS to "-g -O2" for gcc, instead of "-g -O".* AC_REPLACE_FUNCS defines HAVE_foo if the system has the function `foo'.* AC_CONFIG_HEADER expands shell variables in its argument.* New macros: AC_FUNC_FNMATCH, AC_FUNC_SETPGRP.* The "checking..." messages and the source code for test programs that fail are saved in config.log.* Another workaround has been added for seds with small command length limits.* config.sub and config.guess recognize more system types.* Bug fixes.Major changes in Autoconf 2.10: Released May 7th, 1996, by Roland McGrath* Bug fixes.* The cache variable names used by `AC_CHECK_LIB(LIB, FUNC, ...)' has 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* Bug fixes.Major changes in Autoconf 2.8: Released March 8th, 1996, by Roland McGrath
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -