From 33beeb7f55193bc76a7544f9fe3634718f36352d Mon Sep 17 00:00:00 2001 From: James Laird Date: Tue, 13 Sep 2005 17:30:33 -0500 Subject: [svn-r11411] Purpose: Bug fix Description: Building with --disable-static seems to have been broken on several platforms. Fixed this. Configure will now disable shared libraries automatically when using pgf90 or when building on Cygwin. Solution: To avoid errors when using shared libraries with pgf90 (which I had not realized were compiler-specific), I had manually set convenience libraries to use the -static linking flag. Apparently, this is not necessary, and caused these libraries to be created as empty archives when --disable-static was used. Also, some libraries were including other libraries, which was not necessary. I also fixed code in configure.in to correctly detect whether shared or static libraries are enabled, and moved code that disables shared libraries to before libtool is created (rather than editing libtool after the fact). Despite repeated warnings that only one shared library can be linked at a time, I have yet to have shared libraries break the linking of tests on any system. We'll see if the Daily Tests turn up anything. Platforms tested: mir (fortran, C++), sleipnir (C++), modi4 (fortran, C++, parallel), sol (fortran, C++), cygwin --- c++/src/Makefile.am | 5 --- c++/src/Makefile.in | 5 --- c++/test/Makefile.am | 3 -- c++/test/Makefile.in | 3 -- configure | 102 +++++++++++++++++++++++++------------------- configure.in | 78 ++++++++++++++++++++------------- fortran/src/Makefile.am | 3 -- fortran/src/Makefile.in | 3 -- fortran/test/Makefile.am | 7 +-- fortran/test/Makefile.in | 70 ++++++++---------------------- fortran/testpar/Makefile.am | 3 -- fortran/testpar/Makefile.in | 3 -- hl/c++/src/Makefile.am | 5 --- hl/c++/src/Makefile.in | 5 --- hl/c++/test/Makefile.am | 3 -- hl/c++/test/Makefile.in | 3 -- hl/fortran/src/Makefile.am | 3 -- hl/fortran/src/Makefile.in | 3 -- hl/fortran/test/Makefile.am | 3 -- hl/fortran/test/Makefile.in | 3 -- perform/Makefile.am | 10 ++--- perform/Makefile.in | 22 +++++----- src/Makefile.in | 23 +++++----- test/Makefile.am | 8 +--- test/Makefile.in | 33 ++++++-------- testpar/Makefile.am | 2 +- testpar/Makefile.in | 6 +-- tools/lib/Makefile.am | 9 +--- tools/lib/Makefile.in | 8 +--- 29 files changed, 177 insertions(+), 257 deletions(-) diff --git a/c++/src/Makefile.am b/c++/src/Makefile.am index 1cd499c..b828d2f 100644 --- a/c++/src/Makefile.am +++ b/c++/src/Makefile.am @@ -22,11 +22,6 @@ include $(top_srcdir)/config/commence.am # Include src directory INCLUDES=-I$(top_srcdir)/src -# Build the library statically because some compliers can only link one -# dynamic library, and that's the main hdf5 library (which is much larger -# than this one). -AM_LDFLAGS=-static - # This is our main target lib_LTLIBRARIES=libhdf5_cpp.la diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in index f475b6a..75e2228 100644 --- a/c++/src/Makefile.in +++ b/c++/src/Makefile.in @@ -322,11 +322,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Include src directory INCLUDES = -I$(top_srcdir)/src -# Build the library statically because some compliers can only link one -# dynamic library, and that's the main hdf5 library (which is much larger -# than this one). -AM_LDFLAGS = -static - # This is our main target lib_LTLIBRARIES = libhdf5_cpp.la bin_SCRIPTS = h5c++ diff --git a/c++/test/Makefile.am b/c++/test/Makefile.am index 8d2627a..2f5edf5 100644 --- a/c++/test/Makefile.am +++ b/c++/test/Makefile.am @@ -22,9 +22,6 @@ include $(top_srcdir)/config/commence.am # Include src, test, and c++/src directories INCLUDES=-I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/c++/src -# C++ libraries and tests are built statically -AM_LDFLAGS=-static - # These are our main targets. They should be listed in the order to be # executed, generally most specific tests to least specific tests. TEST_PROG=dsets testhdf5 diff --git a/c++/test/Makefile.in b/c++/test/Makefile.in index b1098e5..bf82934 100644 --- a/c++/test/Makefile.in +++ b/c++/test/Makefile.in @@ -311,9 +311,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Include src, test, and c++/src directories INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/test -I$(top_srcdir)/c++/src -# C++ libraries and tests are built statically -AM_LDFLAGS = -static - # These are our main targets. They should be listed in the order to be # executed, generally most specific tests to least specific tests. TEST_PROG = dsets testhdf5 diff --git a/configure b/configure index dfe6737..5d158ca 100755 --- a/configure +++ b/configure @@ -5822,6 +5822,35 @@ test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' +if (${CC-cc} -V 2>&1 | grep '^pgcc') > /dev/null; then + echo ' warning: shared libraries are not supported for pgcc!' + echo ' disabling shared libraries' + enable_shared="no" +fi + +if test "X$HDF_FORTRAN" = "Xyes" && \ + (${FC} -V 2>&1 | grep '^pgf90') > /dev/null; then + echo ' warning: shared libraries are not supported for pgf90!' + echo ' disabling shared libraries' + enable_shared="no" +fi + +if (${CC-cc} -V 2>&1 | grep '^pgcc 6.0') > /dev/null && test "X$enable_production" = "Xyes"; then + echo 'adding compiler flag to avoid optimization problem in pgcc' + CC="${CC-cc} -Mx,28,0x8" +fi + +case "`uname`" in + CYGWIN*) + if test "X${enable_shared}" = "Xyes"; then + echo ' warning: shared libraries are not supported on Cygwin!' + echo ' disabling shared libraries' + fi + enable_shared="no" + ;; +esac + + # Check whether --enable-shared or --disable-shared was given. if test "${enable_shared+set}" = set; then @@ -6374,7 +6403,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 6377 "configure"' > conftest.$ac_ext + echo '#line 6406 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7504,7 +7533,7 @@ fi # Provide some information about the compiler. -echo "$as_me:7507:" \ +echo "$as_me:7536:" \ "checking for Fortran 77 compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 @@ -8573,11 +8602,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8576: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8605: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8580: \$? = $ac_status" >&5 + echo "$as_me:8609: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -8828,11 +8857,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8831: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8860: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8835: \$? = $ac_status" >&5 + echo "$as_me:8864: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -8888,11 +8917,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8891: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8920: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8895: \$? = $ac_status" >&5 + echo "$as_me:8924: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11160,7 +11189,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&5) + (eval echo "\"\$as_me:13526: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13501: \$? = $ac_status" >&5 + echo "$as_me:13530: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -13554,11 +13583,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13557: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13586: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13561: \$? = $ac_status" >&5 + echo "$as_me:13590: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -14973,7 +15002,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&5) + (eval echo "\"\$as_me:15958: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15933: \$? = $ac_status" >&5 + echo "$as_me:15962: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -15986,11 +16015,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15989: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16018: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:15993: \$? = $ac_status" >&5 + echo "$as_me:16022: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -18042,11 +18071,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18045: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18074: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:18049: \$? = $ac_status" >&5 + echo "$as_me:18078: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -18297,11 +18326,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18300: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18329: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:18304: \$? = $ac_status" >&5 + echo "$as_me:18333: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings @@ -18357,11 +18386,11 @@ else -e 's:.*FLAGS}? :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:18360: $lt_compile\"" >&5) + (eval echo "\"\$as_me:18389: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:18364: \$? = $ac_status" >&5 + echo "$as_me:18393: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -20629,7 +20658,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext < conftest.$ac_ext <&1 | grep '^pgcc') > /dev/null; then - echo 'disabling shared libraries for pgcc' -ed - $ofile < /dev/null -/^build_libtool_libs=yes/s//build_libtool_libs=no/ -w -q -EOF -fi - -if (${CC-cc} -V 2>&1 | grep '^pgcc 6.0') > /dev/null && test "X$enable_production" = "Xyes"; then - CC="${CC-cc} -Mx,28,0x8" -fi - case "$INSTALL" in *install-sh*) INSTALL='\${top_srcdir}/bin/install-sh -c' @@ -50877,13 +50893,13 @@ else fi -if (grep '^build_libtool_libs=yes' libtool >/dev/null); then +if (./libtool --features | grep '^enable shared libraries' > /dev/null); then enable_shared=yes else enable_shared=no fi -if (grep '^build_old_libs=yes' libtool >/dev/null); then +if (./libtool --features | grep '^enable static libraries' > /dev/null); then enable_static=yes else enable_static=no diff --git a/configure.in b/configure.in index cbc127a..7216b8e 100644 --- a/configure.in +++ b/configure.in @@ -498,6 +498,51 @@ export AR AC_PROG_MAKE_SET AC_PROG_INSTALL + +dnl ---------------------------------------------------------------------- +dnl As of Libtool 1.5.14, libtool officially doesn't know how to create +dnl shared libraries with pgcc. In fact, it is able to do so on some +dnl platforms, but not all (e.g., pgcc 5.2-4 on mir). +dnl Disable shared libraries when using pgcc. -JL 09/2005 +if (${CC-cc} -V 2>&1 | grep '^pgcc') > /dev/null; then + echo ' warning: shared libraries are not supported for pgcc!' + echo ' disabling shared libraries' + enable_shared="no" +fi + +dnl A similar problem seems to exist for pgf90 version 6.0-4. +if test "X$HDF_FORTRAN" = "Xyes" && \ + (${FC} -V 2>&1 | grep '^pgf90') > /dev/null; then + echo ' warning: shared libraries are not supported for pgf90!' + echo ' disabling shared libraries' + enable_shared="no" +fi + +dnl ---------------------------------------------------------------------- +dnl pgcc version 6.0x have optimization (-O, -O2 or -O3) problem. Detect +dnl these versions and add option "-Mx,28,0x8" to the compiler to avoid +dnl the problem if optimization is enabled. +dnl +if (${CC-cc} -V 2>&1 | grep '^pgcc 6.0') > /dev/null && test "X$enable_production" = "Xyes"; then + echo 'adding compiler flag to avoid optimization problem in pgcc' + CC="${CC-cc} -Mx,28,0x8" +fi + +dnl ---------------------------------------------------------------------- +dnl Shared libraries are not currently supported under Cygwin. +case "`uname`" in + CYGWIN*) + if test "X${enable_shared}" = "Xyes"; then + echo ' warning: shared libraries are not supported on Cygwin!' + echo ' disabling shared libraries' + fi + enable_shared="no" + ;; +esac + +dnl ---------------------------------------------------------------------- +dnl Create libtool. If shared/static libraries are going to be enabled +dnl or disabled, it should happen before these macros. AC_LIBTOOL_DLOPEN AM_PROG_LIBTOOL @@ -519,30 +564,6 @@ EOF ;; esac -dnl As of Libtool 1.5.14, libtool officially doesn't know how to create -dnl shared libraries with pgcc. In fact, it is able to do so on a number -dnl of platforms, but not all (e.g., pgcc 5.2-4 on mir). There is discussion -dnl online which will hopefully resolve this issue, but in the meantime -dnl we disable support for shared libraries using pgcc because this issue -dnl is difficult to detect. -JL 03/2005 -if (${CC-cc} -V 2>&1 | grep '^pgcc') > /dev/null; then - echo 'disabling shared libraries for pgcc' -ed - $ofile < /dev/null -/^build_libtool_libs=yes/s//build_libtool_libs=no/ -w -q -EOF -fi - -dnl ---------------------------------------------------------------------- -dnl pgcc version 6.0x have optimization (-O, -O2 or -O3) problem. Detect -dnl these versions and add option "-Mx,28,0x8" to the compiler to avoid -dnl the problem if optimization is enable. -dnl -if (${CC-cc} -V 2>&1 | grep '^pgcc 6.0') > /dev/null && test "X$enable_production" = "Xyes"; then - CC="${CC-cc} -Mx,28,0x8" -fi - dnl Fix up the INSTALL macro if it's a relative path. We want the dnl full-path to the binary instead. case "$INSTALL" in @@ -2937,17 +2958,16 @@ dnl Are we compiling static libraries, shared libraries, or both? This dnl is only used for the libhdf5.settings file. We can't just look at 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 look in the generated `libtool' shell script for -dnl lines that set the value of `build_libtool_libs' (shared) and -dnl `build_old_libs' (static). +dnl Therefore we have to ask the generated `libtool' shell script +dnl which 'features' it has enabled. AC_SUBST([STATIC_SHARED]) -if (grep '^build_libtool_libs=yes' libtool >/dev/null); then +if (./libtool --features | grep '^enable shared libraries' > /dev/null); then enable_shared=yes else enable_shared=no fi -if (grep '^build_old_libs=yes' libtool >/dev/null); then +if (./libtool --features | grep '^enable static libraries' > /dev/null); then enable_static=yes else enable_static=no diff --git a/fortran/src/Makefile.am b/fortran/src/Makefile.am index 481eb89..9b83a9d 100644 --- a/fortran/src/Makefile.am +++ b/fortran/src/Makefile.am @@ -26,9 +26,6 @@ AM_FCFLAGS=-I$(top_srcdir)/src -I$(top_srcdir)/src/fortran AM_FCLIBS=$(LIBHDF5) -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS=-static - # This is our main target, the fortran library lib_LTLIBRARIES=libhdf5_fortran.la diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in index f91e7a8..ab6fb9a 100644 --- a/fortran/src/Makefile.in +++ b/fortran/src/Makefile.in @@ -350,9 +350,6 @@ INCLUDES = -I$(top_srcdir)/src AM_FCFLAGS = -I$(top_srcdir)/src -I$(top_srcdir)/src/fortran AM_FCLIBS = $(LIBHDF5) -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS = -static - # This is our main target, the fortran library lib_LTLIBRARIES = libhdf5_fortran.la @BUILD_PARALLEL_CONDITIONAL_FALSE@PARALLEL_COND_SRC = HDF5.f90 diff --git a/fortran/test/Makefile.am b/fortran/test/Makefile.am index 4c9d910..079119e 100644 --- a/fortran/test/Makefile.am +++ b/fortran/test/Makefile.am @@ -23,11 +23,8 @@ include $(top_srcdir)/config/commence.am AM_FCFLAGS=-I$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src INCLUDES=-I$(top_srcdir)/src -I$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS=-static - # The Fortran test library -lib_LTLIBRARIES=libh5test_fortran.la +noinst_LTLIBRARIES=libh5test_fortran.la # Our main targets, the tests themselves TEST_PROG=fortranlib_test fflush1 fflush2 @@ -49,9 +46,7 @@ fortranlib_test_SOURCES = fortranlib_test.f90 \ fflush1_SOURCES=fflush1.f90 fflush2_SOURCES=fflush2.f90 -# The fortran test library depends on the main fortran library. # The tests depend on both fortran libraries and both main libraries. -LIBADD=$(LIBH5TEST) $(LIBHDF5) $(LIBH5F) LDADD=libh5test_fortran.la $(LIBH5TEST) $(LIBH5F) $(LIBHDF5) # Temporary files diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in index e232ef3..ad8b493 100644 --- a/fortran/test/Makefile.in +++ b/fortran/test/Makefile.in @@ -66,15 +66,7 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs CONFIG_HEADER = $(top_builddir)/src/H5config.h CONFIG_CLEAN_FILES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = "$(DESTDIR)$(libdir)" -libLTLIBRARIES_INSTALL = $(INSTALL) -LTLIBRARIES = $(lib_LTLIBRARIES) +LTLIBRARIES = $(noinst_LTLIBRARIES) libh5test_fortran_la_LIBADD = am_libh5test_fortran_la_OBJECTS = fortranlib_test.lo tH5F.lo tH5D.lo \ tH5R.lo tH5S.lo tH5T.lo tH5VL.lo tH5Z.lo tH5Sselect.lo tH5P.lo \ @@ -352,11 +344,8 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.h5 AM_FCFLAGS = -I$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src INCLUDES = -I$(top_srcdir)/src -I$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS = -static - # The Fortran test library -lib_LTLIBRARIES = libh5test_fortran.la +noinst_LTLIBRARIES = libh5test_fortran.la # Our main targets, the tests themselves TEST_PROG = fortranlib_test fflush1 fflush2 @@ -377,9 +366,7 @@ fortranlib_test_SOURCES = fortranlib_test.f90 \ fflush1_SOURCES = fflush1.f90 fflush2_SOURCES = fflush2.f90 -# The fortran test library depends on the main fortran library. # The tests depend on both fortran libraries and both main libraries. -LIBADD = $(LIBH5TEST) $(LIBHDF5) $(LIBH5F) LDADD = libh5test_fortran.la $(LIBH5TEST) $(LIBH5F) $(LIBHDF5) MOSTLYCLEANFILES = *.tmp @@ -436,35 +423,17 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -install-libLTLIBRARIES: $(lib_LTLIBRARIES) - @$(NORMAL_INSTALL) - test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)" - @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ - if test -f $$p; then \ - f=$(am__strip_dir) \ - echo " $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) '$$p' '$(DESTDIR)$(libdir)/$$f'"; \ - $(LIBTOOL) --mode=install $(libLTLIBRARIES_INSTALL) $(INSTALL_STRIP_FLAG) "$$p" "$(DESTDIR)$(libdir)/$$f"; \ - else :; fi; \ - done -uninstall-libLTLIBRARIES: - @$(NORMAL_UNINSTALL) - @set -x; list='$(lib_LTLIBRARIES)'; for p in $$list; do \ - p=$(am__strip_dir) \ - echo " $(LIBTOOL) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$p'"; \ - $(LIBTOOL) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$p"; \ - done - -clean-libLTLIBRARIES: - -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) - @list='$(lib_LTLIBRARIES)'; for p in $$list; do \ +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ test "$$dir" != "$$p" || dir=.; \ echo "rm -f \"$${dir}/so_locations\""; \ rm -f "$${dir}/so_locations"; \ done libh5test_fortran.la: $(libh5test_fortran_la_OBJECTS) $(libh5test_fortran_la_DEPENDENCIES) - $(FCLINK) -rpath $(libdir) $(libh5test_fortran_la_LDFLAGS) $(libh5test_fortran_la_OBJECTS) $(libh5test_fortran_la_LIBADD) $(LIBS) + $(FCLINK) $(libh5test_fortran_la_LDFLAGS) $(libh5test_fortran_la_OBJECTS) $(libh5test_fortran_la_LIBADD) $(LIBS) clean-checkPROGRAMS: @list='$(check_PROGRAMS)'; for p in $$list; do \ @@ -717,9 +686,6 @@ check-am: all-am check: check-am all-am: Makefile $(LTLIBRARIES) all-local installdirs: - for dir in "$(DESTDIR)$(libdir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ - done install: install-am install-exec: install-exec-am install-data: install-data-am @@ -747,8 +713,8 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-checkPROGRAMS clean-generic clean-libLTLIBRARIES \ - clean-libtool mostlyclean-am +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-noinstLTLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) @@ -768,7 +734,7 @@ info-am: install-data-am: -install-exec-am: install-libLTLIBRARIES +install-exec-am: install-info: install-info-am @@ -794,21 +760,19 @@ ps: ps-am ps-am: -uninstall-am: uninstall-info-am uninstall-libLTLIBRARIES +uninstall-am: uninstall-info-am .PHONY: CTAGS GTAGS all all-am all-local check check-TESTS check-am \ - clean clean-checkPROGRAMS clean-generic clean-libLTLIBRARIES \ - clean-libtool ctags distclean distclean-compile \ + clean clean-checkPROGRAMS clean-generic clean-libtool \ + clean-noinstLTLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-libLTLIBRARIES \ - install-man install-strip installcheck installcheck-am \ - installdirs maintainer-clean maintainer-clean-generic \ - mostlyclean mostlyclean-compile mostlyclean-generic \ - mostlyclean-libtool mostlyclean-local pdf pdf-am ps ps-am tags \ - uninstall uninstall-am uninstall-info-am \ - uninstall-libLTLIBRARIES + install-info install-info-am install-man install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool mostlyclean-local pdf \ + pdf-am ps ps-am tags uninstall uninstall-am uninstall-info-am # check-install is a synonym for installcheck. diff --git a/fortran/testpar/Makefile.am b/fortran/testpar/Makefile.am index af9461e..894c938 100644 --- a/fortran/testpar/Makefile.am +++ b/fortran/testpar/Makefile.am @@ -22,9 +22,6 @@ include $(top_srcdir)/config/commence.am # Include files AM_FCFLAGS=-I$(top_srcdir)/fortran/src -I$(top_srcdir)/fortran/test $(F9XMODFLAG)$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS=-static - # These are our main targets TEST_PROG_PARA=parallel_test check_PROGRAMS=$(TEST_PROG_PARA) diff --git a/fortran/testpar/Makefile.in b/fortran/testpar/Makefile.in index c62ebee..a071ffd 100644 --- a/fortran/testpar/Makefile.in +++ b/fortran/testpar/Makefile.in @@ -306,9 +306,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog parf[12].h5 # Include files AM_FCFLAGS = -I$(top_srcdir)/fortran/src -I$(top_srcdir)/fortran/test $(F9XMODFLAG)$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS = -static - # These are our main targets TEST_PROG_PARA = parallel_test diff --git a/hl/c++/src/Makefile.am b/hl/c++/src/Makefile.am index 9e44c23..fb0681b 100644 --- a/hl/c++/src/Makefile.am +++ b/hl/c++/src/Makefile.am @@ -22,11 +22,6 @@ include $(top_srcdir)/config/commence.am # Include src directory INCLUDES=-I$(top_srcdir)/src -I$(top_srcdir)/hl/src -# Build the library statically because some compliers can only link one -# dynamic library, and that's the main hdf5 library (which is much larger -# than this one). -AM_LDFLAGS=-static - # This is our main target lib_LTLIBRARIES=libhdf5_hl_cpp.la diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in index faa0342..40abb97 100644 --- a/hl/c++/src/Makefile.in +++ b/hl/c++/src/Makefile.in @@ -311,11 +311,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Include src directory INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/hl/src -# Build the library statically because some compliers can only link one -# dynamic library, and that's the main hdf5 library (which is much larger -# than this one). -AM_LDFLAGS = -static - # This is our main target lib_LTLIBRARIES = libhdf5_hl_cpp.la diff --git a/hl/c++/test/Makefile.am b/hl/c++/test/Makefile.am index dbe6743..0eee1c1 100644 --- a/hl/c++/test/Makefile.am +++ b/hl/c++/test/Makefile.am @@ -22,9 +22,6 @@ include $(top_srcdir)/config/commence.am # Include directories INCLUDES=-I$(top_srcdir)/src -I$(top_srcdir)/hl/src -I$(top_srcdir)/hl/c++/src -I$(top_srcdir)/test -# C++ libraries and tests are built statically -AM_LDFLAGS=-static - # These are our main targets. They should be listed in the order to be # executed, generally most specific tests to least specific tests. TEST_PROG=ptableTest diff --git a/hl/c++/test/Makefile.in b/hl/c++/test/Makefile.in index 121a049..e50d5cd 100644 --- a/hl/c++/test/Makefile.in +++ b/hl/c++/test/Makefile.in @@ -305,9 +305,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Include directories INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/hl/src -I$(top_srcdir)/hl/c++/src -I$(top_srcdir)/test -# C++ libraries and tests are built statically -AM_LDFLAGS = -static - # These are our main targets. They should be listed in the order to be # executed, generally most specific tests to least specific tests. TEST_PROG = ptableTest diff --git a/hl/fortran/src/Makefile.am b/hl/fortran/src/Makefile.am index 14076e7..2222f90 100644 --- a/hl/fortran/src/Makefile.am +++ b/hl/fortran/src/Makefile.am @@ -15,9 +15,6 @@ INCLUDES=-I$(top_srcdir)/src -I$(top_srcdir)/hl/src -I$(top_builddir)/hl/src \ -I$(top_srcdir)/fortran/src -I$(top_builddir)/fortran/src AM_FCFLAGS=-I$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS=-static - # Our main target, the high-level fortran library lib_LTLIBRARIES=libhdf5hl_fortran.la diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in index 0e9f952..09209f8 100644 --- a/hl/fortran/src/Makefile.in +++ b/hl/fortran/src/Makefile.in @@ -306,9 +306,6 @@ INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/hl/src -I$(top_builddir)/hl/src \ AM_FCFLAGS = -I$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS = -static - # Our main target, the high-level fortran library lib_LTLIBRARIES = libhdf5hl_fortran.la diff --git a/hl/fortran/test/Makefile.am b/hl/fortran/test/Makefile.am index 5c43b41..865e91e 100644 --- a/hl/fortran/test/Makefile.am +++ b/hl/fortran/test/Makefile.am @@ -14,9 +14,6 @@ include $(top_srcdir)/config/commence.am AM_CPPFLAGS=-I$(top_srcdir)/src -I$(top_builddir)/src -I$(top_srcdir)/hl/src AM_FCFLAGS=-I$(top_builddir)/fortran/src -I$(top_builddir)/hl/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/hl/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS=-static - # Our main target, the test programs TEST_PROG=tstlite tstimage tsttable check_PROGRAMS=$(TEST_PROG) diff --git a/hl/fortran/test/Makefile.in b/hl/fortran/test/Makefile.in index 5249f89..93ec1ea 100644 --- a/hl/fortran/test/Makefile.in +++ b/hl/fortran/test/Makefile.in @@ -306,9 +306,6 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog dsetf[1-4].h5 f1img.h5 \ AM_CPPFLAGS = -I$(top_srcdir)/src -I$(top_builddir)/src -I$(top_srcdir)/hl/src AM_FCFLAGS = -I$(top_builddir)/fortran/src -I$(top_builddir)/hl/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/hl/fortran/src -# Fortran libraries are linked statically to solve a build problem. -AM_LDFLAGS = -static - # Our main target, the test programs TEST_PROG = tstlite tstimage tsttable LDADD = $(LIBH5F_HL) $(LIBH5F) $(LIBH5_HL) $(LIBHDF5) diff --git a/perform/Makefile.am b/perform/Makefile.am index 24a2468..1dd98b0 100644 --- a/perform/Makefile.am +++ b/perform/Makefile.am @@ -44,10 +44,10 @@ CLEANFILES=*.h5 *.raw *.dat x-gnuplot # All of the programs depend on the main hdf5 library, and some of them # depend on test or tools library. LDADD=$(LIBHDF5) -h5perf_LDADD=$(LIBH5TOOLS) $(LIBH5TEST) -perf_LDADD=$(LIBH5TEST) -iopipe_LDADD=$(LIBH5TEST) -zip_perf_LDADD=$(LIBH5TOOLS) $(LIBH5TEST) -perf_meta_LDADD=$(LIBH5TEST) +h5perf_LDADD=$(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5) +perf_LDADD=$(LIBH5TEST) $(LIBHDF5) +iopipe_LDADD=$(LIBH5TEST) $(LIBHDF5) +zip_perf_LDADD=$(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5) +perf_meta_LDADD=$(LIBH5TEST) $(LIBHDF5) include $(top_srcdir)/config/conclude.am diff --git a/perform/Makefile.in b/perform/Makefile.in index 1892332..50a7026 100644 --- a/perform/Makefile.in +++ b/perform/Makefile.in @@ -83,23 +83,25 @@ am_h5perf_OBJECTS = pio_perf.$(OBJEXT) pio_engine.$(OBJEXT) \ h5perf_OBJECTS = $(am_h5perf_OBJECTS) am__DEPENDENCIES_2 = $(top_builddir)/tools/lib/libh5tools.la am__DEPENDENCIES_3 = $(top_builddir)/test/libh5test.la -h5perf_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) +h5perf_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) iopipe_SOURCES = iopipe.c iopipe_OBJECTS = iopipe.$(OBJEXT) -iopipe_DEPENDENCIES = $(am__DEPENDENCIES_3) +iopipe_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_1) overhead_SOURCES = overhead.c overhead_OBJECTS = overhead.$(OBJEXT) overhead_LDADD = $(LDADD) overhead_DEPENDENCIES = $(am__DEPENDENCIES_1) perf_SOURCES = perf.c perf_OBJECTS = perf.$(OBJEXT) -perf_DEPENDENCIES = $(am__DEPENDENCIES_3) +perf_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_1) perf_meta_SOURCES = perf_meta.c perf_meta_OBJECTS = perf_meta.$(OBJEXT) -perf_meta_DEPENDENCIES = $(am__DEPENDENCIES_3) +perf_meta_DEPENDENCIES = $(am__DEPENDENCIES_3) $(am__DEPENDENCIES_1) zip_perf_SOURCES = zip_perf.c zip_perf_OBJECTS = zip_perf.$(OBJEXT) -zip_perf_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) +zip_perf_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)/src depcomp = $(SHELL) $(top_srcdir)/bin/depcomp am__depfiles_maybe = depfiles @@ -344,11 +346,11 @@ CLEANFILES = *.h5 *.raw *.dat x-gnuplot # All of the programs depend on the main hdf5 library, and some of them # depend on test or tools library. LDADD = $(LIBHDF5) -h5perf_LDADD = $(LIBH5TOOLS) $(LIBH5TEST) -perf_LDADD = $(LIBH5TEST) -iopipe_LDADD = $(LIBH5TEST) -zip_perf_LDADD = $(LIBH5TOOLS) $(LIBH5TEST) -perf_meta_LDADD = $(LIBH5TEST) +h5perf_LDADD = $(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5) +perf_LDADD = $(LIBH5TEST) $(LIBHDF5) +iopipe_LDADD = $(LIBH5TEST) $(LIBHDF5) +zip_perf_LDADD = $(LIBH5TOOLS) $(LIBH5TEST) $(LIBHDF5) +perf_meta_LDADD = $(LIBH5TEST) $(LIBHDF5) # Automake needs to be taught how to build lib, progs, and tests targets. # These will be filled in automatically for the most part (e.g., diff --git a/src/Makefile.in b/src/Makefile.in index cb1b445..8049051 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -98,16 +98,16 @@ am_libhdf5_la_OBJECTS = H5.lo H5A.lo H5AC.lo H5B.lo H5B2.lo \ H5Ocont.lo H5Odtype.lo H5Oefl.lo H5Ofill.lo H5Olayout.lo \ H5Omtime.lo H5Oname.lo H5Onull.lo H5Opline.lo H5Osdspace.lo \ H5Oshared.lo H5Ostab.lo H5P.lo H5Pdcpl.lo H5Pdxpl.lo \ - H5Pfapl.lo H5Pfcpl.lo H5Pgcpl.lo H5Pocpl.lo H5Ptest.lo H5R.lo H5RC.lo \ - H5RS.lo H5S.lo H5Sall.lo H5Shyper.lo H5Smpio.lo H5Snone.lo \ - H5Spoint.lo H5Sselect.lo H5Stest.lo H5SH.lo H5SHcache.lo \ - H5SHdbg.lo H5SL.lo H5ST.lo H5T.lo H5Tarray.lo H5Tbit.lo \ - H5Tcommit.lo H5Tcompound.lo H5Tconv.lo H5Tcset.lo H5Tenum.lo \ - H5Tfields.lo H5Tfixed.lo H5Tfloat.lo H5Tinit.lo H5Tnative.lo \ - H5Toffset.lo H5Topaque.lo H5Torder.lo H5Tpad.lo H5Tprecis.lo \ - H5Tstrpad.lo H5Tvlen.lo H5TS.lo H5V.lo H5Z.lo H5Zdeflate.lo \ - H5Zfletcher32.lo H5Znbit.lo H5Zshuffle.lo H5Zszip.lo \ - H5Zscaleoffset.lo H5Ztrans.lo + H5Pfapl.lo H5Pfcpl.lo H5Pgcpl.lo H5Pocpl.lo H5Ptest.lo H5R.lo \ + H5RC.lo H5RS.lo H5S.lo H5Sall.lo H5Shyper.lo H5Smpio.lo \ + H5Snone.lo H5Spoint.lo H5Sselect.lo H5Stest.lo H5SH.lo \ + H5SHcache.lo H5SHdbg.lo H5SL.lo H5ST.lo H5T.lo H5Tarray.lo \ + H5Tbit.lo H5Tcommit.lo H5Tcompound.lo H5Tconv.lo H5Tcset.lo \ + H5Tenum.lo H5Tfields.lo H5Tfixed.lo H5Tfloat.lo H5Tinit.lo \ + H5Tnative.lo H5Toffset.lo H5Topaque.lo H5Torder.lo H5Tpad.lo \ + H5Tprecis.lo H5Tstrpad.lo H5Tvlen.lo H5TS.lo H5V.lo H5Z.lo \ + H5Zdeflate.lo H5Zfletcher32.lo H5Znbit.lo H5Zshuffle.lo \ + H5Zszip.lo H5Zscaleoffset.lo H5Ztrans.lo libhdf5_la_OBJECTS = $(am_libhdf5_la_OBJECTS) PROGRAMS = $(noinst_PROGRAMS) H5detect_SOURCES = H5detect.c @@ -380,7 +380,8 @@ libhdf5_la_SOURCES = H5.c H5A.c H5AC.c H5B.c H5B2.c H5B2cache.c H5B2dbg.c \ H5Oattr.c H5Obogus.c \ H5Ocont.c H5Odtype.c H5Oefl.c H5Ofill.c H5Olayout.c H5Omtime.c \ H5Oname.c H5Onull.c H5Opline.c H5Osdspace.c H5Oshared.c H5Ostab.c \ - H5P.c H5Pdcpl.c H5Pdxpl.c H5Pfapl.c H5Pfcpl.c H5Pgcpl.c H5Pocpl.c H5Ptest.c \ + H5P.c H5Pdcpl.c H5Pdxpl.c H5Pfapl.c H5Pfcpl.c H5Pgcpl.c H5Pocpl.c \ + H5Ptest.c \ H5R.c H5RC.c \ H5RS.c H5S.c H5Sall.c H5Shyper.c H5Smpio.c H5Snone.c H5Spoint.c \ H5Sselect.c H5Stest.c H5SH.c H5SHcache.c H5SHdbg.c \ diff --git a/test/Makefile.am b/test/Makefile.am index 3fa1690..cb5eb38 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -48,14 +48,8 @@ check_PROGRAMS=$(TEST_PROG) error_test err_compat testmeta # The libh5test library provides common support code for the tests. -check_LTLIBRARIES=libh5test.la +noinst_LTLIBRARIES=libh5test.la libh5test_la_SOURCES=h5test.c testframe.c -libh5test_la_LIBADD=$(LIBHDF5) - -# Build the library statically because some compilers can only link -# one dynamic library and the main hdf5 library is much larger than this -# one. -libh5test_la_LDFLAGS=-static # Use libhd5test.la to compile all of the tests LDADD=libh5test.la $(LIBHDF5) diff --git a/test/Makefile.in b/test/Makefile.in index a6d96c5..e2e7a46 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -29,6 +29,7 @@ # # HDF5 Library Test Makefile(.in) # + SOURCES = $(libh5test_la_SOURCES) b+tree.c big.c bittests.c blocktrack.c btree2.c cache.c cmpd_dset.c dangle.c dsets.c dt_arith.c dtransform.c dtypes.c enum.c err_compat.c error_test.c extend.c external.c fillval.c flush1.c flush2.c getname.c gheap.c hyperslab.c istore.c lheap.c links.c mount.c mtime.c ntypes.c ohdr.c pool.c reserved.c set_extent.c sheap.c stab.c stream_test.c $(testhdf5_SOURCES) testmeta.c $(ttsafe_SOURCES) unlink.c vfd.c srcdir = @srcdir@ @@ -66,8 +67,8 @@ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ mkinstalldirs = $(SHELL) $(top_srcdir)/bin/mkinstalldirs CONFIG_HEADER = $(top_builddir)/src/H5config.h CONFIG_CLEAN_FILES = -am__DEPENDENCIES_1 = $(top_builddir)/src/libhdf5.la -libh5test_la_DEPENDENCIES = $(am__DEPENDENCIES_1) +LTLIBRARIES = $(noinst_LTLIBRARIES) +libh5test_la_LIBADD = am_libh5test_la_OBJECTS = h5test.lo testframe.lo libh5test_la_OBJECTS = $(am_libh5test_la_OBJECTS) am__EXEEXT_1 = testhdf5$(EXEEXT) lheap$(EXEEXT) ohdr$(EXEEXT) \ @@ -85,6 +86,7 @@ am__EXEEXT_1 = testhdf5$(EXEEXT) lheap$(EXEEXT) ohdr$(EXEEXT) \ b_tree_SOURCES = b+tree.c b_tree_OBJECTS = b+tree.$(OBJEXT) b_tree_LDADD = $(LDADD) +am__DEPENDENCIES_1 = $(top_builddir)/src/libhdf5.la b_tree_DEPENDENCIES = libh5test.la $(am__DEPENDENCIES_1) big_SOURCES = big.c big_OBJECTS = big.$(OBJEXT) @@ -538,14 +540,8 @@ TEST_PROG = testhdf5 lheap ohdr stab gheap btree2 cache b+tree blocktrack sheap # The libh5test library provides common support code for the tests. -check_LTLIBRARIES = libh5test.la +noinst_LTLIBRARIES = libh5test.la libh5test_la_SOURCES = h5test.c testframe.c -libh5test_la_LIBADD = $(LIBHDF5) - -# Build the library statically because some compilers can only link -# one dynamic library and the main hdf5 library is much larger than this -# one. -libh5test_la_LDFLAGS = -static # Use libhd5test.la to compile all of the tests LDADD = libh5test.la $(LIBHDF5) @@ -611,9 +607,9 @@ $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -clean-checkLTLIBRARIES: - -test -z "$(check_LTLIBRARIES)" || rm -f $(check_LTLIBRARIES) - @list='$(check_LTLIBRARIES)'; for p in $$list; do \ +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; for p in $$list; do \ dir="`echo $$p | sed -e 's|/[^/]*$$||'`"; \ test "$$dir" != "$$p" || dir=.; \ echo "rm -f \"$${dir}/so_locations\""; \ @@ -934,11 +930,10 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am - $(MAKE) $(AM_MAKEFLAGS) $(check_LTLIBRARIES) $(check_PROGRAMS) \ - $(check_SCRIPTS) + $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(check_SCRIPTS) $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am -all-am: Makefile all-local +all-am: Makefile $(LTLIBRARIES) all-local installdirs: install: install-am install-exec: install-exec-am @@ -966,8 +961,8 @@ maintainer-clean-generic: @echo "it deletes files that may require special tools to rebuild." clean: clean-am -clean-am: clean-checkLTLIBRARIES clean-checkPROGRAMS clean-generic \ - clean-libtool mostlyclean-am +clean-am: clean-checkPROGRAMS clean-generic clean-libtool \ + clean-noinstLTLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) @@ -1016,8 +1011,8 @@ ps-am: uninstall-am: uninstall-info-am .PHONY: CTAGS GTAGS all all-am all-local check check-TESTS check-am \ - clean clean-checkLTLIBRARIES clean-checkPROGRAMS clean-generic \ - clean-libtool ctags distclean distclean-compile \ + clean clean-checkPROGRAMS clean-generic clean-libtool \ + clean-noinstLTLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-libtool distclean-tags distdir dvi \ dvi-am html html-am info info-am install install-am \ install-data install-data-am install-exec install-exec-am \ diff --git a/testpar/Makefile.am b/testpar/Makefile.am index 5c66da1..12921ff 100644 --- a/testpar/Makefile.am +++ b/testpar/Makefile.am @@ -34,7 +34,7 @@ testphdf5_SOURCES=testphdf5.c t_dset.c t_file.c t_mdset.c t_ph5basic.c \ t_coll_chunk.c t_span_tree.c t_chunk_alloc.c # The tests all depend on the hdf5 library and the test library -LDADD = $(LIBHDF5) $(LIBH5TEST) +LDADD = $(LIBH5TEST) $(LIBHDF5) # Temporary files # MPItest.h5 is from t_mpi diff --git a/testpar/Makefile.in b/testpar/Makefile.in index 02ffb8d..474ee26 100644 --- a/testpar/Makefile.in +++ b/testpar/Makefile.in @@ -69,8 +69,8 @@ am__EXEEXT_1 = t_mpi$(EXEEXT) t_fphdf5$(EXEEXT) testphdf5$(EXEEXT) t_fphdf5_SOURCES = t_fphdf5.c t_fphdf5_OBJECTS = t_fphdf5.$(OBJEXT) t_fphdf5_LDADD = $(LDADD) -am__DEPENDENCIES_1 = $(top_builddir)/src/libhdf5.la -am__DEPENDENCIES_2 = $(top_builddir)/test/libh5test.la +am__DEPENDENCIES_1 = $(top_builddir)/test/libh5test.la +am__DEPENDENCIES_2 = $(top_builddir)/src/libhdf5.la t_fphdf5_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_2) t_mpi_SOURCES = t_mpi.c t_mpi_OBJECTS = t_mpi.$(OBJEXT) @@ -326,7 +326,7 @@ testphdf5_SOURCES = testphdf5.c t_dset.c t_file.c t_mdset.c t_ph5basic.c \ # The tests all depend on the hdf5 library and the test library -LDADD = $(LIBHDF5) $(LIBH5TEST) +LDADD = $(LIBH5TEST) $(LIBHDF5) DISTCLEANFILES = go Makefile testph5.sh # Automake needs to be taught how to build lib, progs, and tests targets. diff --git a/tools/lib/Makefile.am b/tools/lib/Makefile.am index 4257e6a..dad3db3 100644 --- a/tools/lib/Makefile.am +++ b/tools/lib/Makefile.am @@ -22,18 +22,13 @@ include $(top_srcdir)/config/commence.am # Include files in /src directory INCLUDES=-I$(top_srcdir)/src -# This is our main target, the h5tools library. We link this library -# statically because some systems can only link executables to a single -# shared library and libhdf5 is much bigger than libh5tools. +# This is our main target, the h5tools library. noinst_LTLIBRARIES=libh5tools.la -libh5tools_la_LDFLAGS=-static + libh5tools_la_SOURCES=h5tools.c h5tools_str.c h5tools_utils.c h5diff.c \ h5diff_array.c h5diff_attr.c h5diff_dset.c h5diff_util.c h5trav.c \ h5trav_table.c h5tools_filters.c h5tools_ref.c h5tools_type.c -# Link the h5tools library using the main hdf5 library -LIBADD=$(LIBHDF5) - # Test program. Link using libhdf5 and libh5tools TEST_PROG=talign check_PROGRAMS=$(TEST_PROG) diff --git a/tools/lib/Makefile.in b/tools/lib/Makefile.in index e68d335..6caef69 100644 --- a/tools/lib/Makefile.in +++ b/tools/lib/Makefile.in @@ -310,19 +310,13 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog # Include files in /src directory INCLUDES = -I$(top_srcdir)/src -# This is our main target, the h5tools library. We link this library -# statically because some systems can only link executables to a single -# shared library and libhdf5 is much bigger than libh5tools. +# This is our main target, the h5tools library. noinst_LTLIBRARIES = libh5tools.la -libh5tools_la_LDFLAGS = -static libh5tools_la_SOURCES = h5tools.c h5tools_str.c h5tools_utils.c h5diff.c \ h5diff_array.c h5diff_attr.c h5diff_dset.c h5diff_util.c h5trav.c \ h5trav_table.c h5tools_filters.c h5tools_ref.c h5tools_type.c -# Link the h5tools library using the main hdf5 library -LIBADD = $(LIBHDF5) - # Test program. Link using libhdf5 and libh5tools TEST_PROG = talign -- cgit v0.12