diff options
author | James Laird <jlaird@hdfgroup.org> | 2005-09-13 22:30:33 (GMT) |
---|---|---|
committer | James Laird <jlaird@hdfgroup.org> | 2005-09-13 22:30:33 (GMT) |
commit | 33beeb7f55193bc76a7544f9fe3634718f36352d (patch) | |
tree | 477997f046cf9bc98025a8ecdd63ea01963d1081 /tools/lib | |
parent | 676e9e6f13caaeff5fb0e3809dda6d0e427bf0de (diff) | |
download | hdf5-33beeb7f55193bc76a7544f9fe3634718f36352d.zip hdf5-33beeb7f55193bc76a7544f9fe3634718f36352d.tar.gz hdf5-33beeb7f55193bc76a7544f9fe3634718f36352d.tar.bz2 |
[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
Diffstat (limited to 'tools/lib')
-rw-r--r-- | tools/lib/Makefile.am | 9 | ||||
-rw-r--r-- | tools/lib/Makefile.in | 8 |
2 files changed, 3 insertions, 14 deletions
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 |