summaryrefslogtreecommitdiffstats
path: root/configure.in
diff options
context:
space:
mode:
authorAlbert Cheng <acheng@hdfgroup.org>2008-05-15 05:12:00 (GMT)
committerAlbert Cheng <acheng@hdfgroup.org>2008-05-15 05:12:00 (GMT)
commit7b7f10a4448122cc7d2996f748f47df7436f9605 (patch)
tree352d4bbf9b5036b9ac1833908ffd07dba3e1a456 /configure.in
parentc57a9ec023e85e9ee4a712fbb6ffcbdeb801019d (diff)
downloadhdf5-7b7f10a4448122cc7d2996f748f47df7436f9605.zip
hdf5-7b7f10a4448122cc7d2996f748f47df7436f9605.tar.gz
hdf5-7b7f10a4448122cc7d2996f748f47df7436f9605.tar.bz2
[svn-r15003] Purpose:
Improvement. Description: src/libhdf5.settings was the initial configure summary and is installed. Then configure is changed to dump a summary of the configure settings to the output and also append it to src/libhdf5.settings. That created two different output formats and duplicated information. This is the initial attempt to clean up this confusion and unify the output format. It is decided to use the src/libhdf5.settings template as the unified means. This requires more macros symbols be defined. The following symbols are all related to generating the src/libhdf5.settings file. AC_SUBST(EXTERNAL_FILTERS) AC_SUBST(MPE) MPE=no AC_SUBST(STATIC_EXEC) STATIC_EXEC=no AC_SUBST(HDF_FORTRAN) HDF_FORTRAN=no AC_SUBST(FC) HDF_FORTRAN=no AC_SUBST(HDF_CXX) HDF_CXX=no AC_SUBST(CXX) HDF_CXX=no AC_SUBST(HDF5_HL) HDF5_HL=yes AC_SUBST(GPFS) GPFS=no AC_SUBST(LINUX_LFS) LINUX_LFS=no AC_SUBST(INSTRUMENT) INSTRUMENT=no AC_SUBST(CODESTACK) CODESTACK=no AC_SUBST(HAVE_DMALLOC) HAVE_DMALLOC=no AC_SUBST(DIRECT_VFD) DIRECT_VFD=no AC_SUBST(THREADSAFE) THREADSAFE=no AC_SUBST(STATIC_SHARED) AC_SUBST(enable_shared) AC_SUBST(enable_static) AC_SUBST(UNAME_INFO) UNAME_INFO=`uname -a` The src/libhdf5.settings.in has CONDITIONAL's added to it too. The untrue conditions turned into a "#" and these lines are cleaned by the post processing script. Platform tested: h5committest on kagiso, smirom and linew.
Diffstat (limited to 'configure.in')
-rw-r--r--configure.in66
1 files changed, 63 insertions, 3 deletions
diff --git a/configure.in b/configure.in
index f333892..86ce010 100644
--- a/configure.in
+++ b/configure.in
@@ -48,6 +48,14 @@ dnl Developers should './configure --enable-maintainer-mode' to turn on
dnl rebuild rules.
AM_MAINTAINER_MODE
+dnl Run post processing on files created by configure.
+dnl src/H5pubconf.h:
+dnl Generate src/H5pubconf.h from src/H5config.h by prepending H5_ to all
+dnl macro names. This avoid name conflict between HDF5 macro names and those
+dnl generated by another software package that uses the HDF5 library.
+dnl src/libhdf5.settings:
+dnl Remove all lines begun with "#" which are generated by CONDITIONAL's of
+dnl configure.
AC_OUTPUT_COMMANDS([
echo "creating src/H5pubconf.h"
sed 's/#define /#define H5_/' <src/H5config.h |\
@@ -60,6 +68,13 @@ AC_OUTPUT_COMMANDS([
else
/bin/mv -f pubconf src/H5pubconf.h
fi
+ echo "Post process src/libhdf5.settings"
+cat src/libhdf5.settings
+ sed '/^#/d' < src/libhdf5.settings > libhdf5.settings.TMP
+ cp libhdf5.settings.TMP src/libhdf5.settings
+ rm -f libhdf5.settings.TMP
+echo result
+cat src/libhdf5.settings
])
dnl It's possible to configure for a host other than the one on which
@@ -112,6 +127,47 @@ AC_MSG_CHECKING([shell variables initial values])
set >&AS_MESSAGE_LOG_FD
AC_MSG_RESULT([done])
+dnl Define all symbol variables used for configure summary.
+dnl EXTERNAL_FILTERS equals all external filters. Default none.
+dnl MPE: whether MPE option is enabled. Default no.
+dnl STATIC_EXEC: whether static-exec is enabled. Default no.
+dnl HDF_FORTRAN: whether Fortran is enabled. Default no.
+dnl FC: Fortran compiler.
+dnl HDF_CXX: whether C++ is enabled. Default no.
+dnl CXX: C++ compiler.
+dnl HDF5_HL: whether high-level library is enabled. Default is yes.
+dnl GPFS: whether gpfs is enabled. Default no.
+dnl LINUX_LFS: whether LINUX_LFS is enabled. Default no.
+dnl INSTRUMENT: whether INSTRUMENT is enabled. Default no.
+dnl CODESTACK: whether CODESTACK is enabled. Default no.
+dnl HAVE_DMALLOC: whether system has dmalloc support. Default no.
+dnl DIRECT_VFD: whether DIRECT_VFD is enabled. Default no.
+dnl THREADSAFE: whether THREADSAFE is enabled. Default no.
+dnl STATIC_SHARED: whether static and/or shared libraries are requested.
+dnl enable_shared: whether shared lib is enabled.
+dnl enable_static: whether static lib is enabled.
+dnl UNAME_INFO: System information.
+
+AC_SUBST(EXTERNAL_FILTERS)
+AC_SUBST(MPE) MPE=no
+AC_SUBST(STATIC_EXEC) STATIC_EXEC=no
+AC_SUBST(HDF_FORTRAN) HDF_FORTRAN=no
+AC_SUBST(FC) HDF_FORTRAN=no
+AC_SUBST(HDF_CXX) HDF_CXX=no
+AC_SUBST(CXX) HDF_CXX=no
+AC_SUBST(HDF5_HL) HDF5_HL=yes
+AC_SUBST(GPFS) GPFS=no
+AC_SUBST(LINUX_LFS) LINUX_LFS=no
+AC_SUBST(INSTRUMENT) INSTRUMENT=no
+AC_SUBST(CODESTACK) CODESTACK=no
+AC_SUBST(HAVE_DMALLOC) HAVE_DMALLOC=no
+AC_SUBST(DIRECT_VFD) DIRECT_VFD=no
+AC_SUBST(THREADSAFE) THREADSAFE=no
+AC_SUBST(STATIC_SHARED)
+AC_SUBST(enable_shared)
+AC_SUBST(enable_static)
+AC_SUBST(UNAME_INFO) UNAME_INFO=`uname -a`
+
dnl ----------------------------------------------------------------------
dnl Some platforms have broken basename, and/or xargs programs. Check
dnl that it actually does what it's supposed to do. Catch this early
@@ -2436,7 +2492,7 @@ if test -n "$PARALLEL"; then
dnl This must be done after enable-parallel is checked since it depends
dnl on a mpich compiler.
dnl
- AC_SUBST([MPE]) MPE=yes
+ MPE=yes
AC_ARG_WITH([mpe],
[AC_HELP_STRING([--with-mpe=DIR],
[Use MPE instrumentation [default=no]])],,
@@ -3803,7 +3859,6 @@ dnl $enable_static and $enable_shared because if they're yes the ltconfig
dnl might have decided that one or the other is simply not possible.
dnl Therefore we have to ask the generated `libtool' shell script
dnl which 'features' it has enabled.
-AC_SUBST([STATIC_SHARED])
if (./libtool --features | grep '^enable shared libraries' > /dev/null); then
enable_shared=yes
else
@@ -3846,6 +3901,11 @@ cat >> src/H5config.h <<EOF
#endif
EOF
+dnl show the configure settings
+cat src/libhdf5.settings
+
+if false; then
+dnl ============ old code to be removed ================
dnl ----------------------------------------------------------------------
dnl Print out a summary of what we are going to build.
dnl
@@ -4053,4 +4113,4 @@ IF_ENABLED_DISABLED "$THREADSAFE"
PRINT_N " High Level library"
IF_ENABLED_DISABLED "$HDF5_HL"
-
+fi