summaryrefslogtreecommitdiffstats
path: root/c++/src
diff options
context:
space:
mode:
authorDana Robinson <derobins@hdfgroup.org>2015-08-19 10:54:48 (GMT)
committerDana Robinson <derobins@hdfgroup.org>2015-08-19 10:54:48 (GMT)
commit291bf2052931b1f117a9cd43ff707437c8b7dd5b (patch)
treea8ef0041744f267b84d48d13f001598befe8a02b /c++/src
parenteb9fda6709578d16b69dbd8331f22b6073c4654c (diff)
downloadhdf5-291bf2052931b1f117a9cd43ff707437c8b7dd5b.zip
hdf5-291bf2052931b1f117a9cd43ff707437c8b7dd5b.tar.gz
hdf5-291bf2052931b1f117a9cd43ff707437c8b7dd5b.tar.bz2
[svn-r27522] CMake files match those of the trunk but still need to be updated with changes in this branch.
Tested on: NONE (CMake is still broken in this branch)
Diffstat (limited to 'c++/src')
-rw-r--r--c++/src/CMakeLists.txt38
1 files changed, 24 insertions, 14 deletions
diff --git a/c++/src/CMakeLists.txt b/c++/src/CMakeLists.txt
index 2f3a0c4..1ae5647 100644
--- a/c++/src/CMakeLists.txt
+++ b/c++/src/CMakeLists.txt
@@ -2,13 +2,6 @@ cmake_minimum_required (VERSION 3.1.0)
PROJECT (HDF5_CPP_SRC)
#-----------------------------------------------------------------------------
-# Shared/Static Libs
-#-----------------------------------------------------------------------------
-if (BUILD_SHARED_LIBS)
- set (CPP_BUILT_AS_DYNAMIC_LIB 1)
-endif (BUILD_SHARED_LIBS)
-
-#-----------------------------------------------------------------------------
# Generate configure file
#-----------------------------------------------------------------------------
configure_file (${HDF_RESOURCES_DIR}/H5cxx_config.h.in
@@ -83,18 +76,34 @@ set (CPP_HDRS
${HDF5_CPP_SRC_SOURCE_DIR}/H5VarLenType.h
)
-add_library (${HDF5_CPP_LIB_TARGET} ${LIB_TYPE} ${CPP_SRCS} ${CPP_HDRS})
-TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} ${LIB_TYPE} " " " ")
+add_library (${HDF5_CPP_LIB_TARGET} STATIC ${CPP_SRCS} ${CPP_HDRS})
+TARGET_C_PROPERTIES (${HDF5_CPP_LIB_TARGET} STATIC " " " ")
target_link_libraries (${HDF5_CPP_LIB_TARGET} ${HDF5_LIB_TARGET})
set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIB_TARGET}")
-H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} ${LIB_TYPE})
+H5_SET_LIB_OPTIONS (${HDF5_CPP_LIB_TARGET} ${HDF5_CPP_LIB_NAME} STATIC)
set_target_properties (${HDF5_CPP_LIB_TARGET} PROPERTIES
FOLDER libraries/cpp
INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
)
+set (install_targets ${HDF5_CPP_LIB_TARGET})
+
+if (BUILD_SHARED_LIBS)
+ add_library (${HDF5_CPP_LIBSH_TARGET} SHARED ${CPP_SRCS} ${CPP_HDRS})
+ TARGET_C_PROPERTIES (${HDF5_CPP_LIBSH_TARGET} SHARED " " " ")
+ target_link_libraries (${HDF5_CPP_LIBSH_TARGET} ${HDF5_LIBSH_TARGET})
+ set_global_variable (HDF5_LIBRARIES_TO_EXPORT "${HDF5_LIBRARIES_TO_EXPORT};${HDF5_CPP_LIBSH_TARGET}")
+ H5_SET_LIB_OPTIONS (${HDF5_CPP_LIBSH_TARGET} ${HDF5_CPP_LIB_NAME} SHARED)
+ set_target_properties (${HDF5_CPP_LIBSH_TARGET} PROPERTIES
+ FOLDER libraries/cpp
+ COMPILE_DEFINITIONS "H5_BUILT_AS_DYNAMIC_LIB"
+ INTERFACE_INCLUDE_DIRECTORIES "$<INSTALL_INTERFACE:$<INSTALL_PREFIX>/include>"
+ INTERFACE_COMPILE_DEFINITIONS H5_BUILT_AS_DYNAMIC_LIB=1
+ )
+ set (install_targets ${install_targets} ${HDF5_CPP_LIBSH_TARGET})
+endif (BUILD_SHARED_LIBS)
#-----------------------------------------------------------------------------
-# Add file(s) to CMake Install
+# Add file(s) to CMake Install
#-----------------------------------------------------------------------------
install (
FILES
@@ -110,16 +119,17 @@ install (
#-----------------------------------------------------------------------------
if (HDF5_EXPORTED_TARGETS)
if (BUILD_SHARED_LIBS)
- INSTALL_TARGET_PDB (${HDF5_CPP_LIB_TARGET} ${HDF5_INSTALL_BIN_DIR} cpplibraries)
+ INSTALL_TARGET_PDB (${HDF5_CPP_LIBSH_TARGET} ${HDF5_INSTALL_BIN_DIR} cpplibraries)
endif (BUILD_SHARED_LIBS)
-
+
install (
TARGETS
- ${HDF5_CPP_LIB_TARGET}
+ ${install_targets}
EXPORT
${HDF5_EXPORTED_TARGETS}
LIBRARY DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
ARCHIVE DESTINATION ${HDF5_INSTALL_LIB_DIR} COMPONENT cpplibraries
RUNTIME DESTINATION ${HDF5_INSTALL_BIN_DIR} COMPONENT cpplibraries
+ FRAMEWORK DESTINATION ${HDF5_INSTALL_FWRK_DIR} COMPONENT cpplibraries
)
endif (HDF5_EXPORTED_TARGETS)