X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/194f742fba53991366e1cc7bf7de38e8d692acad..24a39c0dd5b46ad2de22da1c21758e651a24bd9b:/build/autoconf_prepend-include/autoconf/status.m4?ds=sidebyside diff --git a/build/autoconf_prepend-include/autoconf/status.m4 b/build/autoconf_prepend-include/autoconf/status.m4 index f01959179b..7f39190678 100644 --- a/build/autoconf_prepend-include/autoconf/status.m4 +++ b/build/autoconf_prepend-include/autoconf/status.m4 @@ -1,7 +1,7 @@ # This file is part of Autoconf. -*- Autoconf -*- # Parameterizing and creating config.status. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003 Free Software Foundation, Inc. +# 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -15,8 +15,8 @@ # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -# 02111-1307, USA. +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +# 02110-1301, USA. # As a special exception, the Free Software Foundation gives unlimited # permission to copy, distribute and modify the configure scripts that @@ -69,45 +69,11 @@ # # They are output via an *unquoted* here-doc. As a consequence $var # will be output as the value of VAR. This is typically used by -# `configure' to give `config,.status' some variables it needs to run -# the COMMANDS. At the difference of `COMMANDS', the INIT-CMDS are +# `configure' to give `config.status' some variables it needs to run +# the COMMANDS. At the difference of COMMANDS, the INIT-CMDS are # always run. # # -# Some uniformity exists around here, please respect it! -# -# A macro named AC_CONFIG_FOOS has three args: the `TAG...' (or -# `FILE...' when it applies), the `COMMANDS' and the `INIT-CMDS'. It -# first checks that TAG was not registered elsewhere thanks to -# AC_CONFIG_UNIQUE. Then it registers `TAG...' in AC_LIST_FOOS, and for -# each `TAG', a special line in AC_LIST_FOOS_COMMANDS which is used in -# `config.status' like this: -# -# case $ac_tag in -# AC_LIST_FOOS_COMMANDS -# esac -# -# Finally, the `INIT-CMDS' are dumped into a special diversion, via -# `_AC_CONFIG_COMMANDS_INIT'. While `COMMANDS' are output once per TAG, -# `INIT-CMDS' are dumped only once per call to AC_CONFIG_FOOS. -# -# It also leave the TAG in the shell variable ac_config_foo which contains -# those which will actually be executed. In other words: -# -# if false; then -# AC_CONFIG_FOOS(bar, [touch bar]) -# fi -# -# will not create bar. -# -# AC_CONFIG_FOOS can be called several times (with different TAGs of -# course). -# -# Because these macros should not output anything, there should be `dnl' -# everywhere. A pain my friend, a pain. So instead in each macro we -# divert(-1) and restore the diversion at the end. -# -# # Honorable members of this family are AC_CONFIG_FILES, # AC_CONFIG_HEADERS, AC_CONFIG_LINKS and AC_CONFIG_COMMANDS. Bad boys # are AC_LINK_FILES, AC_OUTPUT_COMMANDS and AC_OUTPUT when used with @@ -120,267 +86,496 @@ ## Auxiliary macros. ## ## ------------------ ## -# _AC_SRCPATHS(BUILD-DIR-NAME) -# ---------------------------- +# _AC_SRCDIRS(BUILD-DIR-NAME) +# --------------------------- # Inputs: # - BUILD-DIR-NAME is `top-build -> build' and `top-src -> src' # - `$srcdir' is `top-build -> top-src' # -# Ouputs: +# Outputs: # - `ac_builddir' is `.', for symmetry only. -# - `ac_top_builddir' is `build -> top_build'. +# - `ac_top_builddir_sub' is `build -> top_build'. +# This is used for @top_builddir@. +# - `ac_top_build_prefix' is `build -> top_build'. # If not empty, has a trailing slash. # - `ac_srcdir' is `build -> src'. # - `ac_top_srcdir' is `build -> top-src'. -# -# and `ac_abs_builddir' etc., the absolute paths. -m4_define([_AC_SRCPATHS], +# and `ac_abs_builddir' etc., the absolute directory names. +m4_define([_AC_SRCDIRS], [ac_builddir=. -if test $1 != .; then +case $1 in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) ac_dir_suffix=/`echo $1 | sed 's,^\.[[\\/]],,'` - # A "../" for each directory in $ac_dir_suffix. - ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[[^\\/]]*,../,g'` -else - ac_dir_suffix= ac_top_builddir= -fi + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`echo "$ac_dir_suffix" | sed 's,/[[^\\/]]*,/..,g;s,/,,'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix case $srcdir in - .) # No --srcdir option. We are building in place. + .) # We are building in place. ac_srcdir=. - if test -z "$ac_top_builddir"; then - ac_top_srcdir=. - else - ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` - fi ;; - [[\\/]]* | ?:[[\\/]]* ) # Absolute path. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [[\\/]]* | ?:[[\\/]]* ) # Absolute name. ac_srcdir=$srcdir$ac_dir_suffix; - ac_top_srcdir=$srcdir ;; - *) # Relative path. - ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix - ac_top_srcdir=$ac_top_builddir$srcdir ;; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix +])# _AC_SRCDIRS -# Do not use `cd foo && pwd` to compute absolute paths, because -# the directories may not exist. -AS_SET_CATFILE([ac_abs_builddir], [`pwd`], [$1]) -AS_SET_CATFILE([ac_abs_top_builddir], - [$ac_abs_builddir], [${ac_top_builddir}.]) -AS_SET_CATFILE([ac_abs_srcdir], [$ac_abs_builddir], [$ac_srcdir]) -AS_SET_CATFILE([ac_abs_top_srcdir], [$ac_abs_builddir], [$ac_top_srcdir]) -])# _AC_SRCPATHS +## ---------------------- ## +## Registering the tags. ## +## ---------------------- ## -## ------------------------------------- ## -## Ensuring the uniqueness of the tags. ## -## ------------------------------------- ## -# AC_CONFIG_IF_MEMBER(DEST, LIST-NAME, ACTION-IF-TRUE, ACTION-IF-FALSE) -# ---------------------------------------------------------------- -# If DEST is member of LIST-NAME, expand to ACTION-IF-TRUE, else -# ACTION-IF-FALSE. -# -# LIST is an AC_CONFIG list, i.e., a list of DEST[:SOURCE], separated -# with spaces. +# _AC_CONFIG_COMMANDS_INIT([INIT-COMMANDS]) +# ----------------------------------------- # -# FIXME: This macro is badly designed, but I'm not guilty: m4 is. There -# is just no way to simply compare two strings in m4, but to use pattern -# matching. The big problem is then that the active characters should -# be quoted. Currently `+*.' are quoted. -m4_define([AC_CONFIG_IF_MEMBER], -[m4_bmatch(m4_defn([$2]), [\(^\| \)]m4_re_escape([$1])[\([: ]\|$\)], - [$3], [$4])]) +# Register INIT-COMMANDS as command pasted *unquoted* in +# `config.status'. This is typically used to pass variables from +# `configure' to `config.status'. Note that $[1] is not over quoted as +# was the case in AC_OUTPUT_COMMANDS. +m4_define([_AC_CONFIG_COMMANDS_INIT], +[m4_ifval([$1], + [m4_append([_AC_OUTPUT_COMMANDS_INIT], + [$1 +])])]) # AC_FILE_DEPENDENCY_TRACE(DEST, SOURCE1, [SOURCE2...]) # ----------------------------------------------------- # This macro does nothing, it's a hook to be read with `autoconf --trace'. +# # It announces DEST depends upon the SOURCE1 etc. m4_define([AC_FILE_DEPENDENCY_TRACE], []) -# _AC_CONFIG_DEPENDENCY(DEST, [SOURCE1], [SOURCE2...]) -# ---------------------------------------------------- +# _AC_FILE_DEPENDENCY_TRACE_COLON(DEST:SOURCE1[:SOURCE2...]) +# ---------------------------------------------------------- +# Declare that DEST depends upon SOURCE1 etc. +# +m4_define([_AC_FILE_DEPENDENCY_TRACE_COLON], +[AC_FILE_DEPENDENCY_TRACE(m4_bpatsubst([$1], [:], [,]))dnl +]) + + +# _AC_CONFIG_DEPENDENCY(MODE, DEST[:SOURCE1...]) +# --------------------------------------------- +# MODE is `FILES', `HEADERS', or `LINKS'. +# # Be sure that a missing dependency is expressed as a dependency upon -# `DEST.in'. +# `DEST.in' (except with config links). +# m4_define([_AC_CONFIG_DEPENDENCY], -[m4_ifval([$2], - [AC_FILE_DEPENDENCY_TRACE($@)], - [AC_FILE_DEPENDENCY_TRACE([$1], [$1.in])])]) +[_AC_FILE_DEPENDENCY_TRACE_COLON([$2]_AC_CONFIG_DEPENDENCY_DEFAULT($@))dnl +]) -# _AC_CONFIG_DEPENDENCIES(DEST[:SOURCE1[:SOURCE2...]]...) -# ------------------------------------------------------- -# Declare the DESTs depend upon their SOURCE1 etc. -m4_define([_AC_CONFIG_DEPENDENCIES], -[AC_FOREACH([AC_File], [$1], - [_AC_CONFIG_DEPENDENCY(m4_bpatsubst(AC_File, [:], [,]))])dnl +# _AC_CONFIG_DEPENDENCY_DEFAULT(MODE, DEST[:SOURCE1...]) +# ------------------------------------------------------ +# Expand to `:DEST.in' if appropriate, or to empty string otherwise. +# +# More detailed edscription: +# If the tag contains `:', expand to nothing. +# Otherwise, for a config file or header, add `:DEST.in'. +# For config link, DEST.in is not appropriate: +# - if the tag is literal, complain. +# - otherwise, just expand to nothing and proceed with fingers crossed. +# (We get to this case from the obsolete AC_LINK_FILES, for example.) +# +m4_define([_AC_CONFIG_DEPENDENCY_DEFAULT], +[m4_bmatch([$2], [:], [], + [m4_if([$1], [LINKS], + [AS_LITERAL_IF([$2], [AC_FATAL([Invalid AC_CONFIG_LINKS tag: `$2'])])], + [:$2.in])])dnl ]) -# _AC_CONFIG_UNIQUE(DEST[:SOURCE]...) -# ----------------------------------- +# _AC_CONFIG_UNIQUE(MODE, DEST) +# ----------------------------- +# MODE is `FILES', `HEADERS', `LINKS', `COMMANDS', or `SUBDIRS'. # -# Verify that there is no double definition of an output file -# (precisely, guarantees there is no common elements between -# CONFIG_HEADERS, CONFIG_FILES, CONFIG_LINKS, and CONFIG_SUBDIRS). +# Verify that there is no double definition of an output file. # -# Note that this macro does not check if the list $[1] itself -# contains doubles. m4_define([_AC_CONFIG_UNIQUE], -[AC_FOREACH([AC_File], [$1], -[m4_pushdef([AC_Dest], m4_bpatsubst(AC_File, [:.*]))dnl - AC_CONFIG_IF_MEMBER(AC_Dest, [AC_LIST_HEADERS], - [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_HEADERS.])])dnl - AC_CONFIG_IF_MEMBER(AC_Dest, [AC_LIST_LINKS], - [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_LINKS.])])dnl - AC_CONFIG_IF_MEMBER(AC_Dest, [_AC_LIST_SUBDIRS], - [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_SUBDIRS.])])dnl - AC_CONFIG_IF_MEMBER(AC_Dest, [AC_LIST_COMMANDS], - [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_COMMANDS.])])dnl - AC_CONFIG_IF_MEMBER(AC_Dest, [AC_LIST_FILES], - [AC_FATAL(`AC_Dest' [is already registered with AC_CONFIG_FILES.])])dnl -m4_popdef([AC_Dest])])dnl +[m4_ifdef([_AC_SEEN_TAG($2)], + [AC_FATAL([`$2' is already registered with AC_CONFIG_]m4_defn([_AC_SEEN_TAG($2)]).)], + [m4_define([_AC_SEEN_TAG($2)], [$1])])dnl ]) - -## ------------------------ ## -## Configuration commands. ## -## ------------------------ ## +# _AC_CONFIG_FOOS(MODE, TAGS..., [COMMANDS], [INIT-CMDS]) +# ------------------------------------------------------- +# MODE is `FILES', `HEADERS', `LINKS', or `COMMANDS'. +# +# Associate the COMMANDS to each TAG, i.e., when config.status creates TAG, +# run COMMANDS afterwards. (This is done in _AC_CONFIG_REGISTER_DEST.) +# +# For COMMANDS, do not m4_normalize TAGS before adding it to ac_config_commands. +# This historical difference allows macro calls in TAGS. +# +m4_define([_AC_CONFIG_FOOS], +[m4_foreach_w([AC_File], [$2], + [_AC_CONFIG_REGISTER([$1], m4_defn([AC_File]), [$3])])dnl +m4_define([_AC_SEEN_CONFIG(ANY)])dnl +m4_define([_AC_SEEN_CONFIG($1)])dnl +_AC_CONFIG_COMMANDS_INIT([$4])dnl +ac_config_[]m4_tolower([$1])="$ac_config_[]m4_tolower([$1]) dnl +m4_if([$1], [COMMANDS], [$2], [m4_normalize([$2])])" +]) -# _AC_CONFIG_COMMANDS_INIT([INIT-COMMANDS]) -# ----------------------------------------- +# _AC_CONFIG_REGISTER(MODE, TAG, [COMMANDS]) +# ------------------------------------------ +# MODE is `FILES', `HEADERS', `LINKS', or `COMMANDS'. # -# Register INIT-COMMANDS as command pasted *unquoted* in -# `config.status'. This is typically used to pass variables from -# `configure' to `config.status'. Note that $[1] is not over quoted as -# was the case in AC_OUTPUT_COMMANDS. -m4_define([_AC_CONFIG_COMMANDS_INIT], -[m4_ifval([$1], - [m4_append([_AC_OUTPUT_COMMANDS_INIT], - [$1 -])])]) +m4_define([_AC_CONFIG_REGISTER], +[m4_if([$1], [COMMANDS], + [], + [_AC_CONFIG_DEPENDENCY([$1], [$2])])dnl +_AC_CONFIG_REGISTER_DEST([$1], [$2], m4_bpatsubst([[$2]], [:.*\(.\)$], [\1]), [$3])dnl +]) -# Initialize. -m4_define([_AC_OUTPUT_COMMANDS_INIT]) - - -# _AC_CONFIG_COMMAND(NAME, [COMMANDS]) -# ------------------------------------ -# See below. -m4_define([_AC_CONFIG_COMMAND], -[_AC_CONFIG_UNIQUE([$1])dnl -m4_append([AC_LIST_COMMANDS], [ $1])dnl -m4_ifval([$2], -[m4_append([AC_LIST_COMMANDS_COMMANDS], -[ ]m4_bpatsubst([$1], [:.*])[ ) $2 ;; + +# _AC_CONFIG_REGISTER_DEST(MODE, TAG, DEST, [COMMANDS]) +# ----------------------------------------------------- +# MODE is `FILES', `HEADERS', `LINKS', or `COMMANDS'. +# TAG is in the form DEST[:SOURCE...]. +# Thus parameter $3 is the first part of $2. +# +# With CONFIG_LINKS, reject DEST=., because it is makes it hard for ./config.status +# to guess the links to establish (`./config.status .'). +# +# Save the name of the first config header to AH_HEADER. +# +m4_define([_AC_CONFIG_REGISTER_DEST], +[_AC_CONFIG_UNIQUE([$1], [$3])dnl +m4_if([$1 $3], [LINKS .], + [AC_FATAL([invalid destination of a config link: `.'])])dnl +m4_if([$1], [HEADERS], + [m4_define_default([AH_HEADER], [$3])])dnl +dnl +dnl Recognize TAG as an argument to config.status: +dnl +m4_append([_AC_LIST_TAGS], +[ "$3") CONFIG_$1="$CONFIG_$1 $2" ;; +])dnl +dnl +dnl Register the associated commands, if any: +dnl +m4_ifval([$4], +[m4_append([_AC_LIST_TAG_COMMANDS], +[ "$3":]m4_bpatsubst([$1], [^\(.\).*$], [\1])[) $4 ;; ])])dnl -]) +])# _AC_CONFIG_REGISTER_DEST -# AC_CONFIG_COMMANDS(NAME...,[COMMANDS], [INIT-CMDS]) -# --------------------------------------------------- + + + +## --------------------- ## +## Configuration files. ## +## --------------------- ## + + +# AC_CONFIG_FILES(FILE..., [COMMANDS], [INIT-CMDS]) +# ------------------------------------------------- +# Specify output files, i.e., files that are configured with AC_SUBST. # -# 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_FOREACH([AC_Name], [$1], [_AC_CONFIG_COMMAND(m4_defn([AC_Name]), [$2])])dnl -_AC_CONFIG_COMMANDS_INIT([$3])dnl -ac_config_commands="$ac_config_commands $1" -]) +AC_DEFUN([AC_CONFIG_FILES], [_AC_CONFIG_FOOS([FILES], $@)]) -# Initialize the lists. -m4_define([AC_LIST_COMMANDS]) -m4_define([AC_LIST_COMMANDS_COMMANDS]) +# _AC_SED_CMD_LIMIT +# ----------------- +# Evaluate to an m4 number equal to the maximum number of commands to put +# in any single sed program, not counting ":" commands. +# +# Some seds have small command number limits, like on Digital OSF/1 and HP-UX. +m4_define([_AC_SED_CMD_LIMIT], +dnl One cannot portably go further than 99 commands because of HP-UX. +[99]) -# AC_OUTPUT_COMMANDS(EXTRA-CMDS, INIT-CMDS) -# ----------------------------------------- + +# _AC_OUTPUT_FILES_PREPARE +# ------------------------ +# Create the sed scripts needed for CONFIG_FILES. +# Support multiline substitutions and make sure that the substitutions are +# not evaluated recursively. +# The intention is to have readable config.status and configure, even +# though this m4 code might be scaring. # -# Add additional commands for AC_OUTPUT to put into config.status. +# This code was written by Dan Manthey. # -# 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. +# This macro is expanded inside a here document. If the here document is +# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF". # -# 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([_AC_OUTPUT_COMMANDS_CNT], m4_incr(_AC_OUTPUT_COMMANDS_CNT))dnl -dnl Double quoted since that was the case in the original macro. -AC_CONFIG_COMMANDS([default-]_AC_OUTPUT_COMMANDS_CNT, [[$1]], [[$2]])dnl -]) +m4_define([_AC_OUTPUT_FILES_PREPARE], +[# +# Set up the sed scripts for CONFIG_FILES section. +# +dnl ... and define _AC_SED_CMDS, the pipeline which executes them. +m4_define([_AC_SED_CMDS], [])dnl -# Initialize. -AU_DEFUN([_AC_OUTPUT_COMMANDS_CNT], 0) +# No need to generate the scripts if there are no CONFIG_FILES. +# This happens for instance when ./config.status config.h +if test -n "$CONFIG_FILES"; then +_ACEOF -# 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 -])]) +m4_pushdef([_AC_SED_FRAG_NUM], 0)dnl Fragment number. +m4_pushdef([_AC_SED_CMD_NUM], 2)dnl Num of commands in current frag so far. +m4_pushdef([_AC_SED_DELIM_NUM], 0)dnl Expected number of delimiters in file. +m4_pushdef([_AC_SED_FRAG], [])dnl The constant part of the current fragment. +dnl +m4_ifdef([_AC_SUBST_FILES], +[# Create sed commands to just substitute file output variables. + +m4_foreach_w([_AC_Var], m4_defn([_AC_SUBST_FILES]), +[dnl End fragments at beginning of loop so that last fragment is not ended. +m4_if(m4_eval(_AC_SED_CMD_NUM + 3 > _AC_SED_CMD_LIMIT), 1, +[dnl Fragment is full and not the last one, so no need for the final un-escape. +dnl Increment fragment number. +m4_define([_AC_SED_FRAG_NUM], m4_incr(_AC_SED_FRAG_NUM))dnl +dnl Record that this fragment will need to be used. +m4_define([_AC_SED_CMDS], + m4_defn([_AC_SED_CMDS])[| sed -f "$tmp/subs-]_AC_SED_FRAG_NUM[.sed" ])dnl +[cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-]_AC_SED_FRAG_NUM[.sed" <<\CEOF +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +]m4_defn([_AC_SED_FRAG])dnl +[CEOF +_ACEOF +]m4_define([_AC_SED_CMD_NUM], 2)m4_define([_AC_SED_FRAG])dnl +])dnl Last fragment ended. +m4_define([_AC_SED_CMD_NUM], m4_eval(_AC_SED_CMD_NUM + 3))dnl +m4_define([_AC_SED_FRAG], +m4_defn([_AC_SED_FRAG])dnl +[/^[ ]*@]_AC_Var[@[ ]*$/{ +r $]_AC_Var[ +d +} +])dnl +])dnl +# Remaining file output variables are in a fragment that also has non-file +# output varibles. -# 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() ]) +dnl +m4_define([_AC_SED_FRAG], [ +]m4_defn([_AC_SED_FRAG]))dnl +m4_foreach_w([_AC_Var], +m4_ifdef([_AC_SUBST_VARS], [m4_defn([_AC_SUBST_VARS]) ])[@END@], +[m4_if(_AC_SED_DELIM_NUM, 0, +[m4_if(_AC_Var, [@END@], +[dnl The whole of the last fragment would be the final deletion of `|#_!!_#|'. +m4_define([_AC_SED_CMDS], m4_defn([_AC_SED_CMDS])[| sed 's/|#_!!_#|//g' ])], +[ +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + cat >conf$$subs.sed <<_ACEOF +])])dnl +m4_if(_AC_Var, [@END@], + [m4_if(m4_eval(_AC_SED_CMD_NUM + 2 <= _AC_SED_CMD_LIMIT), 1, + [m4_define([_AC_SED_FRAG], [ end]m4_defn([_AC_SED_FRAG]))])], +[m4_define([_AC_SED_CMD_NUM], m4_incr(_AC_SED_CMD_NUM))dnl +m4_define([_AC_SED_DELIM_NUM], m4_incr(_AC_SED_DELIM_NUM))dnl +_AC_Var!$_AC_Var$ac_delim +])dnl +m4_if(_AC_SED_CMD_LIMIT, + m4_if(_AC_Var, [@END@], m4_if(_AC_SED_CMD_NUM, 2, 2, _AC_SED_CMD_LIMIT), _AC_SED_CMD_NUM), +[_ACEOF + +dnl Do not use grep on conf$$subs.sed, since AIX grep has a line length limit. + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = _AC_SED_DELIM_NUM; then + break + elif $ac_last_try; then + AC_MSG_ERROR([could not make $CONFIG_STATUS]) + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +dnl Similarly, avoid grep here too. +ac_eof=`sed -n '/^CEOF[[0-9]]*$/s/CEOF/0/p' conf$$subs.sed` +if test -n "$ac_eof"; then + ac_eof=`echo "$ac_eof" | sort -nru | sed 1q` + ac_eof=`expr $ac_eof + 1` +fi -# 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 -])]) +dnl Increment fragment number. +m4_define([_AC_SED_FRAG_NUM], m4_incr(_AC_SED_FRAG_NUM))dnl +dnl Record that this fragment will need to be used. +m4_define([_AC_SED_CMDS], +m4_defn([_AC_SED_CMDS])[| sed -f "$tmp/subs-]_AC_SED_FRAG_NUM[.sed" ])dnl +[cat >>$CONFIG_STATUS <<_ACEOF +cat >"\$tmp/subs-]_AC_SED_FRAG_NUM[.sed" <<\CEOF$ac_eof +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b]m4_defn([_AC_SED_FRAG])dnl +[_ACEOF +sed ' +s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g +s/^/s,@/; s/!/@,|#_!!_#|/ +:n +t n +s/'"$ac_delim"'$/,g/; t +s/$/\\/; p +N; s/^.*\n//; s/[,\\&]/\\&/g; s/@/@|#_!!_#|/g; b n +' >>$CONFIG_STATUS >$CONFIG_STATUS <<_ACEOF +]m4_if(_AC_Var, [@END@], +[m4_if(m4_eval(_AC_SED_CMD_NUM + 2 > _AC_SED_CMD_LIMIT), 1, +[m4_define([_AC_SED_CMDS], m4_defn([_AC_SED_CMDS])[| sed 's/|#_!!_#|//g' ])], +[[:end +s/|#_!!_#|//g +]])])dnl +CEOF$ac_eof +_ACEOF +m4_define([_AC_SED_FRAG], [ +])m4_define([_AC_SED_DELIM_NUM], 0)m4_define([_AC_SED_CMD_NUM], 2)dnl -# Initialize. -m4_define([AC_OUTPUT_COMMANDS_POST]) +])])dnl +dnl +m4_popdef([_AC_SED_FRAG_NUM])dnl +m4_popdef([_AC_SED_CMD_NUM])dnl +m4_popdef([_AC_SED_DELIM_NUM])dnl +m4_popdef([_AC_SED_FRAG])dnl +# VPATH may cause trouble with some makes, so we remove $(srcdir), +# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub=['/^[ ]*VPATH[ ]*=/{ +s/:*\$(srcdir):*/:/ +s/:*\${srcdir}:*/:/ +s/:*@srcdir@:*/:/ +s/^\([^=]*=[ ]*\):*/\1/ +s/:*$// +s/^[^=]*=[ ]*$// +}'] +fi +cat >>$CONFIG_STATUS <<\_ACEOF +fi # test -n "$CONFIG_FILES" -# _AC_OUTPUT_COMMANDS -# ------------------- -# This is a subroutine of AC_OUTPUT, in charge of issuing the code -# related to AC_CONFIG_COMMANDS. -# -# It has to send itself into $CONFIG_STATUS (eg, via here documents). -# Upon exit, no here document shall be opened. -m4_define([_AC_OUTPUT_COMMANDS], -[cat >>$CONFIG_STATUS <<\_ACEOF +])# _AC_OUTPUT_FILES_PREPARE + +# _AC_OUTPUT_FILE +# --------------- +# Do the variable substitutions to create the Makefiles or whatever. # -# CONFIG_COMMANDS section. +# This macro is expanded inside a here document. If the here document is +# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF". # -for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[[^:]]*:,,'` - ac_dir=`AS_DIRNAME(["$ac_dest"])` - AS_MKDIR_P(["$ac_dir"]) - _AC_SRCPATHS(["$ac_dir"]) +m4_define([_AC_OUTPUT_FILE], +[ + # + # CONFIG_FILE + # - AC_MSG_NOTICE([executing $ac_dest commands]) -dnl Some shells don't like empty case/esac -m4_ifset([AC_LIST_COMMANDS_COMMANDS], -[ case $ac_dest in -AC_LIST_COMMANDS_COMMANDS()dnl +AC_PROVIDE_IFELSE([AC_PROG_INSTALL], +[ case $INSTALL in + [[\\/$]]* | ?:[[\\/]]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; esac ])dnl -done +AC_PROVIDE_IFELSE([AC_PROG_MKDIR_P], +[ ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [[\\/$]]* | ?:[[\\/]]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +])dnl +_ACEOF + +m4_ifndef([AC_DATAROOTDIR_CHECKED], +[cat >>$CONFIG_STATUS <<\_ACEOF +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +m4_define([_AC_datarootdir_vars], + [datadir, docdir, infodir, localedir, mandir]) +case `sed -n '/datarootdir/ { + p + q +} +m4_foreach([_AC_Var], m4_defn([_AC_datarootdir_vars]), + [/@_AC_Var@/p +])' $ac_file_inputs` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@[]m4_join([@*|*@], _AC_datarootdir_vars)@*) + AC_MSG_WARN([$ac_file_inputs seems to ignore the --datarootdir setting]) +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF + ac_datarootdir_hack=' + m4_foreach([_AC_Var], m4_defn([_AC_datarootdir_vars]), + [s&@_AC_Var@&$_AC_Var&g + ])dnl + s&\\\${datarootdir}&$datarootdir&g' ;; +esac _ACEOF -])# _AC_OUTPUT_COMMANDS +])dnl + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF + sed "$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +:t +[/@[a-zA-Z_][a-zA-Z_0-9]*@/!b] +dnl configure_input is a somewhat special, so we don't call AC_SUBST_TRACE. +s&@configure_input@&$configure_input&;t t +dnl During the transition period, this is a special case: +s&@top_builddir@&$ac_top_builddir_sub&;t t[]AC_SUBST_TRACE([top_builddir]) +m4_foreach([_AC_Var], [srcdir, abs_srcdir, top_srcdir, abs_top_srcdir, + builddir, abs_builddir, + abs_top_builddir]AC_PROVIDE_IFELSE([AC_PROG_INSTALL], [[, INSTALL]])AC_PROVIDE_IFELSE([AC_PROG_MKDIR_P], [[, MKDIR_P]]), + [s&@_AC_Var@&$ac_[]_AC_Var&;t t[]AC_SUBST_TRACE(_AC_Var) +])dnl +m4_ifndef([AC_DATAROOTDIR_CHECKED], [$ac_datarootdir_hack +])dnl +" $ac_file_inputs m4_defn([_AC_SED_CMDS])>$tmp/out + +m4_ifndef([AC_DATAROOTDIR_CHECKED], +[test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[[ ]]*datarootdir[[ ]]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + AC_MSG_WARN([$ac_file contains a reference to the variable `datarootdir' +which seems to be undefined. Please make sure it is defined.]) +])dnl + + rm -f "$tmp/stdin" + case $ac_file in + -) cat "$tmp/out"; rm -f "$tmp/out";; + *) rm -f "$ac_file"; mv "$tmp/out" $ac_file;; + esac +dnl This would break Makefile dependencies: +dnl if diff $ac_file "$tmp/out" >/dev/null 2>&1; then +dnl echo "$ac_file is unchanged" +dnl else +dnl rm -f $ac_file; mv "$tmp/out" $ac_file +dnl fi +])# _AC_OUTPUT_FILE @@ -390,44 +585,12 @@ _ACEOF ## ----------------------- ## -# _AC_CONFIG_HEADER(HEADER, [COMMANDS]) -# ------------------------------------- -# See below. -m4_define([_AC_CONFIG_HEADER], -[_AC_CONFIG_UNIQUE([$1])dnl -m4_append([AC_LIST_HEADERS], [ $1])dnl -_AC_CONFIG_DEPENDENCIES([$1])dnl -dnl Register the commands -m4_ifval([$2], -[m4_append([AC_LIST_HEADERS_COMMANDS], -[ ]m4_bpatsubst([$1], [:.*])[ ) $2 ;; -])])dnl -]) - - # AC_CONFIG_HEADERS(HEADERS..., [COMMANDS], [INIT-CMDS]) # ------------------------------------------------------ # Specify that the HEADERS are to be created by instantiation of the -# AC_DEFINEs. Associate the COMMANDS to the HEADERS. This macro -# accumulates if called several times. +# AC_DEFINEs. # -# The commands are stored in a growing string AC_LIST_HEADERS_COMMANDS -# which should be used like this: -# -# case $ac_file in -# AC_LIST_HEADERS_COMMANDS -# esac -AC_DEFUN([AC_CONFIG_HEADERS], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_HEADER(m4_defn([AC_File]), [$2])])dnl -_AC_CONFIG_COMMANDS_INIT([$3])dnl -ac_config_headers="$ac_config_headers m4_normalize([$1])" -]) - -# Initialize to empty. It is much easier and uniform to have a config -# list expand to empty when undefined, instead of special casing when -# not defined (since in this case, AC_CONFIG_FOO expands to AC_CONFIG_FOO). -m4_define([AC_LIST_HEADERS]) -m4_define([AC_LIST_HEADERS_COMMANDS]) +AC_DEFUN([AC_CONFIG_HEADERS], [_AC_CONFIG_FOOS([HEADERS], $@)]) # AC_CONFIG_HEADER(HEADER-TO-CREATE ...) @@ -437,248 +600,141 @@ AC_DEFUN([AC_CONFIG_HEADER], [AC_CONFIG_HEADERS([$1])]) -# _AC_OUTPUT_HEADERS -# ------------------ +# _AC_OUTPUT_HEADER +# ----------------- # # Output the code which instantiates the `config.h' files from their # `config.h.in'. # -# This is a subroutine of _AC_OUTPUT_CONFIG_STATUS. It has to send -# itself into $CONFIG_STATUS (eg, via here documents). Upon exit, no -# here document shall be opened. -# +# This macro is expanded inside a here document. If the here document is +# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF". # -# The code produced used to be extremely costly: there are was a -# single sed script (n lines) handling both `#define' templates, -# `#undef' templates with trailing space, and `#undef' templates -# without trailing spaces. The full script was run on each of the m -# lines of `config.h.in', i.e., about n x m. -# -# Now there are two scripts: `conftest.defines' for the `#define' -# templates, and `conftest.undef' for the `#undef' templates. -# -# Optimization 1. It is incredibly costly to run two `#undef' -# scripts, so just remove trailing spaces first. Removes about a -# third of the cost. -# -# Optimization 2. Since `#define' are rare and obsoleted, -# `conftest.defines' is built and run only if grep says there are -# `#define'. Improves by at least a factor 2, since in addition we -# avoid the cost of *producing* the sed script. -# -# Optimization 3. In each script, first check that the current input -# line is a template. This avoids running the full sed script on -# empty lines and comments (divides the cost by about 3 since each -# template chunk is typically a comment, a template, an empty line). -# -# Optimization 4. Once a substitution performed, since there can be -# only one per line, immediately restart the script on the next input -# line (using the `t' sed instruction). Divides by about 2. -# *Note:* In the case of the AC_SUBST sed script (_AC_OUTPUT_FILES) -# this optimization cannot be applied as is, because there can be -# several substitutions per line. -# -# -# The result is about, hm, ... times blah... plus.... Ahem. The -# result is about much faster. -m4_define([_AC_OUTPUT_HEADERS], -[cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_HEADER section. -# - -# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where -# NAME is the cpp macro being defined and VALUE is the value it is being given. -# -# ac_d sets the value in "#define NAME VALUE" lines. -dnl Double quote for the `[ ]' and `define'. -[ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' -ac_dB='[ ].*$,\1#\2' -ac_dC=' ' -ac_dD=',;t' -# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". -ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' -ac_uB='$,\1#\2define\3' -ac_uC=' ' -ac_uD=',;t'] - -for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[[^:]]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[[^:]]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac - - test x"$ac_file" != x- && AC_MSG_NOTICE([creating $ac_file]) - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [[\\/$]]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || AC_MSG_ERROR([cannot find input file: $f]) - # Do quote $f, to prevent DOS paths from being IFS'd. - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - AC_MSG_ERROR([cannot find input file: $f]) - fi;; - esac - done` || AS_EXIT([1]) - # Remove the trailing spaces. - sed 's/[[ ]]*$//' $ac_file_inputs >$tmp/in - +m4_define([_AC_OUTPUT_HEADER], +[ + # + # CONFIG_HEADER + # _ACEOF -# Transform confdefs.h into two sed scripts, `conftest.defines' and -# `conftest.undefs', that substitutes the proper values into -# config.h.in to produce config.h. The first handles `#define' -# templates, and the second `#undef' templates. -# And first: Protect against being on the right side of a sed subst in -# config.status. Protect against being in an unquoted here document -# in config.status. -rm -f conftest.defines conftest.undefs -# Using a here document instead of a string reduces the quoting nightmare. -# Putting comments in sed scripts is not portable. -# -# `end' is used to avoid that the second main sed command (meant for -# 0-ary CPP macros) applies to n-ary macro definitions. -# See the Autoconf documentation for `clear'. -cat >confdef2sed.sed <<\_ACEOF -dnl Double quote for `[ ]' and `define'. -[s/[\\&,]/\\&/g -s,[\\$`],\\&,g -t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp -t end -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp -: end] -_ACEOF -# If some macros were called several times there might be several times -# the same #defines, which is useless. Nevertheless, we may not want to -# sort them, since we want the *last* AC-DEFINE to be honored. -uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines -sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs -rm -f confdef2sed.sed - -# This sed command replaces #undef with comments. This is necessary, for +# Transform confdefs.h into a sed script `conftest.defines', that +# substitutes the proper values into config.h.in to produce config.h. +rm -f conftest.defines conftest.tail +# First, append a space to every undef/define line, to ease matching. +echo 's/$/ /' >conftest.defines +# Then, protect against being on the right side of a sed subst, or in +# an unquoted here document, in config.status. If some macros were +# called several times there might be several #defines for the same +# symbol, which is useless. But do not sort them, since the last +# AC_DEFINE must be honored. +dnl +dnl Quote, for `[ ]' and `define'. +[ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +# These sed commands are passed to sed as "A NAME B PARAMS C VALUE D", where +# NAME is the cpp macro being defined, VALUE is the value it is being given. +# PARAMS is the parameter list in the macro definition--in most cases, it's +# just an empty string. +ac_dA='s,^\\([ #]*\\)[^ ]*\\([ ]*' +ac_dB='\\)[ (].*,\\1define\\2' +ac_dC=' ' +ac_dD=' ,'] +dnl ac_dD used to contain `;t' at the end, but that was both slow and incorrect. +dnl 1) Since the script must be broken into chunks containing 100 commands, +dnl the extra command meant extra calls to sed. +dnl 2) The code was incorrect: in the unusual case where a symbol has multiple +dnl different AC_DEFINEs, the last one should be honored. +dnl +dnl ac_dB works because every line has a space appended. ac_dD reinserts +dnl the space, because some symbol may have been AC_DEFINEd several times. +dnl +dnl The first use of ac_dA has a space prepended, so that the second +dnl use does not match the initial 's' of $ac_dA. +[ +uniq confdefs.h | + sed -n ' + t rset + :rset + s/^[ ]*#[ ]*define[ ][ ]*// + t ok + d + :ok + s/[\\&,]/\\&/g + s/^\('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/ '"$ac_dA"'\1'"$ac_dB"'\2'"${ac_dC}"'\3'"$ac_dD"'/p + s/^\('"$ac_word_re"'\)[ ]*\(.*\)/'"$ac_dA"'\1'"$ac_dB$ac_dC"'\2'"$ac_dD"'/p + ' >>conftest.defines +] +# Remove the space that was appended to ease matching. +# Then replace #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. -cat >>conftest.undefs <<\_ACEOF -[s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,] -_ACEOF - -# Break up conftest.defines because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS -echo ' if grep ["^[ ]*#[ ]*define"] $tmp/in >/dev/null; then' >>$CONFIG_STATUS -echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS -echo ' :' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.defines >/dev/null +# (The regexp can be short, since the line contains either #define or #undef.) +echo 's/ $// +[s,^[ #]*u.*,/* & */,]' >>conftest.defines + +# Break up conftest.defines: +dnl If we cared only about not exceeding line count limits, we would use this: +dnl ac_max_sed_lines=m4_eval(_AC_SED_CMD_LIMIT - 3) +dnl But in practice this can generate scripts that contain too many bytes; +dnl and this can cause obscure 'sed' failures, e.g., +dnl http://lists.gnu.org/archive/html/bug-coreutils/2006-05/msg00127.html +dnl So instead, we use the following, which is about half the size we'd like: +ac_max_sed_lines=50 +dnl In the future, let's use awk or sh instead of sed to do substitutions, +dnl since we have so many problems with sed. + +# First sed command is: sed -f defines.sed $ac_file_inputs >"$tmp/out1" +# Second one is: sed -f defines.sed "$tmp/out1" >"$tmp/out2" +# Third one will be: sed -f defines.sed "$tmp/out2" >"$tmp/out1" +# et cetera. +ac_in='$ac_file_inputs' +ac_out='"$tmp/out1"' +ac_nxt='"$tmp/out2"' + +while : do - # Write a limited-size here document to $tmp/defines.sed. - echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#define' lines. - echo ['/^[ ]*#[ ]*define/!b'] >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS + # Write a here document: + dnl Quote, for the `[ ]' and `define'. +[ cat >>$CONFIG_STATUS <<_ACEOF + # First, check the format of the line: + cat >"\$tmp/defines.sed" <<\\CEOF +/^[ ]*#[ ]*undef[ ][ ]*$ac_word_re[ ]*\$/b def +/^[ ]*#[ ]*define[ ][ ]*$ac_word_re[( ]/b def +b +:def +_ACEOF] + sed ${ac_max_sed_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF - sed -f $tmp/defines.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail + sed -f "$tmp/defines.sed"' "$ac_in >$ac_out" >>$CONFIG_STATUS + ac_in=$ac_out; ac_out=$ac_nxt; ac_nxt=$ac_in + sed 1,${ac_max_sed_lines}d conftest.defines >conftest.tail + grep . conftest.tail >/dev/null || break rm -f conftest.defines mv conftest.tail conftest.defines done -rm -f conftest.defines -echo ' fi # grep' >>$CONFIG_STATUS -echo >>$CONFIG_STATUS - -# Break up conftest.undefs because some shells have a limit on the size -# of here documents, and old seds have small limits too (100 cmds). -echo ' # Handle all the #undef templates' >>$CONFIG_STATUS -rm -f conftest.tail -while grep . conftest.undefs >/dev/null -do - # Write a limited-size here document to $tmp/undefs.sed. - echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS - # Speed up: don't consider the non `#undef' - echo ['/^[ ]*#[ ]*undef/!b'] >>$CONFIG_STATUS - # Work around the forget-to-reset-the-flag bug. - echo 't clr' >>$CONFIG_STATUS - echo ': clr' >>$CONFIG_STATUS - sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS - echo 'CEOF - sed -f $tmp/undefs.sed $tmp/in >$tmp/out - rm -f $tmp/in - mv $tmp/out $tmp/in -' >>$CONFIG_STATUS - sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail - rm -f conftest.undefs - mv conftest.tail conftest.undefs -done -rm -f conftest.undefs +rm -f conftest.defines conftest.tail dnl Now back to your regularly scheduled config.status. +echo "ac_result=$ac_in" >>$CONFIG_STATUS cat >>$CONFIG_STATUS <<\_ACEOF - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - echo "/* Generated by configure. */" >$tmp/config.h - else - echo "/* $ac_file. Generated by configure. */" >$tmp/config.h - fi - cat $tmp/in >>$tmp/config.h - rm -f $tmp/in if test x"$ac_file" != x-; then - if diff $ac_file $tmp/config.h >/dev/null 2>&1; then + echo "/* $configure_input */" >"$tmp/config.h" + cat "$ac_result" >>"$tmp/config.h" + if diff $ac_file "$tmp/config.h" >/dev/null 2>&1; then AC_MSG_NOTICE([$ac_file is unchanged]) else - ac_dir=`AS_DIRNAME(["$ac_file"])` - AS_MKDIR_P(["$ac_dir"]) rm -f $ac_file - mv $tmp/config.h $ac_file + mv "$tmp/config.h" $ac_file fi else - cat $tmp/config.h - rm -f $tmp/config.h + echo "/* $configure_input */" + cat "$ac_result" fi + rm -f "$tmp/out[12]" dnl If running for Automake, be ready to perform additional dnl commands to set up the timestamp files. m4_ifdef([_AC_AM_CONFIG_HEADER_HOOK], [_AC_AM_CONFIG_HEADER_HOOK([$ac_file]) ])dnl -m4_ifset([AC_LIST_HEADERS_COMMANDS], -[ # Run the commands associated with the file. - case $ac_file in -AC_LIST_HEADERS_COMMANDS()dnl - esac -])dnl -done -_ACEOF -])# _AC_OUTPUT_HEADERS +])# _AC_OUTPUT_HEADER @@ -687,37 +743,14 @@ _ACEOF ## --------------------- ## -# _AC_CONFIG_LINK(DEST:SOURCE, [COMMANDS]) -# ---------------------------------------- -# See below. -m4_define([_AC_CONFIG_LINK], -[_AC_CONFIG_UNIQUE([$1])dnl -m4_append([AC_LIST_LINKS], [ $1])dnl -_AC_CONFIG_DEPENDENCIES([$1])dnl -m4_bmatch([$1], [^\.:\| \.:], [m4_fatal([$0: invalid destination: `.'])])dnl -dnl Register the commands -m4_ifval([$2], -[m4_append([AC_LIST_LINKS_COMMANDS], -[ ]m4_bpatsubst([$1], [:.*])[ ) $2 ;; -])])dnl -]) - # AC_CONFIG_LINKS(DEST:SOURCE..., [COMMANDS], [INIT-CMDS]) # -------------------------------------------------------- # Specify that config.status should establish a (symbolic if possible) # link from TOP_SRCDIR/SOURCE to TOP_SRCDIR/DEST. # Reject DEST=., because it is makes it hard for ./config.status # to guess the links to establish (`./config.status .'). -AC_DEFUN([AC_CONFIG_LINKS], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_LINK(m4_defn([AC_File]), [$2])])dnl -_AC_CONFIG_COMMANDS_INIT([$3])dnl -ac_config_links="$ac_config_links m4_normalize([$1])" -]) - - -# Initialize the list. -m4_define([AC_LIST_LINKS]) -m4_define([AC_LIST_LINKS_COMMANDS]) +# +AC_DEFUN([AC_CONFIG_LINKS], [_AC_CONFIG_FOOS([LINKS], $@)]) # AC_LINK_FILES(SOURCE..., DEST...) @@ -733,10 +766,11 @@ m4_define([AC_LIST_LINKS_COMMANDS]) # interest in creating config links with literal values, no special # mechanism is implemented to handle them. # -# _AC_LINK_CNT is used to be robust to multiple calls. +# _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])])dnl +m4_define_default([_AC_LINK_FILES_CNT], 0)dnl m4_define([_AC_LINK_FILES_CNT], m4_incr(_AC_LINK_FILES_CNT))dnl ac_sources="$1" ac_dests="$2" @@ -747,305 +781,120 @@ while test -n "$ac_sources"; do done AC_CONFIG_LINKS($[ac_config_links_]_AC_LINK_FILES_CNT)dnl ], -[ - It is technically impossible to `autoupdate' cleanly from AC_LINK_FILES - to AC_CONFIG_FILES. `autoupdate' provides a functional but inelegant - update, you should probably tune the result yourself.])# AC_LINK_FILES +[It is technically impossible to `autoupdate' cleanly from AC_LINK_FILES +to AC_CONFIG_LINKS. `autoupdate' provides a functional but inelegant +update, you should probably tune the result yourself.])# AC_LINK_FILES -# Initialize. -AU_DEFUN([_AC_LINK_FILES_CNT], 0) - -# _AC_OUTPUT_LINKS -# ---------------- -# This is a subroutine of AC_OUTPUT. -# -# It has to send itself into $CONFIG_STATUS (eg, via here documents). -# Upon exit, no here document shall be opened. -m4_define([_AC_OUTPUT_LINKS], -[cat >>$CONFIG_STATUS <<\_ACEOF - -# -# CONFIG_LINKS section. -# - -dnl Here we use : instead of .. because if AC_LINK_FILES was used -dnl with empty parameters (as in gettext.m4), then we obtain here -dnl `:', which we want to skip. So let's keep a single exception: `:'. -for ac_file in : $CONFIG_LINKS; do test "x$ac_file" = x: && continue - ac_dest=`echo "$ac_file" | sed 's,:.*,,'` - ac_source=`echo "$ac_file" | sed 's,[[^:]]*:,,'` +# _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_dest]) + AC_MSG_NOTICE([linking $srcdir/$ac_source to $ac_file]) - if test ! -r $srcdir/$ac_source; then + if test ! -r "$srcdir/$ac_source"; then AC_MSG_ERROR([$srcdir/$ac_source: file not found]) fi - rm -f $ac_dest - - # Make relative symlinks. - ac_dest_dir=`AS_DIRNAME(["$ac_dest"])` - AS_MKDIR_P(["$ac_dest_dir"]) - _AC_SRCPATHS(["$ac_dest_dir"]) + 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_builddir$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 - # Try a symlink, then a hard link, then a copy. - ln -s $ac_rel_source $ac_dest 2>/dev/null || - ln $srcdir/$ac_source $ac_dest 2>/dev/null || - cp -p $srcdir/$ac_source $ac_dest || - AC_MSG_ERROR([cannot link or copy $srcdir/$ac_source to $ac_dest]) -m4_ifset([AC_LIST_LINKS_COMMANDS], -[ # Run the commands associated with the file. - case $ac_file in -AC_LIST_LINKS_COMMANDS()dnl - esac -])dnl -done -_ACEOF -])# _AC_OUTPUT_LINKS +## ------------------------ ## +## Configuration commands. ## +## ------------------------ ## -## --------------------- ## -## Configuration files. ## -## --------------------- ## +# 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_CONFIG_FILE(FILE..., [COMMANDS]) -# ------------------------------------ -# See below. -m4_define([_AC_CONFIG_FILE], -[_AC_CONFIG_UNIQUE([$1])dnl -m4_append([AC_LIST_FILES], [ $1])dnl -_AC_CONFIG_DEPENDENCIES([$1])dnl -dnl Register the commands. -m4_ifval([$2], -[m4_append([AC_LIST_FILES_COMMANDS], -[ ]m4_bpatsubst([$1], [:.*])[ ) $2 ;; -])])dnl -]) -# AC_CONFIG_FILES(FILE..., [COMMANDS], [INIT-CMDS]) -# ------------------------------------------------- -# Specify output files, as with AC_OUTPUT, i.e., files that are -# configured with AC_SUBST. Associate the COMMANDS to each FILE, -# i.e., when config.status creates FILE, run COMMANDS afterwards. +# AC_OUTPUT_COMMANDS(EXTRA-CMDS, INIT-CMDS) +# ----------------------------------------- # -# The commands are stored in a growing string AC_LIST_FILES_COMMANDS -# which should be used like this: +# Add additional commands for AC_OUTPUT to put into config.status. # -# case $ac_file in -# AC_LIST_FILES_COMMANDS -# esac -AC_DEFUN([AC_CONFIG_FILES], -[AC_FOREACH([AC_File], [$1], [_AC_CONFIG_FILE(m4_defn([AC_File]), [$2])])dnl -_AC_CONFIG_COMMANDS_INIT([$3])dnl -ac_config_files="$ac_config_files m4_normalize([$1])" +# 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)dnl +m4_define([_AC_OUTPUT_COMMANDS_CNT], m4_incr(_AC_OUTPUT_COMMANDS_CNT))dnl +dnl Double quoted since that was the case in the original macro. +AC_CONFIG_COMMANDS([default-]_AC_OUTPUT_COMMANDS_CNT, [[$1]], [[$2]])dnl ]) -# Initialize the lists. -m4_define([AC_LIST_FILES]) -m4_define([AC_LIST_FILES_COMMANDS]) - +# _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]) +]) -# _AC_OUTPUT_FILES -# ---------------- -# Do the variable substitutions to create the Makefiles or whatever. -# This is a subroutine of AC_OUTPUT. -# -# It has to send itself into $CONFIG_STATUS (eg, via here documents). -# Upon exit, no here document shall be opened. -m4_define([_AC_OUTPUT_FILES], -[cat >>$CONFIG_STATUS <<_ACEOF - -# -# CONFIG_FILES section. -# -# No need to generate the scripts if there are no CONFIG_FILES. -# This happens for instance when ./config.status config.h -if test -n "\$CONFIG_FILES"; then - # Protect against being on the right side of a sed subst in config.status. -dnl Please, pay attention that this sed code depends a lot on the shape -dnl of the sed commands issued by AC_SUBST. So if you change one, change -dnl the other too. -[ sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; - s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF] -dnl These here document variables are unquoted when configure runs -dnl but quoted when config.status runs, so variables are expanded once. -dnl Insert the sed substitutions of variables. -m4_ifdef([_AC_SUBST_VARS], - [AC_FOREACH([AC_Var], m4_defn([_AC_SUBST_VARS]), -[s,@AC_Var@,$AC_Var,;t t -])])dnl -m4_ifdef([_AC_SUBST_FILES], - [AC_FOREACH([AC_Var], m4_defn([_AC_SUBST_FILES]), -[/@AC_Var@/r $AC_Var -s,@AC_Var@,,;t t -])])dnl -CEOF -_ACEOF +## -------------------------------------- ## +## Pre- and post-config.status commands. ## +## -------------------------------------- ## - cat >>$CONFIG_STATUS <<\_ACEOF - # Split the substitutions into bite-sized pieces for seds with - # small command number limits, like on Digital OSF/1 and HP-UX. -dnl One cannot portably go further than 100 commands because of HP-UX. -dnl Here, there are 2 cmd per line, and two cmd are added later. - ac_max_sed_lines=48 - ac_sed_frag=1 # Number of current file. - ac_beg=1 # First line for current file. - ac_end=$ac_max_sed_lines # Line after last line for current file. - ac_more_lines=: - ac_sed_cmds= - while $ac_more_lines; do - if test $ac_beg -gt 1; then - sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - else - sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag - fi - if test ! -s $tmp/subs.frag; then - ac_more_lines=false - else - # The purpose of the label and of the branching condition is to - # speed up the sed processing (if there are no `@' at all, there - # is no need to browse any of the substitutions). - # These are the two extra sed commands mentioned above. - (echo [':t - /@[a-zA-Z_][a-zA-Z_0-9]*@/!b'] && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed - if test -z "$ac_sed_cmds"; then - ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" - else - ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" - fi - ac_sed_frag=`expr $ac_sed_frag + 1` - ac_beg=$ac_end - ac_end=`expr $ac_end + $ac_max_sed_lines` - fi - done - if test -z "$ac_sed_cmds"; then - ac_sed_cmds=cat - fi -fi # test -n "$CONFIG_FILES" -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue - # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". - case $ac_file in - - | *:- | *:-:* ) # input from stdin - cat >$tmp/stdin - ac_file_in=`echo "$ac_file" | sed 's,[[^:]]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - *:* ) ac_file_in=`echo "$ac_file" | sed 's,[[^:]]*:,,'` - ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; - * ) ac_file_in=$ac_file.in ;; - esac +# 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 +])]) - # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. - ac_dir=`AS_DIRNAME(["$ac_file"])` - AS_MKDIR_P(["$ac_dir"]) - _AC_SRCPATHS(["$ac_dir"]) -AC_PROVIDE_IFELSE([AC_PROG_INSTALL], -[ case $INSTALL in - [[\\/$]]* | ?:[[\\/]]* ) ac_INSTALL=$INSTALL ;; - *) ac_INSTALL=$ac_top_builddir$INSTALL ;; - esac -])dnl +# 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 +]) - # Let's still pretend it is `configure' which instantiates (i.e., don't - # use $as_me), people would be surprised to read: - # /* config.h. Generated by config.status. */ - if test x"$ac_file" = x-; then - configure_input= - else - configure_input="$ac_file. " - fi - configure_input=$configure_input"Generated from `echo $ac_file_in | - sed 's,.*/,,'` by configure." - - # First look for the input files in the build tree, otherwise in the - # src tree. - ac_file_inputs=`IFS=: - for f in $ac_file_in; do - case $f in - -) echo $tmp/stdin ;; - [[\\/$]]*) - # Absolute (can't be DOS-style, as IFS=:) - test -f "$f" || AC_MSG_ERROR([cannot find input file: $f]) - echo "$f";; - *) # Relative - if test -f "$f"; then - # Build tree - echo "$f" - elif test -f "$srcdir/$f"; then - # Source tree - echo "$srcdir/$f" - else - # /dev/null tree - AC_MSG_ERROR([cannot find input file: $f]) - fi;; - esac - done` || AS_EXIT([1]) - if test x"$ac_file" != x-; then - AC_MSG_NOTICE([creating $ac_file]) - rm -f "$ac_file" - fi -_ACEOF -cat >>$CONFIG_STATUS <<_ACEOF -dnl Neutralize VPATH when `$srcdir' = `.'. - sed "$ac_vpsub -dnl Shell code in configure.ac might set extrasub. -dnl FIXME: do we really want to maintain this feature? -$extrasub -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -:t -[/@[a-zA-Z_][a-zA-Z_0-9]*@/!b] -s,@configure_input@,$configure_input,;t t -s,@srcdir@,$ac_srcdir,;t t -s,@abs_srcdir@,$ac_abs_srcdir,;t t -s,@top_srcdir@,$ac_top_srcdir,;t t -s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t -s,@builddir@,$ac_builddir,;t t -s,@abs_builddir@,$ac_abs_builddir,;t t -s,@top_builddir@,$ac_top_builddir,;t t -s,@abs_top_builddir@,$ac_abs_top_builddir,;t t -AC_PROVIDE_IFELSE([AC_PROG_INSTALL], [s,@INSTALL@,$ac_INSTALL,;t t -])dnl -dnl The parens around the eval prevent an "illegal io" in Ultrix sh. -" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out - rm -f $tmp/stdin -dnl This would break Makefile dependencies. -dnl if diff $ac_file $tmp/out >/dev/null 2>&1; then -dnl echo "$ac_file is unchanged" -dnl else -dnl rm -f $ac_file -dnl mv $tmp/out $ac_file -dnl fi - if test x"$ac_file" != x-; then - mv $tmp/out $ac_file - else - cat $tmp/out - rm -f $tmp/out - fi +# 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 +])]) -m4_ifset([AC_LIST_FILES_COMMANDS], -[ # Run the commands associated with the file. - case $ac_file in -AC_LIST_FILES_COMMANDS()dnl - esac -])dnl -done -_ACEOF -])# _AC_OUTPUT_FILES +# Initialize. +m4_define([AC_OUTPUT_COMMANDS_POST]) @@ -1057,29 +906,28 @@ _ACEOF # AC_CONFIG_SUBDIRS(DIR ...) # -------------------------- # We define two variables: -# - ac_subdirs_all -# is built in the `default' section, and should contain *all* -# the arguments of AC_CONFIG_SUBDIRS. It is used for --help=recursive. +# - _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 -# which is built at runtime, so some of these dirs might not be +# 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_LIST_SUBDIRS is used only for _AC_CONFIG_UNIQUE. AC_DEFUN([AC_CONFIG_SUBDIRS], -[_AC_CONFIG_UNIQUE([$1])dnl -AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl -m4_append([_AC_LIST_SUBDIRS], [ $1])dnl +[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +m4_foreach_w([_AC_Sub], [$1], + [_AC_CONFIG_UNIQUE([SUBDIRS], + m4_bpatsubst(m4_defn([_AC_Sub]), [:.*]))])dnl +m4_append([_AC_LIST_SUBDIRS], [$1], [ +])dnl AS_LITERAL_IF([$1], [], - [AC_DIAGNOSE(syntax, [$0: you should use literals])]) -m4_divert_text([DEFAULTS], - [ac_subdirs_all="$ac_subdirs_all m4_normalize([$1])"]) -AC_SUBST(subdirs, "$subdirs $1")dnl + [AC_DIAGNOSE([syntax], [$0: you should use literals])])dnl +AC_SUBST([subdirs], ["$subdirs m4_normalize([$1])"])dnl ]) -# Initialize the list. -m4_define([_AC_LIST_SUBDIRS]) - # _AC_OUTPUT_SUBDIRS # ------------------ @@ -1095,7 +943,10 @@ if test "$no_recursion" != yes; then # Remove --cache-file and --srcdir arguments so they do not pile up. ac_sub_configure_args= ac_prev= - for ac_arg in $ac_configure_args; do + eval "set x $ac_configure_args" + shift + for ac_arg + do if test -n "$ac_prev"; then ac_prev= continue @@ -1118,34 +969,50 @@ if test "$no_recursion" != yes; then ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) ;; - *) ac_sub_configure_args="$ac_sub_configure_args $ac_arg" ;; + *) + 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_sub_configure_args="--prefix=$prefix $ac_sub_configure_args" + 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" + + # Pass --silent + if test "$silent" = yes; then + ac_sub_configure_args="--silent $ac_sub_configure_args" + fi 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 + test -d "$srcdir/$ac_dir" || continue - AC_MSG_NOTICE([configuring in $ac_dir]) + ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)" + _AS_ECHO_LOG([$ac_msg]) + _AS_ECHO([$ac_msg]) AS_MKDIR_P(["$ac_dir"]) - _AC_SRCPATHS(["$ac_dir"]) + _AC_SRCDIRS(["$ac_dir"]) - cd $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="$SHELL '$ac_srcdir/configure.gnu'" - elif test -f $ac_srcdir/configure; then - ac_sub_configure="$SHELL '$ac_srcdir/configure'" - elif test -f $ac_srcdir/configure.in; then - ac_sub_configure=$ac_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= @@ -1156,14 +1023,14 @@ if test "$no_recursion" != yes; then # Make the cache file name correct relative to the subdirectory. case $cache_file in [[\\/]]* | ?:[[\\/]]* ) ac_sub_cache_file=$cache_file ;; - *) # Relative path. - ac_sub_cache_file=$ac_top_builddir$cache_file ;; + *) # Relative name. + ac_sub_cache_file=$ac_top_build_prefix$cache_file ;; esac - AC_MSG_NOTICE([running $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir]) + 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 $ac_sub_configure $ac_sub_configure_args \ - --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir || + 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 @@ -1180,8 +1047,8 @@ fi ## -------------------------- ## -# autoupdate::AC_OUTPUT([CONFIG_FILES...], [EXTRA-CMDS], [INIT-CMDS]) -# ------------------------------------------------------------------- +# AU::AC_OUTPUT([CONFIG_FILES...], [EXTRA-CMDS], [INIT-CMDS]) +# ----------------------------------------------------------- # # If there are arguments given to AC_OUTPUT, dispatch them to the # proper modern macros. @@ -1189,7 +1056,7 @@ AU_DEFUN([AC_OUTPUT], [m4_ifvaln([$1], [AC_CONFIG_FILES([$1])])dnl m4_ifvaln([$2$3], - [AC_CONFIG_COMMANDS(default, [[$2]], [[$3]])])dnl + [AC_CONFIG_COMMANDS(default, [$2], [$3])])dnl [AC_OUTPUT]]) @@ -1197,15 +1064,13 @@ m4_ifvaln([$2$3], # ------------------------------------------------------- # The big finish. # Produce config.status, config.h, and links; and configure subdirs. -# The CONFIG_HEADERS are defined in the m4 variable AC_LIST_HEADERS. -# 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], [dnl Dispatch the extra arguments to their native macros. -m4_ifval([$1], - [AC_CONFIG_FILES([$1])])dnl -m4_ifval([$2$3], - [AC_CONFIG_COMMANDS(default, [$2], [$3])])dnl +m4_ifvaln([$1], + [AC_CONFIG_FILES([$1])])dnl +m4_ifvaln([$2$3], + [AC_CONFIG_COMMANDS(default, [$2], [$3])])dnl m4_ifval([$1$2$3], [AC_DIAGNOSE([obsolete], [$0 should be used without arguments. @@ -1216,22 +1081,7 @@ test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' -# VPATH may cause trouble with some makes, so we remove $(srcdir), -# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and -# trailing colons and then remove the whole line if VPATH becomes empty -# (actually we leave an empty line to preserve line numbers). -if test "x$srcdir" = x.; then - ac_vpsub=['/^[ ]*VPATH[ ]*=/{ -s/:*\$(srcdir):*/:/; -s/:*\${srcdir}:*/:/; -s/:*@srcdir@:*/:/; -s/^\([^=]*=[ ]*\):*/\1/; -s/:*$//; -s/^[^=]*=[ ]*$//; -}'] -fi - -m4_ifset([AC_LIST_HEADERS], [DEFS=-DHAVE_CONFIG_H], [AC_OUTPUT_MAKE_DEFS()]) +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 @@ -1277,6 +1127,8 @@ AC_PROVIDE_IFELSE([AC_CONFIG_SUBDIRS], [_AC_OUTPUT_SUBDIRS()])dnl # 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])dnl cat >$CONFIG_STATUS <<_ACEOF #! $SHELL # Generated by $as_me. @@ -1298,16 +1150,10 @@ dnl of configure, not config.status. _AS_PREPARE exec AS_MESSAGE_FD>&1 -# Open the log real soon, to keep \$[0] and so on meaningful, and to +# Save the log message, to keep $[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their -# values after options handling. Logging --version etc. is OK. -exec AS_MESSAGE_LOG_FD>>config.log -{ - echo - AS_BOX([Running $as_me.]) -} >&AS_MESSAGE_LOG_FD -cat >&AS_MESSAGE_LOG_FD <<_CSEOF - +# values after options handling. +ac_log=" This file was extended by m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])dnl $as_me[]m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]), which was generated by m4_PACKAGE_STRING. Invocation command line was @@ -1318,30 +1164,29 @@ generated by m4_PACKAGE_STRING. Invocation command line was CONFIG_COMMANDS = $CONFIG_COMMANDS $ $[0] $[@] -_CSEOF -echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&AS_MESSAGE_LOG_FD -echo >&AS_MESSAGE_LOG_FD +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + _ACEOF +cat >>$CONFIG_STATUS <<_ACEOF # Files that config.status was made for. -if test -n "$ac_config_files"; then - echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_headers"; then - echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS -fi - -if test -n "$ac_config_links"; then - echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS -fi +m4_ifdef([_AC_SEEN_CONFIG(FILES)], +[config_files="$ac_config_files" +])dnl +m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], +[config_headers="$ac_config_headers" +])dnl +m4_ifdef([_AC_SEEN_CONFIG(LINKS)], +[config_links="$ac_config_links" +])dnl +m4_ifdef([_AC_SEEN_CONFIG(COMMANDS)], +[config_commands="$ac_config_commands" +])dnl -if test -n "$ac_config_commands"; then - echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS -fi +_ACEOF cat >>$CONFIG_STATUS <<\_ACEOF - ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. @@ -1349,57 +1194,60 @@ current configuration. Usage: $[0] [[OPTIONS]] [[FILE]]... -h, --help print this help, then exit - -V, --version print version number, then exit + -V, --version print version number and configuration settings, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions -m4_ifset([AC_LIST_FILES], +m4_ifdef([_AC_SEEN_CONFIG(FILES)], [[ --file=FILE[:TEMPLATE] instantiate the configuration file FILE ]])dnl -m4_ifset([AC_LIST_HEADERS], +m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [[ --header=FILE[:TEMPLATE] instantiate the configuration header FILE ]])dnl -m4_ifset([AC_LIST_FILES], +m4_ifdef([_AC_SEEN_CONFIG(FILES)], [Configuration files: $config_files ])dnl -m4_ifset([AC_LIST_HEADERS], +m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [Configuration headers: $config_headers ])dnl -m4_ifset([AC_LIST_LINKS], +m4_ifdef([_AC_SEEN_CONFIG(LINKS)], [Configuration links: $config_links ])dnl -m4_ifset([AC_LIST_COMMANDS], +m4_ifdef([_AC_SEEN_CONFIG(COMMANDS)], [Configuration commands: $config_commands ])dnl Report bugs to ." -_ACEOF +_ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.status[]dnl m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) configured by $[0], generated by m4_PACKAGE_STRING, - with options \\"`echo "$ac_configure_args" | sed 's/[[\\""\`\$]]/\\\\&/g'`\\" + with options \\"`echo "$ac_configure_args" | sed 's/^ //; s/[[\\""\`\$]]/\\\\&/g'`\\" -Copyright (C) 2003 Free Software Foundation, Inc. +Copyright (C) 2006 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." -srcdir=$srcdir + +ac_pwd='$ac_pwd' +srcdir='$srcdir' AC_PROVIDE_IFELSE([AC_PROG_INSTALL], -[dnl Leave those double quotes here: this $INSTALL is evaluated in a -dnl here document, which might result in `INSTALL=/bin/install -c'. -INSTALL="$INSTALL" +[INSTALL='$INSTALL' +])dnl +AC_PROVIDE_IFELSE([AC_PROG_MKDIR_P], +[MKDIR_P='$MKDIR_P' ])dnl _ACEOF @@ -1411,45 +1259,43 @@ while test $[#] != 0 do case $[1] in --*=*) - ac_option=`expr "x$[1]" : 'x\([[^=]]*\)='` - ac_optarg=`expr "x$[1]" : 'x[[^=]]*=\(.*\)'` + ac_option=`expr "X$[1]" : 'X\([[^=]]*\)='` + ac_optarg=`expr "X$[1]" : 'X[[^=]]*=\(.*\)'` ac_shift=: ;; - -*) + *) ac_option=$[1] ac_optarg=$[2] ac_shift=shift ;; - *) # This is not an option, so the user has probably given explicit - # arguments. - ac_option=$[1] - ac_need_defaults=false;; esac case $ac_option in # Handling of the options. -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; - --version | --vers* | -V ) - echo "$ac_cs_version"; exit 0 ;; - --he | --h) - # Conflict between --help and --header - AC_MSG_ERROR([ambiguous option: $[1] -Try `$[0] --help' for more information.]);; - --help | --hel | -h ) - echo "$ac_cs_usage"; exit 0 ;; - --debug | --d* | -d ) + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + echo "$ac_cs_version"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) debug=: ;; +m4_ifdef([_AC_SEEN_CONFIG(FILES)], [dnl --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; +])dnl +m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [dnl --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + AC_MSG_ERROR([ambiguous option: $[1] +Try `$[0] --help' for more information.]);; +], [ --he | --h |])dnl + --help | --hel | -h ) + echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; @@ -1458,7 +1304,8 @@ Try `$[0] --help' for more information.]);; -*) AC_MSG_ERROR([unrecognized option: $[1] Try `$[0] --help' for more information.]) ;; - *) ac_config_targets="$ac_config_targets $[1]" ;; + *) ac_config_targets="$ac_config_targets $[1]" + ac_need_defaults=false ;; esac shift @@ -1473,94 +1320,181 @@ fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF +dnl Check this before opening the log, to avoid a bug on MinGW, +dnl which prohibits the recursive instance from truncating an open log. if \$ac_cs_recheck; then - echo "running $SHELL $[0] " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&AS_MESSAGE_FD - exec $SHELL $[0] $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + echo "running CONFIG_SHELL=$SHELL $SHELL $[0] "$ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&AS_MESSAGE_FD + CONFIG_SHELL=$SHELL + export CONFIG_SHELL + exec $SHELL "$[0]"$ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF +dnl Open the log: +m4_rename([_AC_save_AS_MESSAGE_LOG_FD], [AS_MESSAGE_LOG_FD])dnl +exec AS_MESSAGE_LOG_FD>>config.log +{ + echo + AS_BOX([Running $as_me.]) + echo "$ac_log" +} >&AS_MESSAGE_LOG_FD -dnl We output the INIT-CMDS first for obvious reasons :) -m4_ifset([_AC_OUTPUT_COMMANDS_INIT], -[cat >>$CONFIG_STATUS <<_ACEOF -# -# INIT-COMMANDS section. +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF +m4_ifdef([_AC_OUTPUT_COMMANDS_INIT], +[# +# INIT-COMMANDS # +_AC_OUTPUT_COMMANDS_INIT +])dnl +_ACEOF -_AC_OUTPUT_COMMANDS_INIT() -_ACEOF]) - - -dnl Issue this section only if there were actually config files. -dnl This checks if one of AC_LIST_HEADERS, AC_LIST_FILES, AC_LIST_COMMANDS, -dnl or AC_LIST_LINKS is set. -m4_ifval(AC_LIST_HEADERS()AC_LIST_LINKS()AC_LIST_FILES()AC_LIST_COMMANDS(), -[ cat >>$CONFIG_STATUS <<\_ACEOF + +# Handling of arguments. for ac_config_target in $ac_config_targets do - case "$ac_config_target" in - # Handling of arguments. -AC_FOREACH([AC_File], AC_LIST_FILES, -[ "m4_bpatsubst(AC_File, [:.*])" )dnl - CONFIG_FILES="$CONFIG_FILES AC_File" ;; -])dnl -AC_FOREACH([AC_File], AC_LIST_LINKS, -[ "m4_bpatsubst(AC_File, [:.*])" )dnl - CONFIG_LINKS="$CONFIG_LINKS AC_File" ;; -])dnl -AC_FOREACH([AC_File], AC_LIST_COMMANDS, -[ "m4_bpatsubst(AC_File, [:.*])" )dnl - CONFIG_COMMANDS="$CONFIG_COMMANDS AC_File" ;; -])dnl -AC_FOREACH([AC_File], AC_LIST_HEADERS, -[ "m4_bpatsubst(AC_File, [:.*])" )dnl - CONFIG_HEADERS="$CONFIG_HEADERS AC_File" ;; -])dnl + case $ac_config_target in +m4_ifdef([_AC_LIST_TAGS], [_AC_LIST_TAGS]) *) AC_MSG_ERROR([invalid argument: $ac_config_target]);; esac done +m4_ifdef([_AC_SEEN_CONFIG(ANY)], [_AC_OUTPUT_MAIN_LOOP])[]dnl + +AS_EXIT(0) +_ACEOF +chmod +x $CONFIG_STATUS +])# _AC_OUTPUT_CONFIG_STATUS + +# _AC_OUTPUT_MAIN_LOOP +# -------------------- +# The main loop in $CONFIG_STATUS. +# +# This macro is expanded inside a here document. If the here document is +# closed, it has to be reopened with "cat >>$CONFIG_STATUS <<\_ACEOF". +# +AC_DEFUN([_AC_OUTPUT_MAIN_LOOP], +[ # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then -m4_ifset([AC_LIST_FILES], +m4_ifdef([_AC_SEEN_CONFIG(FILES)], [ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files ])dnl -m4_ifset([AC_LIST_HEADERS], +m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers ])dnl -m4_ifset([AC_LIST_LINKS], +m4_ifdef([_AC_SEEN_CONFIG(LINKS)], [ test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links ])dnl -m4_ifset([AC_LIST_COMMANDS], +m4_ifdef([_AC_SEEN_CONFIG(COMMANDS)], [ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands ])dnl fi # Have a temporary directory for convenience. Make it in the build tree -# simply because there is no reason to put it here, and in addition, +# simply because there is no reason against having it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. -AS_TMPDIR([confstat], [.]) +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= + trap 'exit_status=$? + { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status +' 0 + trap 'AS_EXIT([1])' 1 2 13 15 +} +dnl The comment above AS_TMPDIR says at most 4 chars are allowed. +AS_TMPDIR([conf], [.]) + +m4_ifdef([_AC_SEEN_CONFIG(FILES)], [_AC_OUTPUT_FILES_PREPARE])[]dnl + +for ac_tag in[]dnl + m4_ifdef([_AC_SEEN_CONFIG(FILES)], [:F $CONFIG_FILES])[]dnl + m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [:H $CONFIG_HEADERS])[]dnl + m4_ifdef([_AC_SEEN_CONFIG(LINKS)], [:L $CONFIG_LINKS])[]dnl + m4_ifdef([_AC_SEEN_CONFIG(COMMANDS)], [:C $CONFIG_COMMANDS]) +do + case $ac_tag in + :[[FHLC]]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[[FHL]]*:*);; + :L* | :C*:*) AC_MSG_ERROR([Invalid tag $ac_tag.]);; + :[[FH]]-) ac_tag=-:-;; + :[[FH]]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$[1] + shift -_ACEOF -])[]dnl m4_ifval + case $ac_mode in + :L) ac_source=$[1];; + :[[FH]]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [[\\/$]]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + AC_MSG_ERROR([cannot find input file: $ac_f]);; + esac + ac_file_inputs="$ac_file_inputs $ac_f" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input="Generated from "`IFS=: + echo $[*] | sed ['s|^[^:]*/||;s|:[^:]*/|, |g']`" by configure." + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + AC_MSG_NOTICE([creating $ac_file]) + fi + + case $ac_tag in + *:-:* | *:-) cat >"$tmp/stdin";; + esac + ;; + esac -dnl The following four sections are in charge of their own here -dnl documenting into $CONFIG_STATUS. -m4_ifset([AC_LIST_FILES], [_AC_OUTPUT_FILES()])dnl -m4_ifset([AC_LIST_HEADERS], [_AC_OUTPUT_HEADERS()])dnl -m4_ifset([AC_LIST_LINKS], [_AC_OUTPUT_LINKS()])dnl -m4_ifset([AC_LIST_COMMANDS], [_AC_OUTPUT_COMMANDS()])dnl + ac_dir=`AS_DIRNAME(["$ac_file"])` + AS_MKDIR_P(["$ac_dir"]) + _AC_SRCDIRS(["$ac_dir"]) -cat >>$CONFIG_STATUS <<\_ACEOF + case $ac_mode in + m4_ifdef([_AC_SEEN_CONFIG(FILES)], [:F)_AC_OUTPUT_FILE ;;]) + m4_ifdef([_AC_SEEN_CONFIG(HEADERS)], [:H)_AC_OUTPUT_HEADER ;;]) + m4_ifdef([_AC_SEEN_CONFIG(LINKS)], [:L)_AC_OUTPUT_LINK ;;]) + m4_ifdef([_AC_SEEN_CONFIG(COMMANDS)], [:C)_AC_OUTPUT_COMMAND ;;]) + esac -AS_EXIT(0) -_ACEOF -chmod +x $CONFIG_STATUS -])# _AC_OUTPUT_CONFIG_STATUS +dnl Some shells don't like empty case/esac +m4_ifdef([_AC_LIST_TAG_COMMANDS], [ + case $ac_file$ac_mode in +_AC_LIST_TAG_COMMANDS + esac +])dnl +done # for ac_tag + +])# _AC_OUTPUT_MAIN_LOOP # AC_OUTPUT_MAKE_DEFS @@ -1568,37 +1502,35 @@ chmod +x $CONFIG_STATUS # Set the DEFS variable to the -D options determined earlier. # This is a subroutine of AC_OUTPUT. # It is called inside configure, outside of config.status. -# Using a here document instead of a string reduces the quoting nightmare. m4_define([AC_OUTPUT_MAKE_DEFS], [[# Transform confdefs.h into DEFS. # Protect against shell expansion while executing Makefile rules. # Protect against Makefile macro expansion. # # If the first sed substitution is executed (which looks for macros that -# take arguments), then we branch to the quote section. Otherwise, +# take arguments), then branch to the quote section. Otherwise, # look for a macro that doesn't take arguments. -cat >confdef2opt.sed <<\_ACEOF +ac_script=' t clear -: clear -s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g +:clear +s/^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\)/-D\1=\2/g t quote -s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g +s/^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)/-D\1=\2/g t quote -d -: quote -s,[ `~#$^&*(){}\\|;'"<>?],\\&,g -s,\[,\\&,g -s,\],\\&,g -s,\$,$$,g -p -_ACEOF -# We use echo to avoid assuming a particular line-breaking character. -# The extra dot is to prevent the shell from consuming trailing -# line-breaks from the sub-command output. A line-break within -# single-quotes doesn't work because, if this script is created in a -# platform that uses two characters for line-breaks (e.g., DOS), tr -# would break. -ac_LF_and_DOT=`echo; echo .` -DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'` -rm -f confdef2opt.sed +b any +:quote +s/[ `~#$^&*(){}\\|;'\''"<>?]/\\&/g +s/\[/\\&/g +s/\]/\\&/g +s/\$/$$/g +H +:any +${ + g + s/^\n// + s/\n/ /g + p +} +' +DEFS=`sed -n "$ac_script" confdefs.h` ]])# AC_OUTPUT_MAKE_DEFS