comparison examples/CMakeLists.txt @ 261:bfde372bf152

core: prefix utilities with util_
author David Demelier <markand@malikania.fr>
date Sun, 06 Dec 2020 23:06:34 +0100
parents 16be1ad3ddba
children cd5bdb995052
comparison
equal deleted inserted replaced
260:60a214ec1ab4 261:bfde372bf152
21 set( 21 set(
22 ASSETS_IMAGES 22 ASSETS_IMAGES
23 ${examples_SOURCE_DIR}/assets/images/battle-background.png 23 ${examples_SOURCE_DIR}/assets/images/battle-background.png
24 ${examples_SOURCE_DIR}/assets/images/black-cat.png 24 ${examples_SOURCE_DIR}/assets/images/black-cat.png
25 ${examples_SOURCE_DIR}/assets/images/haunted-wood.png 25 ${examples_SOURCE_DIR}/assets/images/haunted-wood.png
26 )
27
28 set(
29 ASSETS_MAPS
30 )
31
32 set(
33 ASSETS_MAPS_SPRITES
34 ${examples_SOURCE_DIR}/assets/maps/sprite-town.png
35 ${examples_SOURCE_DIR}/assets/maps/sprite-world.png
36 )
37
38 set(
39 ASSETS_MAPS_ANIMATIONS
40 ${examples_SOURCE_DIR}/assets/maps/animation-water.png
41 )
42
43 set(
44 ASSETS_TILESETS
45 ) 26 )
46 27
47 set( 28 set(
48 ASSETS_MUSIC 29 ASSETS_MUSIC
49 ${examples_SOURCE_DIR}/assets/music/vabsounds-romance.ogg 30 ${examples_SOURCE_DIR}/assets/music/vabsounds-romance.ogg
75 ) 56 )
76 57
77 # Can't use an interface library as examples live in subdirectories. 58 # Can't use an interface library as examples live in subdirectories.
78 file(WRITE ${examples_BINARY_DIR}/none.c "void molko() {}") 59 file(WRITE ${examples_BINARY_DIR}/none.c "void molko() {}")
79 60
80 # These files just need to be copied.
81 file(MAKE_DIRECTORY ${cmake_BINARY_DIR}/assets/maps)
82
83 foreach (s ${ASSETS_MAPS_SPRITES} ${ASSETS_MAPS_ANIMATIONS})
84 get_filename_component(basename ${s} NAME)
85 set(output ${examples_BINARY_DIR}/assets/maps/${basename})
86
87 add_custom_command(
88 OUTPUT ${output}
89 COMMENT "Copy ${basename}"
90 DEPENDS ${s}
91 COMMAND ${CMAKE_COMMAND} -E copy ${s} ${output}
92 VERBATIM
93 )
94
95 list(APPEND COPY_OUTPUTS ${output})
96 endforeach ()
97
98 molko_define_library( 61 molko_define_library(
99 TARGET libexamples 62 TARGET libexamples
100 FOLDER examples 63 FOLDER examples
101 SOURCES 64 SOURCES
102 ${examples_BINARY_DIR}/none.c 65 ${examples_BINARY_DIR}/none.c
103 ${COPY_OUTPUTS}
104 ${ASSETS} 66 ${ASSETS}
105 ${ASSETS_MAPS}
106 ${ASSETS_TILESETS}
107 PUBLIC_FLAGS
108 BINDIR="${examples_BINARY_DIR}"
109 ASSETS ${ASSETS} 67 ASSETS ${ASSETS}
110 MAPS ${ASSETS_MAPS}
111 TILESETS ${ASSETS_TILESETS}
112 ) 68 )
113 69
114 add_subdirectory(example-action) 70 add_subdirectory(example-action)
115 add_subdirectory(example-animation) 71 add_subdirectory(example-animation)
116 add_subdirectory(example-audio) 72 add_subdirectory(example-audio)
119 add_subdirectory(example-debug) 75 add_subdirectory(example-debug)
120 add_subdirectory(example-drawable) 76 add_subdirectory(example-drawable)
121 add_subdirectory(example-font) 77 add_subdirectory(example-font)
122 add_subdirectory(example-gridmenu) 78 add_subdirectory(example-gridmenu)
123 add_subdirectory(example-label) 79 add_subdirectory(example-label)
124 add_subdirectory(example-map)
125 add_subdirectory(example-message) 80 add_subdirectory(example-message)
126 add_subdirectory(example-sprite) 81 add_subdirectory(example-sprite)
127 add_subdirectory(example-trace) 82 add_subdirectory(example-trace)
128 add_subdirectory(example-ui) 83 add_subdirectory(example-ui)
129 84
130 source_group("assets/images" FILES ${ASSETS_IMAGES}) 85 source_group("assets/images" FILES ${ASSETS_IMAGES})
131 source_group("assets/maps" FILES ${ASSETS_MAPS})
132 source_group("assets/music" FILES ${ASSETS_MUSIC}) 86 source_group("assets/music" FILES ${ASSETS_MUSIC})
133 source_group("assets/sounds" FILES ${ASSETS_SOUNDS}) 87 source_group("assets/sounds" FILES ${ASSETS_SOUNDS})
134 source_group("assets/sprites" FILES ${ASSETS_SPRITES}) 88 source_group("assets/sprites" FILES ${ASSETS_SPRITES})
135 source_group("assets/tilesets" FILES ${ASSETS_TILESETS})