Skip to content

Commit 526af03

Browse files
chore(cmake): standardize variable naming and packaging configuration
1 parent bf21e8f commit 526af03

9 files changed

Lines changed: 53 additions & 67 deletions

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ The complete API documentation is available online at:
185185
cmake .. -DCMAKE_BUILD_TYPE=Release -DNFX_HASHING_BUILD_DOCUMENTATION=ON
186186

187187
# Build the documentation
188-
cmake --build . --target documentation
188+
cmake --build . --target nfx-hashing-documentation
189189
```
190190

191191
#### Requirements

benchmark/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,17 @@ endif()
1515
# Benchmarks source files
1616
#----------------------------------------------
1717

18-
set(BENCHMARK_SOURCES)
18+
set(benchmark_sources)
1919

20-
list(APPEND BENCHMARK_SOURCES
20+
list(APPEND benchmark_sources
2121
BM_Hashing.cpp
2222
)
2323

2424
#----------------------------------------------
2525
# Configure benchmark executables
2626
#----------------------------------------------
2727

28-
foreach(benchmark_source ${BENCHMARK_SOURCES})
28+
foreach(benchmark_source ${benchmark_sources})
2929
get_filename_component(benchmark_target_name ${benchmark_source} NAME_WE)
3030
if(NOT TARGET ${benchmark_target_name})
3131
add_executable(${benchmark_target_name} ${benchmark_source})

cmake/nfx-hashing-config.cmake.in

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,6 @@ set(NFX_HASHING_VERSION_PATCH "@PROJECT_VERSION_PATCH@")
2323
set_and_check(NFX_HASHING_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@")
2424
set_and_check(NFX_HASHING_LIB_DIR "@PACKAGE_CMAKE_INSTALL_LIBDIR@")
2525

26-
# Our library dependencies (none - self-contained library)
27-
2826
# Include the targets file
2927
include("${CMAKE_CURRENT_LIST_DIR}/nfx-hashing-targets.cmake")
3028

cmake/nfxHashingBuildConfig.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ include(GNUInstallDirs)
4545
# Directory configuration
4646
#----------------------------------------------
4747

48-
set(NFX_HASHING_DIR "${PROJECT_SOURCE_DIR}" CACHE PATH "Root directory" )
48+
set(NFX_HASHING_DIR "${PROJECT_SOURCE_DIR}" CACHE PATH "Root directory" )
4949
set(NFX_HASHING_INCLUDE_DIR "${NFX_HASHING_DIR}/include" CACHE PATH "Include directory")
5050

5151
#----------------------------------------------

cmake/nfxHashingDependencies.cmake

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
# nfx-hashing - Dependencies configuration
33
#==============================================================================
44

5-
#----------------------------
5+
#----------------------------------------------
66
# Output configuration
7-
#----------------------------
7+
#----------------------------------------------
88

99
set(_SAVED_CMAKE_REQUIRED_QUIET ${CMAKE_REQUIRED_QUIET})
1010
set(_SAVED_CMAKE_MESSAGE_LOG_LEVEL ${CMAKE_MESSAGE_LOG_LEVEL})
@@ -83,9 +83,9 @@ if(NFX_HASHING_BUILD_BENCHMARKS)
8383
endif()
8484
endif()
8585

86-
#----------------------------
86+
#----------------------------------------------
8787
# Dependency fetching
88-
#----------------------------
88+
#----------------------------------------------
8989

9090
if(NFX_HASHING_BUILD_TESTS)
9191
if(NOT GTest_FOUND)
@@ -99,9 +99,9 @@ if(NFX_HASHING_BUILD_BENCHMARKS)
9999
endif()
100100
endif()
101101

102-
#----------------------------
102+
#----------------------------------------------
103103
# Cleanup
104-
#----------------------------
104+
#----------------------------------------------
105105

106106
set(CMAKE_REQUIRED_QUIET ${_SAVED_CMAKE_REQUIRED_QUIET})
107107
set(CMAKE_MESSAGE_LOG_LEVEL ${_SAVED_CMAKE_MESSAGE_LOG_LEVEL})

cmake/nfxHashingInstall.cmake

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,14 @@ install(
3939
# Install library targets
4040
#----------------------------------------------
4141

42-
set(INSTALL_TARGETS)
42+
set(install_targets)
4343

4444
# Header-only interface library
45-
list(APPEND INSTALL_TARGETS ${PROJECT_NAME})
45+
list(APPEND install_targets ${PROJECT_NAME})
4646

47-
if(INSTALL_TARGETS)
47+
if(install_targets)
4848
install(
49-
TARGETS ${INSTALL_TARGETS}
49+
TARGETS ${install_targets}
5050
EXPORT nfx-hashing-targets
5151
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
5252
COMPONENT Development
@@ -113,13 +113,18 @@ install(
113113
install(
114114
FILES "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.txt"
115115
DESTINATION "${CMAKE_INSTALL_DOCDIR}/licenses"
116+
RENAME "LICENSE-${PROJECT_NAME}.txt"
116117
)
117118

118-
install(
119-
DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/licenses/"
120-
DESTINATION "${CMAKE_INSTALL_DOCDIR}/licenses"
121-
FILES_MATCHING PATTERN "LICENSE.txt-*"
122-
)
119+
file(GLOB LICENSE_FILES "${CMAKE_CURRENT_SOURCE_DIR}/licenses/LICENSE-*")
120+
foreach(LICENSE_FILE ${LICENSE_FILES})
121+
get_filename_component(LICENSE_NAME ${LICENSE_FILE} NAME)
122+
install(
123+
FILES ${LICENSE_FILE}
124+
DESTINATION "${CMAKE_INSTALL_DOCDIR}/licenses"
125+
RENAME "${LICENSE_NAME}.txt"
126+
)
127+
endforeach()
123128

124129
#----------------------------------------------
125130
# Install documentation
@@ -152,4 +157,4 @@ if(NFX_HASHING_BUILD_DOCUMENTATION)
152157
endif()
153158
endif()
154159

155-
message(STATUS "Installation configured for targets: ${INSTALL_TARGETS}")
160+
message(STATUS "Installation configured for targets: ${install_targets}")

cmake/nfxHashingPackaging.cmake

Lines changed: 21 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ endif()
2121

2222
# --- Detect processor count for parallel packaging ---
2323
include(ProcessorCount)
24-
ProcessorCount(N)
25-
if(NOT N EQUAL 0)
26-
set(CPACK_THREADS ${N})
24+
ProcessorCount(processor_count)
25+
if(NOT processor_count EQUAL 0)
26+
set(CPACK_THREADS ${processor_count})
2727
else()
2828
set(CPACK_THREADS 1)
2929
endif()
@@ -90,6 +90,19 @@ set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "nfx-hashing")
9090
# Platform-specific generators
9191
#----------------------------------------------
9292

93+
# --- Find packaging tools ---
94+
if(UNIX AND NOT APPLE)
95+
find_program(DPKG_CMD dpkg)
96+
find_program(RPM_CMD rpm)
97+
endif()
98+
99+
if(WIN32)
100+
if(NOT WIX_CANDLE OR NOT WIX_LIGHT)
101+
find_program(WIX_CANDLE NAMES candle.exe candle HINTS "$ENV{WIX}/bin")
102+
find_program(WIX_LIGHT NAMES light.exe light HINTS "$ENV{WIX}/bin")
103+
endif()
104+
endif()
105+
93106
# --- Generators ---
94107
if(NOT DEFINED CPACK_GENERATOR)
95108
set(CPACK_GENERATOR "")
@@ -105,7 +118,6 @@ if(NOT DEFINED CPACK_GENERATOR)
105118

106119
# --- DEB packages ---
107120
if(NFX_HASHING_PACKAGE_DEB AND UNIX AND NOT APPLE)
108-
find_program(DPKG_CMD dpkg)
109121
if(DPKG_CMD)
110122
set(CPACK_GENERATOR "${CPACK_GENERATOR};DEB")
111123
else()
@@ -115,7 +127,6 @@ if(NOT DEFINED CPACK_GENERATOR)
115127

116128
# --- RPM packages ---
117129
if(NFX_HASHING_PACKAGE_RPM AND UNIX AND NOT APPLE)
118-
find_program(RPM_CMD rpm)
119130
if(RPM_CMD)
120131
set(CPACK_GENERATOR "${CPACK_GENERATOR};RPM")
121132
else()
@@ -125,26 +136,11 @@ if(NOT DEFINED CPACK_GENERATOR)
125136

126137
# --- WiX packages ---
127138
if(NFX_HASHING_PACKAGE_WIX AND WIN32)
128-
if(NOT WIX_CANDLE OR NOT WIX_LIGHT)
129-
set(WIX_SEARCH_PATHS
130-
"C:/Program Files (x86)/WiX Toolset v3.14/bin"
131-
"C:/Program Files (x86)/WiX Toolset v3.11/bin"
132-
"C:/Program Files (x86)/WiX Toolset v3.10/bin"
133-
"$ENV{WIX}bin"
134-
)
135-
136-
find_program(WIX_CANDLE NAMES candle.exe candle PATHS ${WIX_SEARCH_PATHS} NO_DEFAULT_PATH)
137-
find_program(WIX_LIGHT NAMES light.exe light PATHS ${WIX_SEARCH_PATHS} NO_DEFAULT_PATH)
138-
endif()
139-
140139
if(WIX_CANDLE AND WIX_LIGHT)
141140
set(CPACK_GENERATOR "${CPACK_GENERATOR};WIX")
142141
message(STATUS "WiX found: ${WIX_CANDLE} - Windows MSI installer generation enabled")
143142
else()
144-
message(STATUS "WiX not found - install WiX Toolset v3.x for MSI installer support")
145-
if(DEFINED WIX_SEARCH_PATHS)
146-
message(STATUS " Searched paths: ${WIX_SEARCH_PATHS}")
147-
endif()
143+
message(STATUS "WiX not found - install WiX Toolset and ensure WIX environment variable is set")
148144
endif()
149145
endif()
150146

@@ -162,13 +158,12 @@ message(STATUS " Output dir: ${CPACK_PACKAGE_DIRECTORY}")
162158

163159
if("DEB" IN_LIST CPACK_GENERATOR AND UNIX AND NOT APPLE)
164160
if(NOT DEFINED CPACK_DEBIAN_PACKAGE_ARCHITECTURE)
165-
find_program(DPKG_CMD dpkg)
166161
if(DPKG_CMD)
167162
execute_process(COMMAND ${DPKG_CMD} --print-architecture
168-
OUTPUT_VARIABLE DETECTED_DEB_ARCH
163+
OUTPUT_VARIABLE detected_deb_arch
169164
OUTPUT_STRIP_TRAILING_WHITESPACE
170165
ERROR_QUIET)
171-
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "${DETECTED_DEB_ARCH}")
166+
set(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "${detected_deb_arch}")
172167
endif()
173168
endif()
174169

@@ -178,10 +173,10 @@ endif()
178173
if("RPM" IN_LIST CPACK_GENERATOR AND UNIX AND NOT APPLE)
179174
if(NOT DEFINED CPACK_RPM_PACKAGE_ARCHITECTURE)
180175
execute_process(COMMAND uname -m
181-
OUTPUT_VARIABLE DETECTED_RPM_ARCH
176+
OUTPUT_VARIABLE detected_rpm_arch
182177
OUTPUT_STRIP_TRAILING_WHITESPACE
183178
ERROR_QUIET)
184-
set(CPACK_RPM_PACKAGE_ARCHITECTURE "${DETECTED_RPM_ARCH}")
179+
set(CPACK_RPM_PACKAGE_ARCHITECTURE "${detected_rpm_arch}")
185180
endif()
186181

187182
message(STATUS "RPM package architecture: ${CPACK_RPM_PACKAGE_ARCHITECTURE}")
@@ -203,12 +198,6 @@ if("DEB" IN_LIST CPACK_GENERATOR AND UNIX AND NOT APPLE)
203198
set(CPACK_DEBIAN_COMPRESSION_TYPE "xz")
204199
set(CPACK_DEBIAN_PACKAGE_PRIORITY "optional")
205200
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CPACK_PACKAGE_HOMEPAGE_URL})
206-
207-
# --- Core runtime dependencies ---
208-
set(DEB_DEPENDS "libc6, libstdc++6, libgcc-s1")
209-
210-
set(CPACK_DEBIAN_PACKAGE_DEPENDS "${DEB_DEPENDS}")
211-
message(STATUS "DEB dependencies: ${CPACK_DEBIAN_PACKAGE_DEPENDS}")
212201
endif()
213202

214203
# --- RPM package settings ---
@@ -225,12 +214,6 @@ if("RPM" IN_LIST CPACK_GENERATOR AND UNIX AND NOT APPLE)
225214
set(CPACK_RPM_PACKAGE_VENDOR ${CPACK_PACKAGE_VENDOR})
226215
set(CPACK_RPM_PACKAGE_DESCRIPTION ${PROJECT_DESCRIPTION})
227216
set(CPACK_RPM_PACKAGE_URL ${CPACK_PACKAGE_HOMEPAGE_URL})
228-
229-
# --- Core runtime dependencies ---
230-
set(RPM_REQUIRES "glibc, libstdc++")
231-
232-
set(CPACK_RPM_PACKAGE_REQUIRES "${RPM_REQUIRES}")
233-
message(STATUS "RPM dependencies: ${CPACK_RPM_PACKAGE_REQUIRES}")
234217
endif()
235218

236219
#----------------------------------------------

samples/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ endif()
1515
# Samples source files
1616
#----------------------------------------------
1717

18-
set(SAMPLE_SOURCES)
18+
set(sample_sources)
1919

20-
list(APPEND SAMPLE_SOURCES
20+
list(APPEND sample_sources
2121
Sample_AdvancedHashing.cpp
2222
Sample_Hash.cpp
2323
Sample_Hasher.cpp
@@ -28,7 +28,7 @@ list(APPEND SAMPLE_SOURCES
2828
# Configure samples executables
2929
#----------------------------------------------
3030

31-
foreach(sample_source ${SAMPLE_SOURCES})
31+
foreach(sample_source ${sample_sources})
3232
get_filename_component(sample_target_name ${sample_source} NAME_WE)
3333

3434
if(NOT TARGET ${sample_target_name})

test/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ endif()
3535
# Tests source files
3636
#----------------------------------------------
3737

38-
set(TEST_SOURCES)
38+
set(test_sources)
3939

40-
list(APPEND TEST_SOURCES
40+
list(APPEND test_sources
4141
TESTS_Hash.cpp
4242
TESTS_HashAlgorithms.cpp
4343
TESTS_HasherFunctor.cpp
@@ -48,7 +48,7 @@ list(APPEND TEST_SOURCES
4848
# Configure test executables
4949
#----------------------------------------------
5050

51-
foreach(test_source ${TEST_SOURCES})
51+
foreach(test_source ${test_sources})
5252
get_filename_component(test_target_name ${test_source} NAME_WE)
5353

5454
if(NOT TARGET ${test_target_name})

0 commit comments

Comments
 (0)