Hi all.

I have run into a problem with a configure.in that worked
just fine with autoconf 2.13 but not 2.14.


% cat configure.in

AC_INIT(foo.cpp)

AC_LANG_CPLUSPLUS
AC_PROG_CXX
AC_PROG_CC

PROCESS_FILES="Makefile src/Makefile"

AC_OUTPUT([$PROCESS_FILES])


% /usr/bin/autoconf --version
Autoconf version 2.13

% /usr/bin/autoconf

% ./configure 
creating cache ./config.cache
checking for c++... c++
checking whether the C++ compiler (c++  ) works... yes
checking whether the C++ compiler (c++  ) is a cross-compiler... no
checking whether we are using GNU C++... yes
checking whether c++ accepts -g... yes
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
updating cache ./config.cache
creating ./config.status
creating Makefile
creating src/Makefile



And now the CVS version.

% autoconf --version
autoconf (GNU autoconf) 2.14a

% autoconf

% ./configure
checking for g++... g++
checking whether the C++ compiler works... yes
checking whether we are using GNU C++... yes
checking whether g++ accepts -g... yes
checking for Cygwin environment... no
checking for mingw32 environment... no
checking for EMX OS/2 environment... no
checking for executable suffix... 
checking for object suffix... o
checking for gcc... gcc
checking whether the C compiler works... yes
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
creating ./config.status



autoconf 2.14 creates the ./config.status file
but when run, config.status does create
the Makefiles.


The problem seems to be related to the
AC_OUTPUT macro. Here is what is written
into the config.status file.

# Files that config.status was made for.
config_files="\
  $PROCESS_FILES"

That PROCESS_FILES variable should have been
substitued in the ./configure script.



Here is what gets put into the ./configure script
when autoconf 2.13 is run.


PROCESS_FILES="Makefile src/Makefile"

...

trap 'rm -fr `echo "$PROCESS_FILES" | sed "s/:[^ ]*//g"` conftest*; exit 
1' 1 2 15

...

CONFIG_FILES=\${CONFIG_FILES-"$PROCESS_FILES"}

...





Here is what gets put into the ./configure script
when autoconf 2.14 is run.


PROCESS_FILES="Makefile src/Makefile"

...

# Files that config.status was made for.
config_files="\
  $PROCESS_FILES"

...

  # Handling of arguments.
  '$PROCESS_FILES' ) CONFIG_FILES="$CONFIG_FILES $PROCESS_FILES" ;;




How can this be fixed?

Mo DeJong
Red Hat Inc

Reply via email to