Anthony G. Basile
2012-Mar-26 10:29 UTC
[PATCH] configure.in: fix AC_ARG_ENABLE and AC_ARG_WITH
From: "Anthony G. Basile" <basile at opensource.dyc.edu> The current configure.in file does not correctly make use of these macros. The resulting configure file will therefore enable an item even if --disable-FEATURE is given. This patch restores the intended behavior. --- configure.in | 50 +++++++++++++++++++++++++++++++++----------------- 1 files changed, 33 insertions(+), 17 deletions(-) diff --git a/configure.in b/configure.in index 2ea69f6..a03baf6 100644 --- a/configure.in +++ b/configure.in @@ -73,30 +73,44 @@ case $host_os in esac AC_ARG_ENABLE(uml, - AS_HELP_STRING([--enable-uml], [enable support for User Mode Linux]), - [ AC_DEFINE(ENABLE_UML, 1, [Support for UML]) - uml=true - ] + AS_HELP_STRING([--disable-uml], [enable support for User Mode Linux]), + [ AS_IF([test "x$enable_uml" = "xyes"], + [ AC_DEFINE(ENABLE_UML, 1, [Support for UML]) + uml=true + ], + [uml=false]) + ], + [uml=disable] ) AC_ARG_ENABLE(vde, - AS_HELP_STRING([--enable-vde], [enable support for Virtual Distributed Ethernet]), - [ AC_CHECK_HEADERS(libvdeplug_dyn.h, [], [AC_MSG_ERROR([VDE plug header files not found.]); break]) - AC_DEFINE(ENABLE_VDE, 1, [Support for VDE]) - vde=true - ] + AS_HELP_STRING([--disable-vde], [enable support for Virtual Distributed Ethernet]), + [ AS_IF([test "x$enable_vde" = "xyes"], + [ AC_CHECK_HEADERS(libvdeplug_dyn.h, [], [AC_MSG_ERROR([VDE plug header files not found.]); break]) + AC_DEFINE(ENABLE_VDE, 1, [Support for VDE]) + vde=true + ], + [vde=false]) + ], + [vde=false] ) AC_ARG_ENABLE(tunemu, - AS_HELP_STRING([--enable-tunemu], [enable support for the tunemu driver]), - [ AC_DEFINE(ENABLE_TUNEMU, 1, [Support for tunemu]) - tunemu=true - ] + AS_HELP_STRING([--disable-tunemu], [enable support for the tunemu driver]), + [ AS_IF([test "x$enable_tunemu" = "xyes"], + [ AC_DEFINE(ENABLE_TUNEMU, 1, [Support for tunemu]) + tunemu=true + ], + [tunemu=false]) + ], + [tunemu=false] ) AC_ARG_WITH(windows2000, - AS_HELP_STRING([--with-windows2000], [compile with support for Windows 2000. This disables support for tunneling over existing IPv6 networks.]), - [AC_DEFINE(WITH_WINDOWS2000, 1, [Compile with support for Windows 2000])] + AS_HELP_STRING([--without-windows2000], [compile with support for Windows 2000. This disables support for tunneling over existing IPv6 networks.]), + [ AS_IF([test "x$with_windows2000" = "xyes"], + [AC_DEFINE(WITH_WINDOWS2000, 1, [Compile with support for Windows 2000])]) + ] ) AM_CONDITIONAL(UML, test "$uml" = true) @@ -176,8 +190,10 @@ tinc_OPENSSL dnl Check if support for jumbograms is requested AC_ARG_ENABLE(jumbograms, - AS_HELP_STRING([--enable-jumbograms], [enable support for jumbograms (packets up to 9000 bytes)]), - [ AC_DEFINE(ENABLE_JUMBOGRAMS, 1, [Support for jumbograms (packets up to 9000 bytes)]) ] + AS_HELP_STRING([--disable-jumbograms], [enable support for jumbograms (packets up to 9000 bytes)]), + [ AS_IF([test "x$enable_jumbograms" = "xyes"], + [ AC_DEFINE(ENABLE_JUMBOGRAMS, 1, [Support for jumbograms (packets up to 9000 bytes)]) ]) + ] ) AC_SUBST(INCLUDES) -- 1.7.6.1
Anthony G. Basile
2012-Mar-26 10:47 UTC
[PATCH] configure.in: fix AC_ARG_ENABLE and AC_ARG_WITH
Hi guys, I'm sorry guus just noticed in irc that + [uml=disable] should read + [uml=false] in the last parameter of AC_ARG_ENABLE(uml, ... ). That was a typo. --Tony On 03/26/2012 06:29 AM, Anthony G. Basile wrote:> From: "Anthony G. Basile"<basile at opensource.dyc.edu> > > The current configure.in file does not correctly make use of these > macros. The resulting configure file will therefore enable an item > even if --disable-FEATURE is given. This patch restores the intended > behavior. > --- > configure.in | 50 +++++++++++++++++++++++++++++++++----------------- > 1 files changed, 33 insertions(+), 17 deletions(-) > > diff --git a/configure.in b/configure.in > index 2ea69f6..a03baf6 100644 > --- a/configure.in > +++ b/configure.in > @@ -73,30 +73,44 @@ case $host_os in > esac > > AC_ARG_ENABLE(uml, > - AS_HELP_STRING([--enable-uml], [enable support for User Mode Linux]), > - [ AC_DEFINE(ENABLE_UML, 1, [Support for UML]) > - uml=true > - ] > + AS_HELP_STRING([--disable-uml], [enable support for User Mode Linux]), > + [ AS_IF([test "x$enable_uml" = "xyes"], > + [ AC_DEFINE(ENABLE_UML, 1, [Support for UML]) > + uml=true > + ], > + [uml=false]) > + ], > + [uml=disable] > ) > > AC_ARG_ENABLE(vde, > - AS_HELP_STRING([--enable-vde], [enable support for Virtual Distributed Ethernet]), > - [ AC_CHECK_HEADERS(libvdeplug_dyn.h, [], [AC_MSG_ERROR([VDE plug header files not found.]); break]) > - AC_DEFINE(ENABLE_VDE, 1, [Support for VDE]) > - vde=true > - ] > + AS_HELP_STRING([--disable-vde], [enable support for Virtual Distributed Ethernet]), > + [ AS_IF([test "x$enable_vde" = "xyes"], > + [ AC_CHECK_HEADERS(libvdeplug_dyn.h, [], [AC_MSG_ERROR([VDE plug header files not found.]); break]) > + AC_DEFINE(ENABLE_VDE, 1, [Support for VDE]) > + vde=true > + ], > + [vde=false]) > + ], > + [vde=false] > ) > > AC_ARG_ENABLE(tunemu, > - AS_HELP_STRING([--enable-tunemu], [enable support for the tunemu driver]), > - [ AC_DEFINE(ENABLE_TUNEMU, 1, [Support for tunemu]) > - tunemu=true > - ] > + AS_HELP_STRING([--disable-tunemu], [enable support for the tunemu driver]), > + [ AS_IF([test "x$enable_tunemu" = "xyes"], > + [ AC_DEFINE(ENABLE_TUNEMU, 1, [Support for tunemu]) > + tunemu=true > + ], > + [tunemu=false]) > + ], > + [tunemu=false] > ) > > AC_ARG_WITH(windows2000, > - AS_HELP_STRING([--with-windows2000], [compile with support for Windows 2000. This disables support for tunneling over existing IPv6 networks.]), > - [AC_DEFINE(WITH_WINDOWS2000, 1, [Compile with support for Windows 2000])] > + AS_HELP_STRING([--without-windows2000], [compile with support for Windows 2000. This disables support for tunneling over existing IPv6 networks.]), > + [ AS_IF([test "x$with_windows2000" = "xyes"], > + [AC_DEFINE(WITH_WINDOWS2000, 1, [Compile with support for Windows 2000])]) > + ] > ) > > AM_CONDITIONAL(UML, test "$uml" = true) > @@ -176,8 +190,10 @@ tinc_OPENSSL > > dnl Check if support for jumbograms is requested > AC_ARG_ENABLE(jumbograms, > - AS_HELP_STRING([--enable-jumbograms], [enable support for jumbograms (packets up to 9000 bytes)]), > - [ AC_DEFINE(ENABLE_JUMBOGRAMS, 1, [Support for jumbograms (packets up to 9000 bytes)]) ] > + AS_HELP_STRING([--disable-jumbograms], [enable support for jumbograms (packets up to 9000 bytes)]), > + [ AS_IF([test "x$enable_jumbograms" = "xyes"], > + [ AC_DEFINE(ENABLE_JUMBOGRAMS, 1, [Support for jumbograms (packets up to 9000 bytes)]) ]) > + ] > ) > > AC_SUBST(INCLUDES)-- Anthony G. Basile, Ph. D. Chair of Information Technology D'Youville College Buffalo, NY 14201 (716) 829-8197