summaryrefslogtreecommitdiffstats
path: root/c++/src
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 /c++/src
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 'c++/src')
-rw-r--r--c++/src/Makefile.am28
-rw-r--r--c++/src/Makefile.in27
2 files changed, 33 insertions, 22 deletions
diff --git a/c++/src/Makefile.am b/c++/src/Makefile.am
index b828d2f..924d25c 100644
--- a/c++/src/Makefile.am
+++ b/c++/src/Makefile.am
@@ -25,23 +25,29 @@ INCLUDES=-I$(top_srcdir)/src
# This is our main target
lib_LTLIBRARIES=libhdf5_cpp.la
+# Shared C++ libraries aren't universally supported.
+if CXX_SHARED_CONDITIONAL
+else
+ AM_LDFLAGS=-static
+endif
+
bin_SCRIPTS=h5c++
# Source files for the library
-libhdf5_cpp_la_SOURCES=H5Exception.cpp H5IdComponent.cpp H5Library.cpp \
- H5Attribute.cpp H5Object.cpp H5PropList.cpp H5FaccProp.cpp \
- H5FcreatProp.cpp H5DcreatProp.cpp H5DxferProp.cpp H5DataType.cpp \
- H5DataSpace.cpp H5AbstractDs.cpp H5AtomType.cpp H5PredType.cpp \
- H5EnumType.cpp H5IntType.cpp H5FloatType.cpp H5StrType.cpp \
- H5ArrayType.cpp H5VarLenType.cpp H5CompType.cpp H5DataSet.cpp \
+libhdf5_cpp_la_SOURCES=H5Exception.cpp H5IdComponent.cpp H5Library.cpp \
+ H5Attribute.cpp H5Object.cpp H5PropList.cpp H5FaccProp.cpp \
+ H5FcreatProp.cpp H5DcreatProp.cpp H5DxferProp.cpp H5DataType.cpp \
+ H5DataSpace.cpp H5AbstractDs.cpp H5AtomType.cpp H5PredType.cpp \
+ H5EnumType.cpp H5IntType.cpp H5FloatType.cpp H5StrType.cpp \
+ H5ArrayType.cpp H5VarLenType.cpp H5CompType.cpp H5DataSet.cpp \
H5CommonFG.cpp H5Group.cpp H5File.cpp
# Public headers
-include_HEADERS=H5Cpp.h H5AbstractDs.h H5AtomType.h H5Attribute.h H5Classes.h \
- H5CommonFG.h H5CompType.h H5DataSet.h H5DataSpace.h H5DataType.h \
- H5DcreatProp.h H5DxferProp.h H5EnumType.h H5Exception.h H5FaccProp.h \
- H5FcreatProp.h H5File.h H5FloatType.h H5Group.h H5IdComponent.h \
- H5Include.h H5IntType.h H5Library.h H5Object.h H5PredType.h \
+include_HEADERS=H5Cpp.h H5AbstractDs.h H5AtomType.h H5Attribute.h H5Classes.h \
+ H5CommonFG.h H5CompType.h H5DataSet.h H5DataSpace.h H5DataType.h \
+ H5DcreatProp.h H5DxferProp.h H5EnumType.h H5Exception.h H5FaccProp.h \
+ H5FcreatProp.h H5File.h H5FloatType.h H5Group.h H5IdComponent.h \
+ H5Include.h H5IntType.h H5Library.h H5Object.h H5PredType.h \
H5PropList.h H5StrType.h H5CppDoc.h H5ArrayType.h H5VarLenType.h
# h5c++ and libhdf5.settings are generated during configure. Remove only when
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index be6c457..fdc5e87 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -148,6 +148,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@
@@ -326,24 +328,27 @@ INCLUDES = -I$(top_srcdir)/src
# This is our main target
lib_LTLIBRARIES = libhdf5_cpp.la
+
+# Shared C++ libraries aren't universally supported.
+@CXX_SHARED_CONDITIONAL_FALSE@AM_LDFLAGS = -static
bin_SCRIPTS = h5c++
# Source files for the library
-libhdf5_cpp_la_SOURCES = H5Exception.cpp H5IdComponent.cpp H5Library.cpp \
- H5Attribute.cpp H5Object.cpp H5PropList.cpp H5FaccProp.cpp \
- H5FcreatProp.cpp H5DcreatProp.cpp H5DxferProp.cpp H5DataType.cpp \
- H5DataSpace.cpp H5AbstractDs.cpp H5AtomType.cpp H5PredType.cpp \
- H5EnumType.cpp H5IntType.cpp H5FloatType.cpp H5StrType.cpp \
- H5ArrayType.cpp H5VarLenType.cpp H5CompType.cpp H5DataSet.cpp \
+libhdf5_cpp_la_SOURCES = H5Exception.cpp H5IdComponent.cpp H5Library.cpp \
+ H5Attribute.cpp H5Object.cpp H5PropList.cpp H5FaccProp.cpp \
+ H5FcreatProp.cpp H5DcreatProp.cpp H5DxferProp.cpp H5DataType.cpp \
+ H5DataSpace.cpp H5AbstractDs.cpp H5AtomType.cpp H5PredType.cpp \
+ H5EnumType.cpp H5IntType.cpp H5FloatType.cpp H5StrType.cpp \
+ H5ArrayType.cpp H5VarLenType.cpp H5CompType.cpp H5DataSet.cpp \
H5CommonFG.cpp H5Group.cpp H5File.cpp
# Public headers
-include_HEADERS = H5Cpp.h H5AbstractDs.h H5AtomType.h H5Attribute.h H5Classes.h \
- H5CommonFG.h H5CompType.h H5DataSet.h H5DataSpace.h H5DataType.h \
- H5DcreatProp.h H5DxferProp.h H5EnumType.h H5Exception.h H5FaccProp.h \
- H5FcreatProp.h H5File.h H5FloatType.h H5Group.h H5IdComponent.h \
- H5Include.h H5IntType.h H5Library.h H5Object.h H5PredType.h \
+include_HEADERS = H5Cpp.h H5AbstractDs.h H5AtomType.h H5Attribute.h H5Classes.h \
+ H5CommonFG.h H5CompType.h H5DataSet.h H5DataSpace.h H5DataType.h \
+ H5DcreatProp.h H5DxferProp.h H5EnumType.h H5Exception.h H5FaccProp.h \
+ H5FcreatProp.h H5File.h H5FloatType.h H5Group.h H5IdComponent.h \
+ H5Include.h H5IntType.h H5Library.h H5Object.h H5PredType.h \
H5PropList.h H5StrType.h H5CppDoc.h H5ArrayType.h H5VarLenType.h