Skip to content

Commit 4190a3e

Browse files
committed
cpack: correct parameters
1 parent 2298873 commit 4190a3e

File tree

7 files changed

+24
-34
lines changed

7 files changed

+24
-34
lines changed

CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ endif()
77

88
project(h5fortran
99
LANGUAGES C Fortran
10-
VERSION 4.10.0
10+
VERSION 4.10.1
1111
)
1212

1313
include(CTest)

cmake/h5fortran.cmake

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,15 @@
11
include(ExternalProject)
22

3-
set(h5fortran_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/include)
3+
set(h5fortran_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR})
44

55
if(BUILD_SHARED_LIBS)
66
if(WIN32)
7-
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/bin/${CMAKE_SHARED_LIBRARY_PREFIX}h5fortran${CMAKE_SHARED_LIBRARY_SUFFIX})
7+
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}h5fortran${CMAKE_SHARED_LIBRARY_SUFFIX})
88
else()
9-
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}h5fortran${CMAKE_SHARED_LIBRARY_SUFFIX})
9+
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}h5fortran${CMAKE_SHARED_LIBRARY_SUFFIX})
1010
endif()
1111
else()
12-
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}h5fortran${CMAKE_STATIC_LIBRARY_SUFFIX})
12+
set(h5fortran_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}h5fortran${CMAKE_STATIC_LIBRARY_SUFFIX})
1313
endif()
1414

1515
set(h5fortran_cmake_args

cmake/hdf5.cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# builds HDF5 library from scratch
22
# note: the use of "lib" vs. CMAKE_*_LIBRARY_PREFIX is deliberate based on HDF5
33
# across Intel Fortran on Windows (MSVC-like) vs. Gfortran on Windows vs. Linux.
4-
4+
include(GNUInstallDirs)
55
include(ExternalProject)
66

77
if(hdf5_parallel)
@@ -17,16 +17,16 @@ set(HDF5_LIBRARIES)
1717
foreach(_name hdf5_hl_fortran hdf5_hl_f90cstub hdf5_fortran hdf5_f90cstub hdf5_hl hdf5)
1818
if(BUILD_SHARED_LIBS)
1919
if(WIN32)
20-
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/bin/lib${_name}${CMAKE_SHARED_LIBRARY_SUFFIX})
20+
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/lib${_name}${CMAKE_SHARED_LIBRARY_SUFFIX})
2121
else()
22-
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/lib${_name}${CMAKE_SHARED_LIBRARY_SUFFIX})
22+
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/lib${_name}${CMAKE_SHARED_LIBRARY_SUFFIX})
2323
endif()
2424
else()
25-
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/lib${_name}${CMAKE_STATIC_LIBRARY_SUFFIX})
25+
list(APPEND HDF5_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/lib${_name}${CMAKE_STATIC_LIBRARY_SUFFIX})
2626
endif()
2727
endforeach()
2828

29-
set(HDF5_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/include)
29+
set(HDF5_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR})
3030

3131
# --- Zlib
3232
if(NOT TARGET ZLIB::ZLIB)

cmake/install.cmake

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,7 @@ set(CPACK_PACKAGE_CONTACT "Michael Hirsch")
3232
set(CPACK_DEBIAN_PACKAGE_DEPENDS "libhdf5-dev (>=1.10)")
3333
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
3434
set(CPACK_RESOURCE_FILE_README "${CMAKE_CURRENT_SOURCE_DIR}/README.md")
35-
set(CPACK_OUTPUT_FILE_PREFIX "${CMAKE_CURRENT_BINARY_DIR}/package")
36-
set(CPACK_PACKAGE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
35+
set(CPACK_PACKAGE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/package)
3736

3837
# not .gitignore as its regex syntax is more advanced than CMake
3938
set(CPACK_SOURCE_IGNORE_FILES .git/ .github/ .vscode/ .mypy_cache/ _CPack_Packages/

cmake/options.cmake

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
include(GNUInstallDirs)
2+
13
message(STATUS "${PROJECT_NAME} ${PROJECT_VERSION} CMake ${CMAKE_VERSION}")
24

35
option(ENABLE_COVERAGE "Code coverage tests")
@@ -10,32 +12,21 @@ set(CMAKE_TLS_VERIFY true)
1012
include(GNUInstallDirs)
1113

1214

13-
if(BUILD_SHARED_LIBS)
14-
if(WIN32 AND CMAKE_VERSION VERSION_LESS 3.21 AND ${PROJECT_NAME}_BUILD_TESTING)
15-
message(STATUS "Windows with shared libs needs CMake >= 3.21 to run tests")
16-
endif()
17-
if(MSVC)
18-
message(WARNING "Intel oneAPI has trouble with shared libs in general on Windows, try
19-
cmake -DBUILD_SHARED_LIBS=off")
20-
endif()
15+
if(BUILD_SHARED_LIBS AND MSVC)
16+
message(WARNING "Intel oneAPI has trouble with shared libs in general on Windows, try
17+
cmake -DBUILD_SHARED_LIBS=off")
2118
endif()
2219

2320
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
2421

2522
# Rpath options necessary for shared library install to work correctly in user projects
26-
set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}/lib)
27-
set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/lib)
23+
set(CMAKE_INSTALL_NAME_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
24+
set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
2825
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH true)
2926

3027
# Necessary for shared library with Visual Studio / Windows oneAPI
3128
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS true)
3229

33-
if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
34-
# will not take effect without FORCE
35-
# CMAKE_BINARY_DIR for use from FetchContent
36-
set(CMAKE_INSTALL_PREFIX ${CMAKE_BINARY_DIR} CACHE PATH "Install top-level directory" FORCE)
37-
endif()
38-
3930
# allow CMAKE_PREFIX_PATH with ~ expand
4031
if(CMAKE_PREFIX_PATH)
4132
get_filename_component(CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH} ABSOLUTE)

cmake/zlib.cmake

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# build Zlib to ensure compatibility.
22
# We use Zlib 2.x for speed and robustness.
3-
3+
include(GNUInstallDirs)
44
include(ExternalProject)
55

66
if(zlib_legacy)
@@ -16,15 +16,15 @@ set(ZLIB_INCLUDE_DIRS ${CMAKE_INSTALL_PREFIX}/include)
1616

1717
if(BUILD_SHARED_LIBS)
1818
if(WIN32)
19-
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/bin/${CMAKE_SHARED_LIBRARY_PREFIX}zlib1${CMAKE_SHARED_LIBRARY_SUFFIX})
19+
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}zlib1${CMAKE_SHARED_LIBRARY_SUFFIX})
2020
else()
21-
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_SHARED_LIBRARY_PREFIX}z${CMAKE_SHARED_LIBRARY_SUFFIX})
21+
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${CMAKE_SHARED_LIBRARY_PREFIX}z${CMAKE_SHARED_LIBRARY_SUFFIX})
2222
endif()
2323
else()
2424
if(MSVC OR (WIN32 AND zlib_legacy))
25-
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}zlibstatic${CMAKE_STATIC_LIBRARY_SUFFIX})
25+
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}zlibstatic${CMAKE_STATIC_LIBRARY_SUFFIX})
2626
else()
27-
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}z${CMAKE_STATIC_LIBRARY_SUFFIX})
27+
set(ZLIB_LIBRARIES ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/${CMAKE_STATIC_LIBRARY_PREFIX}z${CMAKE_STATIC_LIBRARY_SUFFIX})
2828
endif()
2929
endif()
3030

fpm.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
name = "h5fortran"
22
description = "Lightweight object-oriented HDF5 interface"
33
categories = "io"
4-
version = "4.9.0"
4+
version = "4.10.1"
55

66
[build]
77
auto-tests = false

0 commit comments

Comments
 (0)