summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaphael Grimm <barcode@users.noreply.github.com>2021-03-22 20:26:21 (GMT)
committerGitHub <noreply@github.com>2021-03-22 20:26:21 (GMT)
commit62fe5a77024b639ea77ca6cd7f45ff0c57faca53 (patch)
tree66e44f4cbc81a44d5ca75c8b92113a9450ec68b1
parentc193d436f512e73be6569e56bf875bb2673ebdf8 (diff)
downloadhdf5-62fe5a77024b639ea77ca6cd7f45ff0c57faca53.zip
hdf5-62fe5a77024b639ea77ca6cd7f45ff0c57faca53.tar.gz
hdf5-62fe5a77024b639ea77ca6cd7f45ff0c57faca53.tar.bz2
Add cmake variable HDF5_LIB_INFIX (#7)
* Add cmake variable HDF5_LIB_INFIX This infix is added to all library names after 'hdf5'. e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so' This name is used in packages on debian based systems. (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist) This option is useful when testing projects on debian based systems with custom builds of hdf5 while trying to minimize differences between the custom setup and the environment created by installing system packages. * Added RELEASE.txt entry for HDF5_LIB_INFIX. Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
-rw-r--r--CMakeLists.txt35
-rw-r--r--release_docs/RELEASE.txt9
2 files changed, 30 insertions, 14 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c41908b..dd15c16 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -71,6 +71,13 @@ mark_as_advanced (HDF5_EXTERNAL_LIB_PREFIX)
# If the parent project needs to install hdf libraries, but avoid
# name conflicts with system versions, then a prefix may be added
# to ensure that the correct versions configured are used.
+set (HDF5_LIB_INFIX "" CACHE STRING "Use infix for custom library naming.")
+mark_as_advanced (HDF5_LIB_INFIX)
+# HDF5_LIB_INFIX :
+# This infix is added to all library names after 'hdf5'.
+# e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
+# This name is used in packages on debian based systems.
+# (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)
#
# HDF5_INSTALL_BIN_DIR, HDF5_INSTALL_LIB_DIR, HDF5_INSTALL_INCLUDE_DIR, HDF5_INSTALL_DATA_DIR :
# Customize the 'bin', 'lib', 'include', and 'share' installation directories.
@@ -130,20 +137,20 @@ mark_as_advanced (ALLOW_UNSUPPORTED)
#-----------------------------------------------------------------------------
# Set the core names of all the libraries
#-----------------------------------------------------------------------------
-set (HDF5_LIB_CORENAME "hdf5")
-set (HDF5_TEST_LIB_CORENAME "hdf5_test")
-set (HDF5_CPP_LIB_CORENAME "hdf5_cpp")
-set (HDF5_HL_LIB_CORENAME "hdf5_hl")
-set (HDF5_HL_CPP_LIB_CORENAME "hdf5_hl_cpp")
-set (HDF5_TOOLS_LIB_CORENAME "hdf5_tools")
-set (HDF5_UTILS_LIB_CORENAME "hdf5_utils")
-set (HDF5_F90_LIB_CORENAME "hdf5_fortran")
-set (HDF5_F90_C_LIB_CORENAME "hdf5_f90cstub")
-set (HDF5_F90_TEST_LIB_CORENAME "hdf5_test_fortran")
-set (HDF5_F90_C_TEST_LIB_CORENAME "hdf5_test_f90cstub")
-set (HDF5_HL_F90_LIB_CORENAME "hdf5_hl_fortran")
-set (HDF5_HL_F90_C_LIB_CORENAME "hdf5_hl_f90cstub")
-set (HDF5_JAVA_JNI_LIB_CORENAME "hdf5_java")
+set (HDF5_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}")
+set (HDF5_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test")
+set (HDF5_CPP_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_cpp")
+set (HDF5_HL_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl")
+set (HDF5_HL_CPP_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_cpp")
+set (HDF5_TOOLS_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_tools")
+set (HDF5_UTILS_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_utils")
+set (HDF5_F90_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_fortran")
+set (HDF5_F90_C_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_f90cstub")
+set (HDF5_F90_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test_fortran")
+set (HDF5_F90_C_TEST_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_test_f90cstub")
+set (HDF5_HL_F90_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_fortran")
+set (HDF5_HL_F90_C_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_hl_f90cstub")
+set (HDF5_JAVA_JNI_LIB_CORENAME "hdf5${HDF5_LIB_INFIX}_java")
set (HDF5_JAVA_HDF5_LIB_CORENAME "jarhdf5")
set (HDF5_JAVA_TEST_LIB_CORENAME "jartest5")
diff --git a/release_docs/RELEASE.txt b/release_docs/RELEASE.txt
index 8fdec08..6515346e 100644
--- a/release_docs/RELEASE.txt
+++ b/release_docs/RELEASE.txt
@@ -47,6 +47,15 @@ New Features
Configuration:
-------------
+ - Add CMake variable HDF5_LIB_INFIX
+
+ This infix is added to all library names after 'hdf5'.
+ e.g. the infix '_openmpi' results in the library name 'libhdf5_openmpi.so'
+ This name is used in packages on debian based systems.
+ (see https://packages.debian.org/jessie/amd64/libhdf5-openmpi-8/filelist)
+
+ (barcode - 2021/03/22)
+
- On macOS, Universal Binaries can now be built, allowing native execution on
both Intel and Apple Silicon (ARM) based Macs.