📄 status.m4
字号:
# mechanism is implemented to handle them.## _AC_LINK_FILES_CNT is used to be robust to multiple calls.AU_DEFUN([AC_LINK_FILES],[m4_if($#, 2, , [m4_fatal([$0: incorrect number of arguments])])dnlm4_define_default([_AC_LINK_FILES_CNT], 0)dnlm4_define([_AC_LINK_FILES_CNT], m4_incr(_AC_LINK_FILES_CNT))dnlac_sources="$1"ac_dests="$2"while test -n "$ac_sources"; do set $ac_dests; ac_dest=$[1]; shift; ac_dests=$[*] set $ac_sources; ac_source=$[1]; shift; ac_sources=$[*] [ac_config_links_]_AC_LINK_FILES_CNT="$[ac_config_links_]_AC_LINK_FILES_CNT $ac_dest:$ac_source"doneAC_CONFIG_LINKS($[ac_config_links_]_AC_LINK_FILES_CNT)dnl],[It is technically impossible to `autoupdate' cleanly from AC_LINK_FILESto AC_CONFIG_LINKS. `autoupdate' provides a functional but inelegantupdate, you should probably tune the result yourself.])# AC_LINK_FILES# _AC_OUTPUT_LINK# ---------------# This macro is expanded inside a here document. If the here document is# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF".m4_define([_AC_OUTPUT_LINK],[ # # CONFIG_LINK # AC_MSG_NOTICE([linking $srcdir/$ac_source to $ac_file]) if test ! -r "$srcdir/$ac_source"; then AC_MSG_ERROR([$srcdir/$ac_source: file not found]) fi rm -f "$ac_file" # Try a relative symlink, then a hard link, then a copy. case $srcdir in [[\\/$]]* | ?:[[\\/]]* ) ac_rel_source=$srcdir/$ac_source ;; *) ac_rel_source=$ac_top_build_prefix$srcdir/$ac_source ;; esac ln -s "$ac_rel_source" "$ac_file" 2>/dev/null || ln "$srcdir/$ac_source" "$ac_file" 2>/dev/null || cp -p "$srcdir/$ac_source" "$ac_file" || AC_MSG_ERROR([cannot link or copy $srcdir/$ac_source to $ac_file])])# _AC_OUTPUT_LINK## ------------------------ #### Configuration commands. #### ------------------------ ### AC_CONFIG_COMMANDS(NAME...,[COMMANDS], [INIT-CMDS])# ---------------------------------------------------## Specify additional commands to be run by config.status. This# commands must be associated with a NAME, which should be thought# as the name of a file the COMMANDS create.#AC_DEFUN([AC_CONFIG_COMMANDS], [_AC_CONFIG_FOOS([COMMANDS], $@)])# AC_OUTPUT_COMMANDS(EXTRA-CMDS, INIT-CMDS)# -----------------------------------------## Add additional commands for AC_OUTPUT to put into config.status.## This macro is an obsolete version of AC_CONFIG_COMMANDS. The only# difficulty in mapping AC_OUTPUT_COMMANDS to AC_CONFIG_COMMANDS is# to give a unique key. The scheme we have chosen is `default-1',# `default-2' etc. for each call.## Unfortunately this scheme is fragile: bad things might happen# if you update an included file and configure.ac: you might have# clashes :( On the other hand, I'd like to avoid weird keys (e.g.,# depending upon __file__ or the pid).AU_DEFUN([AC_OUTPUT_COMMANDS],[m4_define_default([_AC_OUTPUT_COMMANDS_CNT], 0)dnlm4_define([_AC_OUTPUT_COMMANDS_CNT], m4_incr(_AC_OUTPUT_COMMANDS_CNT))dnldnl Double quoted since that was the case in the original macro.AC_CONFIG_COMMANDS([default-]_AC_OUTPUT_COMMANDS_CNT, [[$1]], [[$2]])dnl])# _AC_OUTPUT_COMMAND# ------------------# This macro is expanded inside a here document. If the here document is# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF".m4_define([_AC_OUTPUT_COMMAND],[ AC_MSG_NOTICE([executing $ac_file commands])])## -------------------------------------- #### Pre- and post-config.status commands. #### -------------------------------------- ### AC_CONFIG_COMMANDS_PRE(CMDS)# ----------------------------# Commands to run right before config.status is created. Accumulates.AC_DEFUN([AC_CONFIG_COMMANDS_PRE],[m4_append([AC_OUTPUT_COMMANDS_PRE], [$1])])# AC_OUTPUT_COMMANDS_PRE# ----------------------# A *variable* in which we append all the actions that must be# performed before *creating* config.status. For a start, clean# up all the LIBOBJ mess.m4_define([AC_OUTPUT_COMMANDS_PRE],[_AC_LIBOBJS_NORMALIZE])# AC_CONFIG_COMMANDS_POST(CMDS)# -----------------------------# Commands to run after config.status was created. Accumulates.AC_DEFUN([AC_CONFIG_COMMANDS_POST],[m4_append([AC_OUTPUT_COMMANDS_POST], [$1])])# Initialize.m4_define([AC_OUTPUT_COMMANDS_POST])## ----------------------- #### Configuration subdirs. #### ----------------------- ### AC_CONFIG_SUBDIRS(DIR ...)# --------------------------# We define two variables:# - _AC_LIST_SUBDIRS# A statically built list, should contain *all* the arguments of# AC_CONFIG_SUBDIRS. The final value is assigned to ac_subdirs_all in# the `default' section, and used for --help=recursive.# It is also used in _AC_CONFIG_UNIQUE.# It makes no sense for arguments which are sh variables.# - subdirs# Shell variable built at runtime, so some of these dirs might not be# included, if for instance the user refused a part of the tree.# This is used in _AC_OUTPUT_SUBDIRS.AC_DEFUN([AC_CONFIG_SUBDIRS],[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnlm4_foreach_w([_AC_Sub], [$1], [_AC_CONFIG_UNIQUE([SUBDIRS], m4_bpatsubst(m4_defn([_AC_Sub]), [:.*]))])dnlm4_append([_AC_LIST_SUBDIRS], [$1], [])dnlAS_LITERAL_IF([$1], [], [AC_DIAGNOSE([syntax], [$0: you should use literals])])dnlAC_SUBST([subdirs], ["$subdirs m4_normalize([$1])"])dnl])# _AC_OUTPUT_SUBDIRS# ------------------# This is a subroutine of AC_OUTPUT, but it does not go into# config.status, rather, it is called after running config.status.m4_define([_AC_OUTPUT_SUBDIRS],[## CONFIG_SUBDIRS section.#if test "$no_recursion" != yes; then # Remove --cache-file and --srcdir arguments so they do not pile up. ac_sub_configure_args= ac_prev= eval "set x $ac_configure_args" shift for ac_arg do if test -n "$ac_prev"; then ac_prev= continue fi case $ac_arg in -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* \ | --c=*) ;; --config-cache | -C) ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) ;; *) case $ac_arg in *\'*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac ac_sub_configure_args="$ac_sub_configure_args '$ac_arg'" ;; esac done # Always prepend --prefix to ensure using the same prefix # in subdir configurations. ac_arg="--prefix=$prefix" case $ac_arg in *\'*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac ac_sub_configure_args="$ac_arg $ac_sub_configure_args" ac_popdir=`pwd` for ac_dir in : $subdirs; do test "x$ac_dir" = x: && continue # Do not complain, so a configure script can configure whichever # parts of a large source tree are present. test -d "$srcdir/$ac_dir" || continue ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)" _AS_ECHO_LOG([$ac_msg]) _AS_ECHO([$ac_msg]) AS_MKDIR_P(["$ac_dir"]) _AC_SRCDIRS(["$ac_dir"]) cd "$ac_dir" # Check for guested configure; otherwise get Cygnus style configure. if test -f "$ac_srcdir/configure.gnu"; then ac_sub_configure=$ac_srcdir/configure.gnu elif test -f "$ac_srcdir/configure"; then ac_sub_configure=$ac_srcdir/configure elif test -f "$ac_srcdir/configure.in"; then # This should be Cygnus configure. ac_sub_configure=$ac_aux_dir/configure else AC_MSG_WARN([no configuration information is in $ac_dir]) ac_sub_configure= fi # The recursion is here. if test -n "$ac_sub_configure"; then # Make the cache file name correct relative to the subdirectory. case $cache_file in [[\\/]]* | ?:[[\\/]]* ) ac_sub_cache_file=$cache_file ;; *) # Relative name. ac_sub_cache_file=$ac_top_build_prefix$cache_file ;; esac AC_MSG_NOTICE([running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir]) # The eval makes quoting arguments work. eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \ --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" || AC_MSG_ERROR([$ac_sub_configure failed for $ac_dir]) fi cd "$ac_popdir" donefi])# _AC_OUTPUT_SUBDIRS## -------------------------- #### Outputting config.status. #### -------------------------- ### AU::AC_OUTPUT([CONFIG_FILES...], [EXTRA-CMDS], [INIT-CMDS])# -----------------------------------------------------------## If there are arguments given to AC_OUTPUT, dispatch them to the# proper modern macros.AU_DEFUN([AC_OUTPUT],[m4_ifvaln([$1], [AC_CONFIG_FILES([$1])])dnlm4_ifvaln([$2$3], [AC_CONFIG_COMMANDS(default, [$2], [$3])])dnl[AC_OUTPUT]])# AC_OUTPUT([CONFIG_FILES...], [EXTRA-CMDS], [INIT-CMDS])# -------------------------------------------------------# The big finish.# Produce config.status, config.h, and links; and configure subdirs.#m4_define([AC_OUTPUT],[dnl Dispatch the extra arguments to their native macros.m4_ifvaln([$1], [AC_CONFIG_FILES([$1])])dnlm4_ifvaln([$2$3], [AC_CONFIG_COMMANDS(default, [$2], [$3])])dnlm4_ifval([$1$2$3], [AC_DIAGNOSE([obsolete], [$0 should be used without arguments.You should run autoupdate.])])dnlAC_CACHE_SAVEtest "x$prefix" = xNONE && prefix=$ac_default_prefix# Let make expand exec_prefix.test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [DEFS=-DHAVE_CONFIG_H], [AC_OUTPUT_MAKE_DEFS()])dnl Commands to run before creating config.status.AC_OUTPUT_COMMANDS_PRE()dnl: ${CONFIG_STATUS=./config.status}ac_clean_files_save=$ac_clean_filesac_clean_files="$ac_clean_files $CONFIG_STATUS"_AC_OUTPUT_CONFIG_STATUS()dnlac_clean_files=$ac_clean_files_savednl Commands to run after config.status was createdAC_OUTPUT_COMMANDS_POST()dnl# configure is writing to config.log, and then calls config.status.# config.status does its own redirection, appending to config.log.# Unfortunately, on DOS this fails, as config.log is still kept open# by configure, so config.status won't be able to write to it; its# output is simply discarded. So we exec the FD to /dev/null,# effectively closing config.log, so it can be properly (re)opened and# appended to by config.status. When coming back to configure, we# need to make the FD available again.if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec AS_MESSAGE_LOG_FD>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec AS_MESSAGE_LOG_FD>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || AS_EXIT([1])fidnl config.status should not do recursion.AC_PROVIDE_IFELSE([AC_CONFIG_SUBDIRS], [_AC_OUTPUT_SUBDIRS()])dnl])# AC_OUTPUT# _AC_OUTPUT_CONFIG_STATUS# ------------------------# Produce config.status. Called by AC_OUTPUT.# Pay special attention not to have too long here docs: some old# shells die. Unfortunately the limit is not known precisely...m4_define([_AC_OUTPUT_CONFIG_STATUS],[AC_MSG_NOTICE([creating $CONFIG_STATUS])dnl AS_MESSAGE_LOG_FD is not available yet:m4_rename([AS_MESSAGE_LOG_FD], [_AC_save_AS_MESSAGE_LOG_FD])dnlcat >$CONFIG_STATUS <<_ACEOF#! $SHELL# Generated by $as_me.# Run this file to recreate the current configuration.# Compiler output produced by configure, useful for debugging# configure, is in config.log if it exists.debug=falseac_cs_recheck=falseac_cs_silent=falseSHELL=\${CONFIG_SHELL-$SHELL}_ACEOFcat >>$CONFIG_STATUS <<\_ACEOFAS_SHELL_SANITIZEdnl Watch out, this is directly the initializations, do not usednl AS_PREPARE, otherwise you'd get it output in the initializationdnl of configure, not config.status._AS_PREPAREexec AS_MESSAGE_FD>&1# Save the log message, to keep $[0] and so on meaningful, and to# report actual input values of CONFIG_FILES etc. instead of their
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -