Skip to content

Commit 48b68c0

Browse files
author
Charles PIGNEROL
committed
Version 7.9.1. Cmake fix when mli format support is requested but HDF145 is not available. Exported cmake target adjustments for non-regression testing.
1 parent 9f0fca7 commit 48b68c0

File tree

8 files changed

+33
-35
lines changed

8 files changed

+33
-35
lines changed

CMakeLists.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ include (cmake/version.cmake)
77
include (cmake/common.cmake)
88

99
set (Lima_VERSION ${LIMA_VERSION})
10+
set (PROJECT_NAMESPACE "${PROJECT_NAME}::")
1011

1112
option (VERBOSE_MAKEFILE ON)
1213
option (BUILD_SHARED_LIBS "Creation de bibliotheques dynamiques (defaut : ON)" ON)

cmake/organization.cmake

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@
77
# ================
88

99
# Le répertoire d'installation où sont mis les fichiers cmake à destination des utilisateurs (Module/cmake) :
10-
set (CMAKE_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/${CURRENT_PACKAGE_NAME}/cmake)
10+
#set (CMAKE_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/${CURRENT_PACKAGE_NAME}/cmake)
11+
set (CMAKE_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}/cmake)
1112

1213
# Répertoire d'installation des bibliothèques (pour le RPATH) :
1314
set (CMAKE_PACKAGE_RPATH_DIR ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR})
1415

1516
# Module::
16-
set (CMAKE_MODULE_NAMESPACE ${CURRENT_PACKAGE_NAME}::)
17+
#set (CMAKE_MODULE_NAMESPACE ${CURRENT_PACKAGE_NAME}::)
18+
set (CMAKE_MODULE_NAMESPACE ${PROJECT_NAME}::)
1719

1820
# ModuleConfig
1921
set (CMAKE_PACKAGE_CONFIG_NAME ${CURRENT_PACKAGE_NAME}Config)
@@ -22,7 +24,8 @@ set (CMAKE_PACKAGE_CONFIG_NAME ${CURRENT_PACKAGE_NAME}Config)
2224
set (CMAKE_PACKAGE_TARGETS_NAME ${CURRENT_PACKAGE_NAME}Targets)
2325

2426
# Le répertoire des fichiers de configuration (lib/Module/cmake) :
25-
set (CMAKE_PACKAGE_CONFIG_DIR ${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME})
27+
#set (CMAKE_PACKAGE_CONFIG_DIR ${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME})
28+
set (CMAKE_PACKAGE_CONFIG_DIR ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME})
2629

2730
# Le Fichier lib/Module/cmake/ModuleConfigVersion.cmake :
2831
set (CMAKE_PACKAGE_CONFIG_FILE ${CMAKE_PACKAGE_CONFIG_DIR}/${CMAKE_PACKAGE_CONFIG_NAME}.cmake)

cmake/version.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
set (LIMA_MAJOR_VERSION "7")
66
set (LIMA_MINOR_VERSION "9")
7-
set (LIMA_RELEASE_VERSION "0")
7+
set (LIMA_RELEASE_VERSION "1")
88
set (LIMA_VERSION ${LIMA_MAJOR_VERSION}.${LIMA_MINOR_VERSION}.${LIMA_RELEASE_VERSION})
99

1010

src/Comparaison_exe/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
set (CURRENT_PACKAGE_NAME "Comparaison_exe")
1+
set (CURRENT_PACKAGE_NAME "Comparaison")
22

33
include (${CMAKE_SOURCE_DIR}/cmake/version.cmake)
44
include (${CMAKE_SOURCE_DIR}/cmake/common.cmake)
@@ -14,5 +14,9 @@ target_link_libraries (comparaison PUBLIC Lima)
1414
# INSTALL_RPATH modifie le rpath pour les libs internes au projet :
1515
set_target_properties (comparaison PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 INSTALL_RPATH ${CMAKE_PACKAGE_RPATH_DIR})
1616

17+
install(TARGETS comparaison EXPORT Comparaison DESTINATION ${CMAKE_INSTALL_BINDIR}
18+
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
1719

20+
set (ConfigPackageLocation ${CMAKE_CMAKE_DIR})
21+
install (EXPORT Comparaison FILE ComparaisonTargets.cmake NAMESPACE ${PROJECT_NAMESPACE} DESTINATION ${ConfigPackageLocation})
1822

src/Lima/CMakeLists.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ if (MACHINE_TYPES)
88
endif (MACHINE_TYPES)
99
if (FORMAT_MLI)
1010
include (${CMAKE_SOURCE_DIR}/cmake/FindHdf145.cmake)
11+
if (NOT HDF145_FOUND)
12+
message (FATAL_ERROR "Support du format mli demandé mais bibliothèque HDF145 non trouvée.")
13+
endif (NOT HDF145_FOUND)
1114
endif (FORMAT_MLI)
1215
unset (HDF5_USE_STATIC_LIBRARIES)
1316
if (FORMAT_MLI2)

src/Lima/cmake/LimaConfig.cmake.in

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ set_and_check (Lima_LIB_DIR "@PACKAGE_LIB_INSTALL_DIR@")
2323
# Ugly code :
2424
set (Lima_VERSION @LIMA_VERSION@)
2525
check_required_components (Lima)
26+
check_required_components (LimaScripting)
27+
check_required_components (Xlmlima)
28+
check_required_components (Comparaison)
29+
check_required_components (Symetrize)
2630

2731
# Les formats optionnels supportés (ON) ou non (OFF) :
2832
set (MLI_SUPPORT @MLI_SUPPORTED@)
@@ -31,4 +35,7 @@ set (ICEM_SUPPORT @ICEM_SUPPORTED@)
3135

3236
# Fournir l'accès aux services des cibles (fichier non inclus automatiquement) :
3337
include(${CMAKE_CURRENT_LIST_DIR}/LimaTargets.cmake)
34-
38+
include(${CMAKE_CURRENT_LIST_DIR}/LimaScriptingTargets.cmake)
39+
include(${CMAKE_CURRENT_LIST_DIR}/XlmlimaTargets.cmake)
40+
include(${CMAKE_CURRENT_LIST_DIR}/ComparaisonTargets.cmake)
41+
include(${CMAKE_CURRENT_LIST_DIR}/SymetriseTargets.cmake)

src/Symetrise/CMakeLists.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
set (CURRENT_PACKAGE_NAME "Symetrise_exe")
1+
set (CURRENT_PACKAGE_NAME "Symetrise")
22

33
include (${CMAKE_SOURCE_DIR}/cmake/version.cmake)
44
include (${CMAKE_SOURCE_DIR}/cmake/common.cmake)
@@ -14,5 +14,8 @@ target_link_libraries (symetrise PUBLIC Lima)
1414
# INSTALL_RPATH modifie le rpath pour les libs internes au projet :
1515
set_target_properties (symetrise PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 INSTALL_RPATH ${CMAKE_PACKAGE_RPATH_DIR})
1616

17-
install(TARGETS symetrise EXPORT Symetrise_exe DESTINATION ${CMAKE_INSTALL_BINDIR}
17+
install(TARGETS symetrise EXPORT Symetrise DESTINATION ${CMAKE_INSTALL_BINDIR}
1818
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
19+
20+
set (ConfigPackageLocation ${CMAKE_CMAKE_DIR})
21+
install (EXPORT Symetrise FILE SymetriseTargets.cmake NAMESPACE ${PROJECT_NAMESPACE} DESTINATION ${ConfigPackageLocation})

src/Xlmlima_exe/CMakeLists.txt

Lines changed: 4 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
set (CURRENT_PACKAGE_NAME "Xlmlima_exe")
1+
set (CURRENT_PACKAGE_NAME "Xlmlima")
22

33
include (${CMAKE_SOURCE_DIR}/cmake/version.cmake)
44
include (${CMAKE_SOURCE_DIR}/cmake/common.cmake)
@@ -15,33 +15,10 @@ target_link_libraries (xlmlima PRIVATE Lima)
1515
# INSTALL_RPATH modifie le rpath pour les libs internes au projet :
1616
set_target_properties (xlmlima PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1 INSTALL_RPATH ${CMAKE_PACKAGE_RPATH_DIR})
1717

18-
# INSTALLATION :
19-
include(CMakePackageConfigHelpers)
20-
# ConfigPackageLocation : c'est plus ou moins standardisé, le défaut étant lib/cmake.
21-
# On nos recommande très vivement d'utiliser ce répertoire afin de limiter les soucis par la suite,
22-
# notamment au niveau des vues.
23-
set (ConfigPackageLocation ${CMAKE_CMAKE_DIR})
24-
25-
install(TARGETS xlmlima EXPORT Xlmlima_exe DESTINATION ${CMAKE_INSTALL_BINDIR}
18+
install(TARGETS xlmlima EXPORT Xlmlima DESTINATION ${CMAKE_INSTALL_BINDIR}
2619
PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_WRITE GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
2720

28-
set (RUNTIME_INSTALL_DIR bin/)
29-
configure_package_config_file(cmake/${CURRENT_PACKAGE_NAME}Config.cmake.in
30-
${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME}/${CURRENT_PACKAGE_NAME}Config.cmake
31-
INSTALL_DESTINATION ${CMAKE_CMAKE_DIR}
32-
PATH_VARS RUNTIME_INSTALL_DIR
33-
)
34-
write_basic_package_version_file(
35-
${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME}/${CURRENT_PACKAGE_NAME}ConfigVersion.cmake
36-
VERSION ${LIMA_VERSION}
37-
COMPATIBILITY SameMajorVersion
38-
)
39-
install (
40-
FILES
41-
${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME}/${CURRENT_PACKAGE_NAME}Config.cmake
42-
${CMAKE_CURRENT_BINARY_DIR}/${CURRENT_PACKAGE_NAME}/${CURRENT_PACKAGE_NAME}ConfigVersion.cmake
43-
DESTINATION ${ConfigPackageLocation}
44-
PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ GROUP_WRITE WORLD_READ
45-
)
21+
set (ConfigPackageLocation ${CMAKE_CMAKE_DIR})
22+
install (EXPORT Xlmlima FILE XlmlimaTargets.cmake NAMESPACE ${PROJECT_NAMESPACE} DESTINATION ${ConfigPackageLocation})
4623

4724

0 commit comments

Comments
 (0)