@@ -21,9 +21,9 @@ endif()
2121
2222# --- Detect processor count for parallel packaging ---
2323include (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 } )
2727else ()
2828 set (CPACK_THREADS 1)
2929endif ()
@@ -90,6 +90,19 @@ set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "nfx-stringbuilder")
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 ---
94107if (NOT DEFINED CPACK_GENERATOR)
95108 set (CPACK_GENERATOR "" )
@@ -105,7 +118,6 @@ if(NOT DEFINED CPACK_GENERATOR)
105118
106119 # --- DEB packages ---
107120 if (NFX_STRINGBUILDER_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_STRINGBUILDER_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_STRINGBUILDER_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
163159if ("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()
178173if ("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,7 @@ 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} " )
201+ set (CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON )
212202endif ()
213203
214204# --- RPM package settings ---
@@ -225,12 +215,7 @@ if("RPM" IN_LIST CPACK_GENERATOR AND UNIX AND NOT APPLE)
225215 set (CPACK_RPM_PACKAGE_VENDOR ${CPACK_PACKAGE_VENDOR} )
226216 set (CPACK_RPM_PACKAGE_DESCRIPTION ${PROJECT_DESCRIPTION} )
227217 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} " )
218+ set (CPACK_RPM_PACKAGE_AUTOREQ ON )
234219endif ()
235220
236221#----------------------------------------------
0 commit comments