@@ -61,8 +61,8 @@ set(APPDATADIR "${CMAKE_INSTALL_PREFIX}/share/games/supertux2")
61
61
62
62
set (BUILD_DATA_DIR "${CMAKE_CURRENT_SOURCE_DIR} /data" )
63
63
set (BUILD_CONFIG_DATA_DIR "${CMAKE_BINARY_DIR} /data" )
64
- ## Check endianess
65
64
65
+ ## Check endianess
66
66
if (NOT EMSCRIPTEN)
67
67
# FIXME: Any reason why we need this?
68
68
include (TestBigEndian)
@@ -76,6 +76,23 @@ elseif(CMAKE_BUILD_TYPE MATCHES Debug)
76
76
add_definitions (-DDEBUG)
77
77
endif ()
78
78
79
+ # Options for install
80
+ if (WIN32 AND NOT UNIX )
81
+ set (INSTALL_SUBDIR_BIN "bin" CACHE STRING "Installation subdir for binaries" )
82
+ set (INSTALL_SUBDIR_SHARE "data" CACHE STRING "Installation subdir for data" )
83
+ set (INSTALL_SUBDIR_DOC "doc" CACHE STRING "Installation subdir for docs" )
84
+ else ()
85
+ if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND DISABLE_CPACK_BUNDLING)
86
+ set (INSTALL_SUBDIR_BIN "SuperTux.app/Contents/MacOS" CACHE STRING "Installation subdir for binaries" )
87
+ set (INSTALL_SUBDIR_SHARE "SuperTux.app/Contents/Resources/data" CACHE STRING "Installation subdir for data" )
88
+ set (INSTALL_SUBDIR_DOC "SuperTux.app/Contents/Resources" CACHE STRING "Installation subdir for docs" )
89
+ else ()
90
+ set (INSTALL_SUBDIR_BIN "games" CACHE STRING "Installation subdir for binaries" )
91
+ set (INSTALL_SUBDIR_SHARE "share/games/supertux2" CACHE STRING "Installation subdir for data" )
92
+ set (INSTALL_SUBDIR_DOC "share/doc/supertux2" CACHE STRING "Installation subdir for docs" )
93
+ endif ()
94
+ endif ()
95
+
79
96
if (EMSCRIPTEN)
80
97
set (CMAKE_EXECUTABLE_SUFFIX .html)
81
98
set (IS_EMSCRIPTEN_BUILD ON )
@@ -265,116 +282,9 @@ if(NOT EMSCRIPTEN)
265
282
endif ()
266
283
267
284
## Install stuff
268
- if (WIN32 AND NOT UNIX )
269
-
270
- set (INSTALL_SUBDIR_BIN "bin" CACHE STRING "Installation subdir for binaries" )
271
- set (INSTALL_SUBDIR_SHARE "data" CACHE STRING "Installation subdir for data" )
272
- set (INSTALL_SUBDIR_DOC "doc" CACHE STRING "Installation subdir for docs" )
273
-
274
- if (VCPKG_BUILD)
275
- install (DIRECTORY "${CMAKE_CURRENT_BINARY_DIR} /\$ {CMAKE_INSTALL_CONFIG_NAME}/" DESTINATION ${INSTALL_SUBDIR_BIN} FILES_MATCHING PATTERN "*.dll" )
276
- else ()
277
- install (FILES ${DLLS} DESTINATION ${INSTALL_SUBDIR_BIN} )
278
- endif ()
279
-
280
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.ico DESTINATION "." )
281
-
282
- option (PACKAGE_VCREDIST "Package the VCREDIST libraries with the program" OFF )
283
-
284
- if (PACKAGE_VCREDIST)
285
- set (CMAKE_INSTALL_UCRT_LIBRARIES true )
286
- include (InstallRequiredSystemLibraries)
287
- endif ()
288
-
289
- else ()
290
- if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin" AND DISABLE_CPACK_BUNDLING)
291
-
292
- set (INFOPLIST_CFBUNDLEEXECUTABLE "supertux2" )
293
-
294
- set (INSTALL_SUBDIR_BIN "SuperTux.app/Contents/MacOS" CACHE STRING "Installation subdir for binaries" )
295
- set (INSTALL_SUBDIR_SHARE "SuperTux.app/Contents/Resources/data" CACHE STRING "Installation subdir for data" )
296
- set (INSTALL_SUBDIR_DOC "SuperTux.app/Contents/Resources" CACHE STRING "Installation subdir for docs" )
297
-
298
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /tools/darwin/info.plist.in ${CMAKE_BINARY_DIR} /tools/darwin/info.plist)
299
- install (FILES ${CMAKE_BINARY_DIR} /tools/darwin/info.plist DESTINATION "SuperTux.app/Contents/" )
300
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /tools/darwin/receipt DESTINATION "SuperTux.app/Contents/_MASReceipt/" )
301
-
302
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.icns DESTINATION "SuperTux.app/Contents/Resources/" )
303
-
304
- else ()
305
-
306
- set (INSTALL_SUBDIR_BIN "games" CACHE STRING "Installation subdir for binaries" )
307
- set (INSTALL_SUBDIR_SHARE "share/games/supertux2" CACHE STRING "Installation subdir for data" )
308
- set (INSTALL_SUBDIR_DOC "share/doc/supertux2" CACHE STRING "Installation subdir for docs" )
309
-
310
- if (UBUNTU_TOUCH)
311
- set (LINUX_DESKTOP_ICON "assets/supertux-256x256.png" )
312
- # FIXME: The "install" folder is a folder managed by Clickable and shouldn't be hardcoded here
313
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /supertux2.desktop.in "install/supertux2.desktop" )
314
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /mk/clickable/supertux2.apparmor DESTINATION "." )
315
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /mk/clickable/manifest.json.in ${CMAKE_CURRENT_BINARY_DIR} /install /manifest.json)
316
- set (APPS "\$ ENV{DESTDIR}\$ {CMAKE_INSTALL_PREFIX}/supertux2" )
317
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux-256x256.png DESTINATION "assets" )
318
- else ()
319
- set (LINUX_DESKTOP_ICON "supertux2" )
320
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /supertux2.desktop.in "supertux2.desktop" )
321
- install (FILES ${CMAKE_BINARY_DIR} /supertux2.desktop DESTINATION "share/applications" )
322
- set (APPS "\$ ENV{DESTDIR}\$ {CMAKE_INSTALL_PREFIX}/${INSTALL_SUBDIR_BIN} /supertux2" )
323
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.png ${CMAKE_CURRENT_SOURCE_DIR} /data/images/engine/icons/supertux.xpm DESTINATION "share/pixmaps/" )
324
- endif ()
325
-
326
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /supertux2.svg DESTINATION "share/icons/hicolor/scalable/apps" )
327
-
328
- endif ()
329
- endif ()
330
-
331
- if (UBUNTU_TOUCH)
332
- install (TARGETS supertux2 DESTINATION "." )
333
- else ()
334
- install (TARGETS supertux2 DESTINATION ${INSTALL_SUBDIR_BIN} )
335
- endif ()
336
-
337
- if (EMSCRIPTEN)
338
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /mk/emscripten/template.html.in ${CMAKE_CURRENT_BINARY_DIR} /template.html)
339
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /mk/emscripten/supertux2.png ${CMAKE_CURRENT_BINARY_DIR} /supertux2.png COPYONLY )
340
- configure_file (${CMAKE_CURRENT_SOURCE_DIR} /mk/emscripten/supertux2_bkg.png ${CMAKE_CURRENT_BINARY_DIR} /supertux2_bkg.png COPYONLY )
341
- endif ()
342
-
343
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /INSTALL .md ${CMAKE_CURRENT_SOURCE_DIR} /README.md ${CMAKE_CURRENT_SOURCE_DIR} /LICENSE.txt ${CMAKE_CURRENT_SOURCE_DIR} /NEWS.md DESTINATION ${INSTALL_SUBDIR_DOC} )
344
-
345
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /data/credits.stxt DESTINATION ${INSTALL_SUBDIR_SHARE} )
346
-
347
- install (FILES ${CMAKE_CURRENT_SOURCE_DIR} /supertux2.appdata.xml DESTINATION "share/metainfo" )
348
-
349
- install (DIRECTORY
350
- ${CMAKE_CURRENT_SOURCE_DIR} /data/images
351
- ${CMAKE_CURRENT_SOURCE_DIR} /data/fonts
352
- ${CMAKE_CURRENT_SOURCE_DIR} /data/music
353
- ${CMAKE_CURRENT_SOURCE_DIR} /data/particles
354
- ${CMAKE_CURRENT_SOURCE_DIR} /data/scripts
355
- ${CMAKE_CURRENT_SOURCE_DIR} /data/shader
356
- ${CMAKE_CURRENT_SOURCE_DIR} /data/speech
357
- ${CMAKE_CURRENT_SOURCE_DIR} /data/sounds
358
- ${CMAKE_CURRENT_SOURCE_DIR} /data/locale
359
- DESTINATION ${INSTALL_SUBDIR_SHARE} )
360
-
361
- if (CMAKE_BUILD_TYPE MATCHES "Release|RelWithDebInfo" )
362
- install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /data/levels
363
- DESTINATION ${INSTALL_SUBDIR_SHARE}
364
- PATTERN "data/levels/test" EXCLUDE
365
- PATTERN "data/levels/test_old" EXCLUDE
366
- PATTERN "data/levels/incubator" EXCLUDE
367
- PATTERN "data/levels/misc/menu.stl.in" EXCLUDE )
368
- else ()
369
- install (DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} /data/levels
370
- DESTINATION ${INSTALL_SUBDIR_SHARE}
371
- PATTERN "data/levels/misc/menu.stl.in" EXCLUDE )
372
- endif ()
373
-
374
- install (FILES "${CMAKE_BINARY_DIR} /data/levels/misc/menu.stl" DESTINATION "${INSTALL_SUBDIR_SHARE} /levels/misc" )
285
+ include (SuperTux/BuildInstall)
375
286
376
287
## Create config.h now that INSTALL_SUBDIR_* have been set.
377
-
378
288
configure_file (config.h.cmake ${CMAKE_BINARY_DIR} /config.h )
379
289
380
290
## Configure main menu logo
0 commit comments