@@ -21,8 +21,6 @@ Pre-conditions:
21
21
22
22
This script will codesign the ``FILES_TO_SIGN``.
23
23
24
- **AN EXAMPLE** is provided to show how you could hardcode some globs, in this specific case it looks for any root dylibs by globbing for ``lib*.dylib``
25
-
26
24
To do so, it uses the `CodeSigning`_ functions :cmake:command:`codesign_files_macos`
27
25
28
26
This script will therefore run in the CPack staging area, and should be added after installation of root dylibs (they may come from fixup_executable)
@@ -32,9 +30,9 @@ Usage::
32
30
33
31
if(APPLE AND CPACK_CODESIGNING_DEVELOPPER_ID_APPLICATION)
34
32
set(FILES_TO_SIGN "fileA" "fileB")
33
+ install(CODE "set(FILES_TO_SIGN \"${FILES_TO_SIGN}\")" COMPONENT Unspecified)
35
34
install(CODE "set(CPACK_CODESIGNING_DEVELOPPER_ID_APPLICATION \"${CPACK_CODESIGNING_DEVELOPPER_ID_APPLICATION}\")" COMPONENT Unspecified)
36
35
install(CODE "set(CPACK_CODESIGNING_MACOS_IDENTIFIER \"${CPACK_CODESIGNING_MACOS_IDENTIFIER}\")" COMPONENT Unspecified)
37
- install(CODE "set(FILES_TO_SIGN \"${FILES_TO_SIGN}\")" COMPONENT Unspecified)
38
36
# call the script
39
37
install(SCRIPT "${CMAKE_CURRENT_LIST_DIR}/install_codesign_script.cmake" COMPONENT Unspecified)
40
38
endif()
@@ -102,226 +100,25 @@ if(NOT CPACK_CODESIGNING_MACOS_IDENTIFIER)
102
100
message (FATAL_ERROR "CPACK_CODESIGNING_MACOS_IDENTIFIER is required" )
103
101
endif ()
104
102
105
-
106
- if (CMAKE_INSTALL_COMPONENT STREQUAL "OpenStudioApp" OR NOT CMAKE_INSTALL_COMPONENT )
107
- list (APPEND FILES_TO_SIGN
108
- EnergyPlus/ExpandObjects
109
- EnergyPlus/energyplus-24.1.0
110
- EnergyPlus/energyplus.1
111
- EnergyPlus/libenergyplusapi.24.1.0.dylib
112
- EnergyPlus/libintl.8.dylib
113
- EnergyPlus/libpython3.8.dylib
114
- Ruby/openstudio.bundle
115
-
116
- Radiance/bin/vinfo
117
- Radiance/bin/pcompos
118
- Radiance/bin/dgraph
119
- Radiance/bin/optics2rad
120
- Radiance/bin/pmapdump
121
- Radiance/bin/bsdf2klems
122
- Radiance/bin/gensurf
123
- Radiance/bin/ra_gif
124
- Radiance/bin/xglaresrc
125
- Radiance/bin/histo
126
- Radiance/bin/libxcb.1.dylib
127
- Radiance/bin/ranimate
128
- Radiance/bin/eplus_adduvf
129
- Radiance/bin/glaze
130
- Radiance/bin/rlam
131
- Radiance/bin/neaten
132
- Radiance/bin/oconv
133
- Radiance/bin/normtiff
134
- Radiance/bin/pfilt
135
- Radiance/bin/ltpict.pl
136
- Radiance/bin/rhoptimize
137
- Radiance/bin/mgf2meta
138
- Radiance/bin/ra_bmp
139
- Radiance/bin/genworm
140
- Radiance/bin/gendaylit
141
- Radiance/bin/libXplugin.1.dylib
142
- Radiance/bin/rhcopy
143
- Radiance/bin/igraph
144
- Radiance/bin/wrapBSDF
145
- Radiance/bin/pvalue
146
- Radiance/bin/rcollate
147
- Radiance/bin/genambpos
148
- Radiance/bin/rcalc
149
- Radiance/bin/pinterp
150
- Radiance/bin/obj2mesh
151
- Radiance/bin/pdfblur
152
- Radiance/bin/falsecolor
153
- Radiance/bin/vwright
154
- Radiance/bin/ra_rgbe
155
- Radiance/bin/rfluxmtx
156
- Radiance/bin/libICE.6.dylib
157
- Radiance/bin/fieldcomb
158
- Radiance/bin/rpiece
159
- Radiance/bin/pcwarp
160
- Radiance/bin/3ds2mgf
161
- Radiance/bin/psign
162
- Radiance/bin/libX11.6.dylib
163
- Radiance/bin/bgraph
164
- Radiance/bin/ev
165
- Radiance/bin/genprism
166
- Radiance/bin/vwrays
167
- Radiance/bin/libglapi.0.dylib
168
- Radiance/bin/bsdf2ttree
169
- Radiance/bin/pgblur
170
- Radiance/bin/mgf2inv
171
- Radiance/bin/phisto
172
- Radiance/bin/rhinfo
173
- Radiance/bin/meta2tga
174
- Radiance/bin/ra_tiff
175
- Radiance/bin/trad
176
- Radiance/bin/objpict
177
- Radiance/bin/ies2rad
178
- Radiance/bin/plotin
179
- Radiance/bin/protate
180
- Radiance/bin/plot4
181
- Radiance/bin/replmarks
182
- Radiance/bin/findglare
183
- Radiance/bin/genbox
184
- Radiance/bin/pextrem
185
- Radiance/bin/gensky
186
- Radiance/bin/xform
187
- Radiance/bin/pexpand
188
- Radiance/bin/genBSDF
189
- Radiance/bin/rcontrib
190
- Radiance/bin/ra_hexbit
191
- Radiance/bin/mgf2rad
192
- Radiance/bin/rad2mgf
193
- Radiance/bin/libxcb-glx.0.dylib
194
- Radiance/bin/rtrace
195
- Radiance/bin/rhpict
196
- Radiance/bin/libXfixes.3.dylib
197
- Radiance/bin/getbbox
198
- Radiance/bin/lampcolor
199
- Radiance/bin/cnt
200
- Radiance/bin/ra_xyze
201
- Radiance/bin/total
202
- Radiance/bin/genskyvec
203
- Radiance/bin/epw2wea
204
- Radiance/bin/pmdblur
205
- Radiance/bin/objline
206
- Radiance/bin/ximage
207
- Radiance/bin/libX11-xcb.1.dylib
208
- Radiance/bin/psort
209
- Radiance/bin/pkgBSDF
210
- Radiance/bin/pbilat
211
- Radiance/bin/ttyimage
212
- Radiance/bin/libXdmcp.6.dylib
213
- Radiance/bin/lookamb
214
- Radiance/bin/ra_ppm
215
- Radiance/bin/libXau.6.dylib
216
- Radiance/bin/mkpmap
217
- Radiance/bin/pmblur
218
- Radiance/bin/tmesh2rad
219
- Radiance/bin/rlux
220
- Radiance/bin/psmeta
221
- Radiance/bin/libXext.6.dylib
222
- Radiance/bin/objview
223
- Radiance/bin/libXxf86vm.1.dylib
224
- Radiance/bin/glarendx
225
- Radiance/bin/ra_t8
226
- Radiance/bin/libGL.1.dylib
227
- Radiance/bin/libXdamage.1.dylib
228
- Radiance/bin/raddepend
229
- Radiance/bin/genklemsamp
230
- Radiance/bin/pflip
231
- Radiance/bin/icalc
232
- Radiance/bin/dctimestep
233
- Radiance/bin/ra_ps
234
- Radiance/bin/tabfunc
235
- Radiance/bin/gendaymtx
236
- Radiance/bin/cv
237
- Radiance/bin/rholo
238
- Radiance/bin/mkillum
239
- Radiance/bin/rvu
240
- Radiance/bin/glrad
241
- Radiance/bin/obj2rad
242
- Radiance/bin/pcomb
243
- Radiance/bin/rmtxop
244
- Radiance/bin/genrev
245
- Radiance/bin/pcond
246
- Radiance/bin/libSM.6.dylib
247
- Radiance/bin/evalglare
248
- Radiance/bin/normpat
249
- Radiance/bin/ra_t16
250
- Radiance/bin/meta2bmp
251
- Radiance/bin/rpict
252
- Radiance/bin/libGLU.1.dylib
253
- Radiance/bin/gcomp
254
- Radiance/bin/rsensor
255
- Radiance/bin/compamb
256
- Radiance/bin/getinfo
257
- Radiance/bin/macbethcal
258
- Radiance/bin/xshowtrace
259
- Radiance/bin/ran2tiff
260
- Radiance/bin/ra_pfm
261
- Radiance/bin/ranimove
262
- Radiance/bin/x11meta
263
- Radiance/bin/rad
264
- Radiance/bin/rttree_reduce
265
- Radiance/bin/x11.hdi
266
- Radiance/bin/nff2rad
267
- Radiance/bin/genrhgrid
268
- Radiance/bin/genblinds
269
- Radiance/bin/genclock
270
- Radiance/bin/mksource
271
- Radiance/bin/dayfact
272
- Radiance/bin/mgfilt
273
- Radiance/bin/xyzimage
274
- Radiance/bin/ra_pict
275
- Radiance/bin/glare
276
- Radiance/bin/ltview.pl
277
- Radiance/bin/libz.1.dylib
278
- Radiance/bin/plugins/platforms/libqcocoa.dylib
279
- Radiance/bin/plugins/imageformats/libqgif.dylib
280
- Radiance/bin/plugins/imageformats/libqico.dylib
281
- Radiance/bin/plugins/imageformats/libqjpeg.dylib
282
- Radiance/bin/plugins/imageformats/libqtiff.dylib
283
- Radiance/bin/QtPrintSupport.framework/Versions/5/QtPrintSupport
284
- Radiance/bin/QtGui.framework/Versions/5/QtGui
285
- Radiance/bin/QtCore.framework/Versions/5/QtCore
286
- Radiance/bin/QtWidgets.framework/Versions/5/QtWidgets
287
- )
288
-
289
- file (GLOB_RECURSE PYTHON_SOS "${CMAKE_INSTALL_PREFIX} /EnergyPlus/python_standard_lib/**/*.so" )
290
- file (GLOB _numpy_dylibs "${CMAKE_INSTALL_PREFIX} /EnergyPlus/python_standard_lib/numpy/.dylibs/*.dylib" )
291
- list (APPEND PYTHON_SOS ${_numpy_dylibs} )
292
-
293
- print_relative_paths (PREFIX "PYTHON_SOS=" ABSOLUTE_PATHS ${PYTHON_SOS} )
294
- endif ()
295
-
296
- if (CMAKE_INSTALL_COMPONENT STREQUAL "Python" OR NOT CMAKE_INSTALL_COMPONENT )
297
- file (GLOB PYTHON_OS_SOS "${CMAKE_INSTALL_PREFIX} /Python/*.so" )
298
- print_relative_paths (PREFIX "PYTHON_OS_SOS=" ABSOLUTE_PATHS ${PYTHON_OS_SOS} )
299
- endif ()
300
-
301
- if (CMAKE_INSTALL_COMPONENT STREQUAL "CLI" OR NOT CMAKE_INSTALL_COMPONENT )
302
- list (APPEND FILES_TO_SIGN
303
- lib/libopenstudiolib.dylib
304
- lib/libpythonengine.so
305
- lib/librubyengine.so
306
- bin/install_utility
307
- )
308
- endif ()
309
-
310
103
if (NOT FILES_TO_SIGN )
311
104
message (AUTHOR_WARNING "FILES_TO_SIGN is empty" )
312
105
else ()
313
106
foreach (path ${FILES_TO_SIGN} )
314
- list (APPEND FULL_PATHS "${CMAKE_INSTALL_PREFIX} /${path} " )
107
+ list (APPEND _FULL_PATHS "${CMAKE_INSTALL_PREFIX} /${path} " )
315
108
endforeach ()
316
- print_relative_paths (PREFIX "FULL_PATHS=" ABSOLUTE_PATHS ${FULL_PATHS } )
109
+ print_relative_paths (PREFIX "FULL_PATHS=" ABSOLUTE_PATHS ${_FULL_PATHS } )
317
110
endif ()
318
111
319
112
include (${CMAKE_CURRENT_LIST_DIR} /CodeSigning.cmake )
320
113
codesign_files_macos (
321
- FILES ${FULL_PATHS} ${PYTHON_SOS} ${PYTHON_OS_SOS }
114
+ FILES ${_FULL_PATHS }
322
115
SIGNING_IDENTITY ${CPACK_CODESIGNING_DEVELOPPER_ID_APPLICATION}
323
116
PREFIX "${CPACK_CODESIGNING_MACOS_IDENTIFIER} ."
324
117
FORCE VERBOSE
325
118
)
326
119
120
+ # Clean up to avoid multiple passes (several components) appending to a pre-existing list
121
+ unset (FILES_TO_SIGN )
122
+ unset (_FULL_PATHS )
123
+
327
124
message ("Finished Codesigning inner executables and library" )
0 commit comments