diff options
author | Albert Cheng <acheng@hdfgroup.org> | 2009-09-30 04:24:27 (GMT) |
---|---|---|
committer | Albert Cheng <acheng@hdfgroup.org> | 2009-09-30 04:24:27 (GMT) |
commit | a228881ea7508dccdd863c270910bfc6370fcf2a (patch) | |
tree | 46c0f046d3b950e22f981a99f4d26a4ea82dbefa /configure | |
parent | e35f27461437c7c66051afd909dbe29e7de5cf45 (diff) | |
download | hdf5-a228881ea7508dccdd863c270910bfc6370fcf2a.zip hdf5-a228881ea7508dccdd863c270910bfc6370fcf2a.tar.gz hdf5-a228881ea7508dccdd863c270910bfc6370fcf2a.tar.bz2 |
[svn-r17558] New feature(Bug 230):
Embed the content of libhdf5.settings into the hdf5 executables so that an
"orphaned" executables can display (via the Unix strings command, for example)
the library settings used to build the executables.
configure.in:
Added the --disable-embedded-libinfo option to disable this feature.
configure:
src/H5config.h.in:
fortran/configure
c++/configure
Generated by autotools like automake.
src/H5detect.c:
Implement insert_libhdf5_settings() to insert the contents of
libhdf5.settings into the library as an extern string variable so that it
is included in all HDF5 executable.
test/Makefile.in:
Added test scripts testlibinfo.sh and testcheck_version.sh, test program
tcheck_version. Needed to introduce $PROGS so that tcheck_version is
built but not run automatically.
test/testlibinfo.sh.in:
A new test added to verify the library information is indeed included
in the executables.
H5.c: added code to print the embedded library information when there is
a library versions mis-match occurs. This ensures the library information
string is included in the executable.
Also modifies the code so that the Library mismatch warning string is
included only once in the executable.
H5private.h:
Added a global reference to the libinfo string variable to prepare
for possible stage 3 implementation of a public API.
New test: (Bug ID 1656):
Add new tests (tcheck_version, testcheck_version.sh) to verify H5check_version()
does issue warnings and abort accordingly.
Changed H5check_version() to suppress the warning message totally if
$HDF5_DISABLE_VERSION_CHECK is 2 or higher. (Old behavior treated 3 or higher
the same as 1, that is to print a warning and allows the program to continue.
MANIFEST:
updated with the newly added files.
Tested:
h5committest passed. Also passed jam in serial mode, --enable-static-exec,
--disable-embedded-libinfo.
Diffstat (limited to 'configure')
-rwxr-xr-x | configure | 53 |
1 files changed, 45 insertions, 8 deletions
@@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in Id: configure.in 17436 2009-08-30 19:21:21Z lrknox . +# From configure.in Id: configure.in 17539 2009-09-27 19:39:19Z lrknox . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.61 for HDF5 1.6.9-snap8. # @@ -833,6 +833,7 @@ EXEEXT OBJEXT config_dirs subdirs +STATIC_EXEC LT_STATIC_EXEC PERL AR @@ -873,6 +874,8 @@ CONFIG_MODE BYTESEX WORDS_BIGENDIAN STATIC_SHARED +enable_shared +enable_static CC_VERSION ROOT DYNAMIC_DIRS @@ -1511,6 +1514,8 @@ Optional Features: --enable-strict-format-checks Enable strict file format checks, default=yes if debug flag is enabled, no otherwise + --enable-embedded-libinfo + Enable embedded library information [default=yes] Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -3202,6 +3207,7 @@ fi subdirs="$subdirs ${config_dirs}" + STATIC_EXEC=no { echo "$as_me:$LINENO: checking if should build only statically linked executables" >&5 echo $ECHO_N "checking if should build only statically linked executables... $ECHO_C" >&6; } # Check whether --enable-static_exec was given. @@ -5273,7 +5279,7 @@ test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes case $host in *-*-irix6*) # Find out which ABI we are using. - echo '#line 5276 "configure"' > conftest.$ac_ext + echo '#line 5282 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -5830,7 +5836,7 @@ chmod -w . save_CFLAGS="$CFLAGS" CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" compiler_c_o=no -if { (eval echo configure:5833: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then +if { (eval echo configure:5839: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings if test -s out/conftest.err; then @@ -7705,7 +7711,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 7708 "configure" +#line 7714 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -7803,7 +7809,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 7806 "configure" +#line 7812 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -32206,6 +32212,8 @@ fi + + if (grep '^build_libtool_libs=yes' libtool >/dev/null); then enable_shared=yes else @@ -32345,6 +32353,30 @@ echo "${ECHO_T}no" >&6; } esac +{ echo "$as_me:$LINENO: checking Whether to have library information embedded in the executables" >&5 +echo $ECHO_N "checking Whether to have library information embedded in the executables... $ECHO_C" >&6; } +# Check whether --enable-embedded-libinfo was given. +if test "${enable_embedded_libinfo+set}" = set; then + enableval=$enable_embedded_libinfo; enable_embedded_libinfo=$enableval +else + enable_embedded_libinfo=yes +fi + + + if test "${enable_embedded_libinfo}" = "yes"; then + { echo "$as_me:$LINENO: result: yes" >&5 +echo "${ECHO_T}yes" >&6; } + +cat >>confdefs.h <<\_ACEOF +#define HAVE_EMBEDDED_LIBINFO 1 +_ACEOF + + else + { echo "$as_me:$LINENO: result: no" >&5 +echo "${ECHO_T}no" >&6; } + fi + + COMMENCE=config/commence CONCLUDE=config/conclude @@ -32392,7 +32424,7 @@ if test "X$HDF5_HL" = "Xyes"; then hl/tools/gif2h5/Makefile" fi -ac_config_files="$ac_config_files src/libhdf5.settings config/depend1 config/depend2 config/depend3 config/depend4 config/dependN config/commence config/conclude Makefile src/Makefile test/Makefile $PARALLEL_MAKE perform/Makefile tools/Makefile tools/h5dump/Makefile tools/h5dump/testh5dump.sh tools/h5ls/testh5ls.sh tools/h5import/Makefile tools/h5diff/Makefile tools/h5jam/Makefile tools/h5jam/testh5jam.sh tools/h5repack/Makefile tools/h5repack/h5repack.sh tools/h5ls/Makefile tools/lib/Makefile tools/misc/Makefile tools/misc/h5cc examples/Makefile examples/testh5cc.sh doc/Makefile doc/html/Makefile doc/html/ed_libs/Makefile doc/html/ed_styles/Makefile doc/html/ADGuide/Makefile doc/html/Graphics/Makefile doc/html/Intro/Makefile doc/html/PSandPDF/Makefile doc/html/TechNotes/Makefile doc/html/cpplus/Makefile doc/html/cpplus_RM/Makefile doc/html/cpplus_RM/header_files/Makefile doc/html/fortran/Makefile $HL_FILES" +ac_config_files="$ac_config_files src/libhdf5.settings config/depend1 config/depend2 config/depend3 config/depend4 config/dependN config/commence config/conclude Makefile src/Makefile test/Makefile test/testcheck_version.sh test/testlibinfo.sh $PARALLEL_MAKE perform/Makefile tools/Makefile tools/h5dump/Makefile tools/h5dump/testh5dump.sh tools/h5ls/testh5ls.sh tools/h5import/Makefile tools/h5diff/Makefile tools/h5jam/Makefile tools/h5jam/testh5jam.sh tools/h5repack/Makefile tools/h5repack/h5repack.sh tools/h5ls/Makefile tools/lib/Makefile tools/misc/Makefile tools/misc/h5cc examples/Makefile examples/testh5cc.sh doc/Makefile doc/html/Makefile doc/html/ed_libs/Makefile doc/html/ed_styles/Makefile doc/html/ADGuide/Makefile doc/html/Graphics/Makefile doc/html/Intro/Makefile doc/html/PSandPDF/Makefile doc/html/TechNotes/Makefile doc/html/cpplus/Makefile doc/html/cpplus_RM/Makefile doc/html/cpplus_RM/header_files/Makefile doc/html/fortran/Makefile $HL_FILES" cat >confcache <<\_ACEOF @@ -32970,6 +33002,8 @@ do "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; "test/Makefile") CONFIG_FILES="$CONFIG_FILES test/Makefile" ;; + "test/testcheck_version.sh") CONFIG_FILES="$CONFIG_FILES test/testcheck_version.sh" ;; + "test/testlibinfo.sh") CONFIG_FILES="$CONFIG_FILES test/testlibinfo.sh" ;; "$PARALLEL_MAKE") CONFIG_FILES="$CONFIG_FILES $PARALLEL_MAKE" ;; "perform/Makefile") CONFIG_FILES="$CONFIG_FILES perform/Makefile" ;; "tools/Makefile") CONFIG_FILES="$CONFIG_FILES tools/Makefile" ;; @@ -33126,6 +33160,7 @@ EXEEXT!$EXEEXT$ac_delim OBJEXT!$OBJEXT$ac_delim config_dirs!$config_dirs$ac_delim subdirs!$subdirs$ac_delim +STATIC_EXEC!$STATIC_EXEC$ac_delim LT_STATIC_EXEC!$LT_STATIC_EXEC$ac_delim PERL!$PERL$ac_delim AR!$AR$ac_delim @@ -33156,7 +33191,6 @@ INSTRUMENT_LIBRARY!$INSTRUMENT_LIBRARY$ac_delim CLEARFILEBUF!$CLEARFILEBUF$ac_delim MPE!$MPE$ac_delim MPI_GET_SIZE!$MPI_GET_SIZE$ac_delim -FILTERS!$FILTERS$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 88; then @@ -33210,6 +33244,7 @@ _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF +FILTERS!$FILTERS$ac_delim USE_FILTER_SHUFFLE!$USE_FILTER_SHUFFLE$ac_delim USE_FILTER_FLETCHER32!$USE_FILTER_FLETCHER32$ac_delim H5_VERSION!$H5_VERSION$ac_delim @@ -33219,6 +33254,8 @@ CONFIG_MODE!$CONFIG_MODE$ac_delim BYTESEX!$BYTESEX$ac_delim WORDS_BIGENDIAN!$WORDS_BIGENDIAN$ac_delim STATIC_SHARED!$STATIC_SHARED$ac_delim +enable_shared!$enable_shared$ac_delim +enable_static!$enable_static$ac_delim CC_VERSION!$CC_VERSION$ac_delim ROOT!$ROOT$ac_delim DYNAMIC_DIRS!$DYNAMIC_DIRS$ac_delim @@ -33230,7 +33267,7 @@ LIBOBJS!$LIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 18; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 21; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 |