diff options
author | James Laird <jlaird@hdfgroup.org> | 2005-09-16 21:16:11 (GMT) |
---|---|---|
committer | James Laird <jlaird@hdfgroup.org> | 2005-09-16 21:16:11 (GMT) |
commit | b656c90c8a86eb7cb2d14baaadcc23fd8f22fbad (patch) | |
tree | 4b6a7c7abb7be441d37e87ac0d549b421e540186 /fortran | |
parent | cc8f7d98bf0a373e397faecd14e3480cf5c0777d (diff) | |
download | hdf5-b656c90c8a86eb7cb2d14baaadcc23fd8f22fbad.zip hdf5-b656c90c8a86eb7cb2d14baaadcc23fd8f22fbad.tar.gz hdf5-b656c90c8a86eb7cb2d14baaadcc23fd8f22fbad.tar.bz2 |
[svn-r11420] Purpose:
Bug fix
Description:
Disabled C++ shared libraries for Sun Workshop compiler.
Solution:
This bug only seems to happen when using the -xarch=v9 flag to compile in
64-bit mode, but disabling shared libraries entirely for this compiler is
an easier fix (I don't know how to detect 64 bit mode from the command line).
The framework for disabling shared libraries for other C++ compilers is
in place.
Platforms tested:
sol, mir, sleipnir, modi4
Diffstat (limited to 'fortran')
-rw-r--r-- | fortran/Makefile.in | 2 | ||||
-rw-r--r-- | fortran/examples/Makefile.in | 2 | ||||
-rw-r--r-- | fortran/src/Makefile.in | 2 | ||||
-rw-r--r-- | fortran/test/Makefile.in | 2 | ||||
-rw-r--r-- | fortran/testpar/Makefile.am | 10 | ||||
-rw-r--r-- | fortran/testpar/Makefile.in | 9 |
6 files changed, 27 insertions, 0 deletions
diff --git a/fortran/Makefile.in b/fortran/Makefile.in index 2a816b4..5cb7977 100644 --- a/fortran/Makefile.in +++ b/fortran/Makefile.in @@ -118,6 +118,8 @@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ +CXX_SHARED_CONDITIONAL_FALSE = @CXX_SHARED_CONDITIONAL_FALSE@ +CXX_SHARED_CONDITIONAL_TRUE = @CXX_SHARED_CONDITIONAL_TRUE@ CYGPATH_W = @CYGPATH_W@ DEBUG_PKG = @DEBUG_PKG@ DEFS = @DEFS@ diff --git a/fortran/examples/Makefile.in b/fortran/examples/Makefile.in index 61eb63d..2ba8e5e 100644 --- a/fortran/examples/Makefile.in +++ b/fortran/examples/Makefile.in @@ -106,6 +106,8 @@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ +CXX_SHARED_CONDITIONAL_FALSE = @CXX_SHARED_CONDITIONAL_FALSE@ +CXX_SHARED_CONDITIONAL_TRUE = @CXX_SHARED_CONDITIONAL_TRUE@ CYGPATH_W = @CYGPATH_W@ DEBUG_PKG = @DEBUG_PKG@ DEFS = @DEFS@ diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in index e9d5390..4f0d976 100644 --- a/fortran/src/Makefile.in +++ b/fortran/src/Makefile.in @@ -173,6 +173,8 @@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ +CXX_SHARED_CONDITIONAL_FALSE = @CXX_SHARED_CONDITIONAL_FALSE@ +CXX_SHARED_CONDITIONAL_TRUE = @CXX_SHARED_CONDITIONAL_TRUE@ CYGPATH_W = @CYGPATH_W@ DEBUG_PKG = @DEBUG_PKG@ DEFS = @DEFS@ diff --git a/fortran/test/Makefile.in b/fortran/test/Makefile.in index 7ac0e8c..5745a6a 100644 --- a/fortran/test/Makefile.in +++ b/fortran/test/Makefile.in @@ -167,6 +167,8 @@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ +CXX_SHARED_CONDITIONAL_FALSE = @CXX_SHARED_CONDITIONAL_FALSE@ +CXX_SHARED_CONDITIONAL_TRUE = @CXX_SHARED_CONDITIONAL_TRUE@ CYGPATH_W = @CYGPATH_W@ DEBUG_PKG = @DEBUG_PKG@ DEFS = @DEFS@ diff --git a/fortran/testpar/Makefile.am b/fortran/testpar/Makefile.am index 894c938..227b74f 100644 --- a/fortran/testpar/Makefile.am +++ b/fortran/testpar/Makefile.am @@ -22,6 +22,16 @@ 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 +# Some Fortran compilers can't build shared libraries, so sometimes we +# want to build a shared C library and a static Fortran library. If so, +# pass the -static flag to the library linker. +# (Actually, we historically have bad luck combining shared libraries with +# parallel code. But you're welcome to try...) +if FORTRAN_SHARED_CONDITIONAL +else + AM_LDFLAGS=-static +endif + # 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 6724b8c..a08a5fd 100644 --- a/fortran/testpar/Makefile.in +++ b/fortran/testpar/Makefile.in @@ -130,6 +130,8 @@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ +CXX_SHARED_CONDITIONAL_FALSE = @CXX_SHARED_CONDITIONAL_FALSE@ +CXX_SHARED_CONDITIONAL_TRUE = @CXX_SHARED_CONDITIONAL_TRUE@ CYGPATH_W = @CYGPATH_W@ DEBUG_PKG = @DEBUG_PKG@ DEFS = @DEFS@ @@ -308,6 +310,13 @@ 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 +# Some Fortran compilers can't build shared libraries, so sometimes we +# want to build a shared C library and a static Fortran library. If so, +# pass the -static flag to the library linker. +# (Actually, we historically have bad luck combining shared libraries with +# parallel code. But you're welcome to try...) +@FORTRAN_SHARED_CONDITIONAL_FALSE@AM_LDFLAGS = -static + # These are our main targets TEST_PROG_PARA = parallel_test |