summaryrefslogtreecommitdiffstats
path: root/fortran
diff options
context:
space:
mode:
authorJames Laird <jlaird@hdfgroup.org>2005-09-16 21:16:11 (GMT)
committerJames Laird <jlaird@hdfgroup.org>2005-09-16 21:16:11 (GMT)
commitb656c90c8a86eb7cb2d14baaadcc23fd8f22fbad (patch)
tree4b6a7c7abb7be441d37e87ac0d549b421e540186 /fortran
parentcc8f7d98bf0a373e397faecd14e3480cf5c0777d (diff)
downloadhdf5-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.in2
-rw-r--r--fortran/examples/Makefile.in2
-rw-r--r--fortran/src/Makefile.in2
-rw-r--r--fortran/test/Makefile.in2
-rw-r--r--fortran/testpar/Makefile.am10
-rw-r--r--fortran/testpar/Makefile.in9
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