Set default variable to allow both --enable-x/--disable-x and --with-x/--without-x to work as expected. bicatali@gentoo.org 08/2012 --- configure.ac.orig 2012-08-20 17:46:41.000000000 +0100 +++ configure.ac 2012-08-20 17:56:23.000000000 +0100 @@ -37,7 +37,7 @@ # Option to disable Fortran (benchmarks will not compile) AC_MSG_CHECKING([whether to enable Fortran compilation for benchmark codes]) AC_ARG_ENABLE(fortran, - AS_HELP_STRING([--enable-fortran],[Enable Fortran compilation]),,[ + AS_HELP_STRING([--enable-fortran],[Enable Fortran compilation]),enable_fortran=$enableval,[ enable_fortran="yes"]) AC_MSG_RESULT([$enable_fortran]) AM_CONDITIONAL(FORTRAN_ENABLED, [test $enable_fortran = yes]) @@ -96,7 +96,7 @@ # Option to enable thread-safety (requires thread support or OpenMP) AC_MSG_CHECKING([whether to enable Blitz thread-safety features]) AC_ARG_ENABLE(threadsafe, - AS_HELP_STRING([--enable-threadsafe],[Enable thread-safety features]),,[ + AS_HELP_STRING([--enable-threadsafe],[Enable thread-safety features]),enable_threadsafe=$enableval,[ enable_threadsafe="no"]) AC_MSG_RESULT([$enable_threadsafe]) if test "$enable_threadsafe" = yes; then @@ -106,17 +106,22 @@ AC_MSG_CHECKING([if we are using Intel Threading Building Blocks]) AC_ARG_WITH([tbb], AS_HELP_STRING([--with-tbb],[Use Intel Threading Building Blocks atomic types]), - [ + [if test x$withval != xno; then AC_MSG_RESULT([yes]) AC_CHECK_HEADERS([tbb/atomic.h],,AC_MSG_ERROR([tbb/atomic.h not found])) AC_DEFINE([THREADSAFE_USE_TBB],[1],[Use TBB atomic types]) + else + AC_MSG_RESULT([no]) + fi ],AC_MSG_RESULT([no])) AC_MSG_CHECKING([for SIMD instruction width]) AC_ARG_ENABLE([simd-width], AS_HELP_STRING([--enable-simd-width=n],[Facilitate compiler vectorization optimizations for SIMD instruction width of n bytes.]), - [ AC_ALIGNMENT_DIRECTIVE - AC_DEFINE([USE_ALIGNMENT_PRAGMAS],[1],[Specifies whether compiler alignment pragmas should be used]) ], + [if test x$enableval != xno; then + AC_ALIGNMENT_DIRECTIVE + AC_DEFINE([USE_ALIGNMENT_PRAGMAS],[1],[Specifies whether compiler alignment pragmas should be used]) + fi ], [enable_simd_width=no] ) AC_MSG_RESULT([$enable_simd_width]) @@ -130,12 +135,15 @@ AC_MSG_CHECKING([whether to pad array lengths to SIMD instruction width]) AC_ARG_ENABLE([array-length-padding], AS_HELP_STRING([--enable-array-length-padding],[Sets the default array padding policy to pad all lowest-rank lengths to nearest larger SIMD width. Caution: This means that arrays will in general be non-contiguous.]), - [ + [if test x$enableval != xno; then AC_MSG_RESULT([yes]) if test "$enable_simd_width" == [1] ; then AC_MSG_WARN([This option is useless without a SIMD width >1.]) fi AC_DEFINE([PAD_ARRAYS],1,[Pad array lengths to SIMD width.]) + else + AC_MSG_RESULT([no]) + fi ],AC_MSG_RESULT([no])) AC_MSG_CHECKING([whether to enable Blitz 64-bit dimensions]) @@ -147,10 +155,14 @@ AC_MSG_CHECKING([whether to enable serialization support]) AC_ARG_ENABLE([serialization], AS_HELP_STRING([--enable-serialization],[Enable serialization support using Boost::Serialization]), [ + if test x$enableval != xno; then AC_MSG_RESULT([yes]) AX_BOOST_BASE([1.40.0]) AX_BOOST_SERIALIZATION AC_CHECK_HEADERS([boost/mpi.hpp]) + else + AC_MSG_RESULT([no]) + fi ], AC_MSG_RESULT([no])) # check for PAPI library diff -Nur m4.orig/ac_prog_doxygen.m4 m4/ac_prog_doxygen.m4 --- m4.orig/ac_prog_doxygen.m4 2012-08-20 18:03:12.000000000 +0100 +++ m4/ac_prog_doxygen.m4 2012-08-20 18:00:46.000000000 +0100 @@ -3,16 +3,16 @@ AC_DEFUN([AC_PROG_DOXYGEN], [ AC_ARG_ENABLE(doxygen, -AS_HELP_STRING([--enable-doxygen],[enable documentation generation with doxygen (no)]),[],[enable_doxygen=no]) +AS_HELP_STRING([--enable-doxygen],[enable documentation generation with doxygen (no)]),[enable_doxygen=$enableval],[enable_doxygen=no]) AC_ARG_ENABLE(dot, -AS_HELP_STRING([--enable-dot],[use 'dot' to generate graphs in doxygen (no)]),[],[enable_dot=no]) +AS_HELP_STRING([--enable-dot],[use 'dot' to generate graphs in doxygen (no)]),[enable_dot=$enableval],[enable_dot=no]) AC_ARG_ENABLE(html-docs, AS_HELP_STRING([--enable-html-docs],[enable HTML generation with doxygen (no)]), -[],[ enable_html_docs=no]) +[enable_html_docs=$enableval],[ enable_html_docs=no]) AC_ARG_ENABLE(latex-docs, AS_HELP_STRING([--enable-latex-docs], -[enable LaTeX documentation generation with doxygen (no)]),[],[enable_latex_docs=no]) +[enable LaTeX documentation generation with doxygen (no)]),[enable_latex_docs=$enableval],[enable_latex_docs=no]) if test "x$enable_doxygen" = xno; then enable_doc=no