Synopsis:

   "configure --help=recursive" does not run the --help parts of the
   directories included via AC_CONFIG_SUBDIR when called as
       $ /path/to/top_srcdir/configure --help=recursive
   or
       $ ../configure --help=recursive

Versions affected:

   autoconf (GNU Autoconf) 2.61 and probably earlier

Steps to reproduce:

  1. Create directory structure with the two configure files below:
        +-+ ac-help-recursive-bug/
          +-- configure.ac
          +-+ direct-sub/
            +-- configure.ac
  2. Initialize autoconf build system:
      $ autoreconf -vis ac-help-recursive-bug
  3. Try getting the recursive help from the outside:
      $ ./ac-help-recursive-bug/configure --help=recursive"
     This will only show the top level help, not that of AC_SUBDIR
  4. For comparison, get the recursive help from top_srcdir:
      $ cd ac-help-recursive-bug
      $ ./configure --help=recursive

Suggested fix:

  Add the equivalent of a "cd ${top_srcdir}" at the appropriate place
  the configure script.

  However, make sure that configure.ac files stored in a subdirectory
  of their respective ${top_srcdir} also must be handled properly.

Test case files:

dnl File ac-help-recursive-bug/configure.ac
AC_INIT([autoconf --help=recursive bug demo], [1.0],
        [EMAIL PROTECTED], [ac-recursive-help-bug])
AC_CONFIG_AUX_DIR([auto-aux])
AC_CONFIG_SUBDIRS([direct-sub])
AC_OUTPUT

dnl File ac-help-recursive-bug/direct-sub/configure.ac
AC_INIT([direct-sub subproject], [1.0], [EMAIL PROTECTED],
        [direct-sub])
AC_CONFIG_AUX_DIR([auto-aux])
AC_OUTPUT


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to