libffcall
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libffcall] --enable-{static,shared} options not in --help


From: Bruno Haible
Subject: Re: [Libffcall] --enable-{static,shared} options not in --help
Date: Tue, 28 Mar 2017 23:06:40 +0200
User-agent: KMail/5.1.3 (Linux/4.4.0-66-generic; KDE/5.18.0; x86_64; ; )

Hi Karl,

> The --enable-static, --enable-shared (or --disable-<same>) options in
> https://haible.de/bruno/gnu/libffcall-1.13-20170225.tar.gz are not
> mentioned in the configure --help output.  (Ditto with the other libtool
> options, I suppose.)

Thanks for the report. I will fix it through the same "trick" (workaround)
as in GNU gettext. Draft patch:


2017-03-28  Bruno Haible  <address@hidden>

        Make the top-level "./configure --help" output complete.
        * build-aux/ac-help.sed: New file, from GNU gettext.
        * configure.ac: Collect the AC_ARG_* options from the subdirectories,
        like in GNU gettext.
        Reported by Karl Berry <address@hidden> in
        <https://lists.gnu.org/archive/html/libffcall/2017-03/msg00000.html>.

diff --git a/build-aux/ac-help.sed b/build-aux/ac-help.sed
new file mode 100644
index 0000000..306094e
--- /dev/null
+++ b/build-aux/ac-help.sed
@@ -0,0 +1,25 @@
+# Sed script for post-processing the trace output of subordinate configures.
+# Copyright (C) 2003, 2005 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
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Replace invocations of some libtool macros.
+s|.AC_ENABLE_SHARED_DEFAULT.|yes|g
+s|.AC_ENABLE_STATIC_DEFAULT.|yes|g
+s|.AC_ENABLE_FAST_INSTALL_DEFAULT.|yes|g
+# Avoid loss of brackets, such as  --with-tags[=TAGS] => --with-tags=TAGS
+s|\[=TAGS\]|@<:@=TAGS@:>@|g
+s|\[=PKGS\]|@<:@=PKGS@:>@|g
+# Avoid unwanted comma, such as  [default=use both] => [default=use], [both]
+s|\[default=use both\]|@<:@default=use both@:>@|g
diff --git a/configure.ac b/configure.ac
index 601231d..3999a13 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,6 +9,7 @@ AC_CONFIG_AUX_DIR([build-aux])
 AC_PROG_MAKE_SET
 gl_EARLY
 gl_INIT
+
 dnl This piece of sed script replaces every line containing '@subdir@'
 dnl by several consecutive lines, each referencing one subdir.
 extrasub="$extrasub"'
@@ -30,4 +31,16 @@ d
 }
 '
 AC_CONFIG_SUBDIRS([avcall vacall trampoline callback])
+
+dnl Ensure that "configure --help" lists all the command line options that
+dnl are usable with the subdir configures. Really AC_CONFIG_SUBDIRS should
+dnl do it by itself.
+dnl System types:
+AC_CANONICAL_HOST
+dnl Optional Features: AC_ARG_ENABLE calls
+dnl Optional Packages: AC_ARG_WITH calls
+dnl Some influential environment variables: AC_ARG_VAR calls
+esyscmd([{ 
+cd avcall && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' 
--trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; cd 
vacall && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' 
--trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; cd 
trampoline && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' 
--trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; cd 
callback && autoconf --trace=AC_ARG_ENABLE:'$n([$1],[$2])' 
--trace=AC_ARG_WITH:'$n([$1],[$2])' --trace=AC_ARG_VAR:'$n($@)' && cd ..; } | 
sed -f build-aux/ac-help.sed ])
+
 AC_OUTPUT




reply via email to

[Prev in Thread] Current Thread [Next in Thread]