2 |
2 |
3 |
3 |
4 #initialise cmake environment |
4 #initialise cmake environment |
5 cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) |
5 cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR) |
6 FOREACH(policy CMP0003 CMP0012) |
6 FOREACH(policy CMP0003 CMP0012) |
7 IF(POLICY ${policy}) |
7 IF(POLICY ${policy}) |
8 CMAKE_POLICY(SET ${policy} NEW) |
8 CMAKE_POLICY(SET ${policy} NEW) |
9 ENDIF() |
9 ENDIF() |
10 ENDFOREACH() |
10 ENDFOREACH() |
11 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules) |
11 set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules) |
12 |
12 |
13 |
13 |
14 #detect Mercurial revision (if present) |
14 #detect Mercurial revision (if present) |
15 set(version_suffix "-dev") #UNSET THIS VARIABLE AT RELEASE TIME |
15 set(version_suffix "-dev") #UNSET THIS VARIABLE AT RELEASE TIME |
16 set(HGCHANGED "") |
16 set(HGCHANGED "") |
17 IF(version_suffix MATCHES "-dev") |
17 IF(version_suffix MATCHES "-dev") |
18 set(HW_DEV true) |
18 set(HW_DEV true) |
19 IF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.hg) |
19 IF (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.hg) |
20 FIND_PROGRAM(HGCOMMAND hg) |
20 FIND_PROGRAM(HGCOMMAND hg) |
21 IF(HGCOMMAND) |
21 IF(HGCOMMAND) |
22 exec_program(${HGCOMMAND} |
22 exec_program(${HGCOMMAND} |
23 ARGS identify -in ${CMAKE_CURRENT_SOURCE_DIR} |
23 ARGS identify -in ${CMAKE_CURRENT_SOURCE_DIR} |
24 OUTPUT_VARIABLE version_suffix |
24 OUTPUT_VARIABLE version_suffix |
25 ) |
25 ) |
26 STRING(REGEX REPLACE "[^+]" "" HGCHANGED ${version_suffix}) |
26 STRING(REGEX REPLACE "[^+]" "" HGCHANGED ${version_suffix}) |
27 STRING(REGEX REPLACE "([0-9a-zA-Z]+)(.*) ([0-9]+)(.*)" "\\3-\\1" version_suffix ${version_suffix}) |
27 STRING(REGEX REPLACE "([0-9a-zA-Z]+)(.*) ([0-9]+)(.*)" "\\3-\\1" version_suffix ${version_suffix}) |
28 IF (HGCHANGED) |
28 IF (HGCHANGED) |
29 MESSAGE(STATUS "Building revision ${version_suffix} (SOURCE CODE MODIFIED)") |
29 MESSAGE(STATUS "Building revision ${version_suffix} (SOURCE CODE MODIFIED)") |
30 ELSE() |
30 ELSE() |
31 MESSAGE(STATUS "Building revision ${version_suffix}") |
31 MESSAGE(STATUS "Building revision ${version_suffix}") |
32 ENDIF() |
32 ENDIF() |
33 set(version_suffix "-${version_suffix}") |
33 set(version_suffix "-${version_suffix}") |
34 ENDIF() |
34 ENDIF() |
35 ENDIF() |
35 ENDIF() |
36 ELSE() |
36 ELSE() |
37 set(HW_DEV false) |
37 set(HW_DEV false) |
38 ENDIF() |
38 ENDIF() |
39 |
39 |
40 |
40 |
41 #versioning |
41 #versioning |
42 set(CPACK_PACKAGE_VERSION_MAJOR 0) |
42 set(CPACK_PACKAGE_VERSION_MAJOR 0) |
46 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") |
46 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") |
47 |
47 |
48 |
48 |
49 #set some safe values |
49 #set some safe values |
50 IF(NOT WITH_SERVER) |
50 IF(NOT WITH_SERVER) |
51 SET(WITH_SERVER 0) |
51 SET(WITH_SERVER 0) |
52 ENDIF(NOT WITH_SERVER) |
52 ENDIF(NOT WITH_SERVER) |
53 IF(NOT BUILD_ENGINE_LIBRARY) |
53 IF(NOT BUILD_ENGINE_LIBRARY) |
54 SET(BUILD_ENGINE_LIBRARY 0) |
54 SET(BUILD_ENGINE_LIBRARY 0) |
55 ENDIF(NOT BUILD_ENGINE_LIBRARY) |
55 ENDIF(NOT BUILD_ENGINE_LIBRARY) |
56 set(target_dir "bin") |
56 set(target_dir "bin") |
57 |
57 |
58 |
58 |
59 #bundle .app setup |
59 #bundle .app setup |
60 if(APPLE) |
60 if(APPLE) |
61 set(CMAKE_FIND_FRAMEWORK "FIRST") |
61 set(CMAKE_FIND_FRAMEWORK "FIRST") |
62 |
62 |
63 #paths for creating the bundle |
63 #paths for creating the bundle |
64 set(bundle_name Hedgewars.app) |
64 set(bundle_name Hedgewars.app) |
65 set(frameworks_dir ${bundle_name}/Contents/Frameworks/) |
65 set(frameworks_dir ${bundle_name}/Contents/Frameworks/) |
66 set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/) |
66 set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/) |
67 set(DATA_INSTALL_DIR "../Resources/") |
67 set(DATA_INSTALL_DIR "../Resources/") |
68 set(target_dir ".") |
68 set(target_dir ".") |
69 |
69 |
70 #what system are we building for |
70 #what system are we building for |
71 set(minimum_macosx_version $ENV{MACOSX_DEPLOYMENT_TARGET}) |
71 set(minimum_macosx_version $ENV{MACOSX_DEPLOYMENT_TARGET}) |
72 |
72 |
73 #detect on which system we are: if sw_vers cannot be found for any reason (re)use minimum_macosx_version |
73 #detect on which system we are: if sw_vers cannot be found for any reason (re)use minimum_macosx_version |
74 find_program(sw_vers sw_vers) |
74 find_program(sw_vers sw_vers) |
75 if(sw_vers) |
75 if(sw_vers) |
76 exec_program(${sw_vers} ARGS "-productVersion" OUTPUT_VARIABLE current_macosx_version) |
76 exec_program(${sw_vers} ARGS "-productVersion" OUTPUT_VARIABLE current_macosx_version) |
77 string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" current_macosx_version ${current_macosx_version}) |
77 string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" current_macosx_version ${current_macosx_version}) |
78 else() |
78 else() |
79 if(NOT minimum_macosx_version) |
79 if(NOT minimum_macosx_version) |
80 message(FATAL_ERROR "sw_vers not found! Need explicit MACOSX_DEPLOYMENT_TARGET variable set") |
80 message(FATAL_ERROR "sw_vers not found! Need explicit MACOSX_DEPLOYMENT_TARGET variable set") |
81 else() |
81 else() |
82 set(current_macosx_version ${minimum_macosx_version}) |
82 set(current_macosx_version ${minimum_macosx_version}) |
83 endif() |
83 endif() |
84 endif() |
84 endif() |
85 |
85 |
86 #if nothing is set, we deploy only for the current system |
86 #if nothing is set, we deploy only for the current system |
87 if(NOT minimum_macosx_version) |
87 if(NOT minimum_macosx_version) |
88 set(minimum_macosx_version ${current_macosx_version}) |
88 set(minimum_macosx_version ${current_macosx_version}) |
89 endif() |
89 endif() |
90 |
90 |
91 #lower systems don't have enough processing power anyways |
91 #lower systems don't have enough processing power anyways |
92 if (minimum_macosx_version LESS "10.4") |
92 if (minimum_macosx_version LESS "10.4") |
93 message(FATAL_ERROR "Hedgewars is not supported on Mac OS X pre-10.4") |
93 message(FATAL_ERROR "Hedgewars is not supported on Mac OS X pre-10.4") |
94 endif() |
94 endif() |
95 |
95 |
96 #workaround for http://playcontrol.net/ewing/jibberjabber/big_behind-the-scenes_chang.html#SDL_mixer (Update 2) |
96 #workaround for http://playcontrol.net/ewing/jibberjabber/big_behind-the-scenes_chang.html#SDL_mixer (Update 2) |
97 if(current_macosx_version MATCHES "10.4") |
97 if(current_macosx_version MATCHES "10.4") |
98 find_package(SDL_mixer REQUIRED) |
98 find_package(SDL_mixer REQUIRED) |
99 set(DYLIB_SMPEG "-dylib_file @loader_path/Frameworks/smpeg.framework/Versions/A/smpeg:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/smpeg.framework/Versions/A/smpeg") |
99 set(DYLIB_SMPEG "-dylib_file @loader_path/Frameworks/smpeg.framework/Versions/A/smpeg:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/smpeg.framework/Versions/A/smpeg") |
100 set(DYLIB_MIKMOD "-dylib_file @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/mikmod.framework/Versions/A/mikmod") |
100 set(DYLIB_MIKMOD "-dylib_file @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/mikmod.framework/Versions/A/mikmod") |
101 set(pascal_flags "-k${DYLIB_SMPEG}" "-k${DYLIB_MIKMOD}" ${pascal_flags}) |
101 set(pascal_flags "-k${DYLIB_SMPEG}" "-k${DYLIB_MIKMOD}" ${pascal_flags}) |
102 set(CMAKE_C_FLAGS "${DYLIB_SMPEG}" "${DYLIB_MIKMOD}" ${CMAKE_C_FLAGS}) |
102 set(CMAKE_C_FLAGS "${DYLIB_SMPEG}" "${DYLIB_MIKMOD}" ${CMAKE_C_FLAGS}) |
103 endif() |
103 endif() |
104 |
104 |
105 #CMAKE_OSX_ARCHITECTURES and CMAKE_OSX_SYSROOT need to be set for universal binary and correct linking |
105 #CMAKE_OSX_ARCHITECTURES and CMAKE_OSX_SYSROOT need to be set for universal binary and correct linking |
106 if(NOT CMAKE_OSX_ARCHITECTURES) |
106 if(NOT CMAKE_OSX_ARCHITECTURES) |
107 if(current_macosx_version LESS "10.6") |
107 if(current_macosx_version LESS "10.6") |
108 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "powerpc*") |
108 if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "powerpc*") |
109 set(CMAKE_OSX_ARCHITECTURES "ppc7400") |
109 set(CMAKE_OSX_ARCHITECTURES "ppc7400") |
110 else() |
110 else() |
111 set(CMAKE_OSX_ARCHITECTURES "i386") |
111 set(CMAKE_OSX_ARCHITECTURES "i386") |
112 endif() |
112 endif() |
113 else() |
113 else() |
114 set(CMAKE_OSX_ARCHITECTURES "x86_64") |
114 set(CMAKE_OSX_ARCHITECTURES "x86_64") |
115 endif() |
115 endif() |
116 endif() |
116 endif() |
117 |
117 |
118 #CMAKE_OSX_SYSROOT is set at the system version we are supposed to build on |
118 #CMAKE_OSX_SYSROOT is set at the system version we are supposed to build on |
119 #we need to provide the correct one when host and target differ |
119 #we need to provide the correct one when host and target differ |
120 if(NOT ${minimum_macosx_version} MATCHES ${current_macosx_version}) |
120 if(NOT ${minimum_macosx_version} MATCHES ${current_macosx_version}) |
121 if(minimum_macosx_version MATCHES "10.4") |
121 if(minimum_macosx_version MATCHES "10.4") |
122 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk/") |
122 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk/") |
123 set(CMAKE_C_COMPILER "gcc-4.0") |
123 set(CMAKE_C_COMPILER "gcc-4.0") |
124 set(CMAKE_CXX_COMPILER "g++-4.0") |
124 set(CMAKE_CXX_COMPILER "g++-4.0") |
125 else() |
125 else() |
126 string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" sdk_version ${minimum_macosx_version}) |
126 string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" sdk_version ${minimum_macosx_version}) |
127 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX${sdk_version}.sdk/") |
127 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX${sdk_version}.sdk/") |
128 endif() |
128 endif() |
129 endif() |
129 endif() |
130 |
130 |
131 #add user framework directory, other paths can be passed via FPFLAGS |
131 #add user framework directory, other paths can be passed via FPFLAGS |
132 set(pascal_flags "-Ff~/Library/Frameworks" ${pascal_flags}) |
132 set(pascal_flags "-Ff~/Library/Frameworks" ${pascal_flags}) |
133 #set deployment target |
133 #set deployment target |
134 set(pascal_flags "-k-macosx_version_min" "-k${minimum_macosx_version}" "-XR${CMAKE_OSX_SYSROOT}" ${pascal_flags}) |
134 set(pascal_flags "-k-macosx_version_min" "-k${minimum_macosx_version}" "-XR${CMAKE_OSX_SYSROOT}" ${pascal_flags}) |
135 |
135 |
136 message(STATUS "Build system: Mac OS X ${current_macosx_version} with GCC:${CMAKE_C_COMPILER}") |
136 message(STATUS "Build system: Mac OS X ${current_macosx_version} with GCC:${CMAKE_C_COMPILER}") |
137 message(STATUS "Target system: Mac OS X ${minimum_macosx_version} for architecture(s):${CMAKE_OSX_ARCHITECTURES}") |
137 message(STATUS "Target system: Mac OS X ${minimum_macosx_version} for architecture(s):${CMAKE_OSX_ARCHITECTURES}") |
138 endif(APPLE) |
138 endif(APPLE) |
139 |
139 |
140 |
140 |
141 #build Debug only when explicitally set |
141 #build Debug only when explicitally set |
142 if (NOT CMAKE_BUILD_TYPE) |
142 if (NOT CMAKE_BUILD_TYPE) |
143 set (CMAKE_BUILD_TYPE RELEASE CACHE STRING "Choose the type of build, options are: Debug Release." FORCE) |
143 set (CMAKE_BUILD_TYPE RELEASE CACHE STRING "Choose the type of build, options are: Debug Release." FORCE) |
144 endif (NOT CMAKE_BUILD_TYPE) |
144 endif (NOT CMAKE_BUILD_TYPE) |
145 |
145 |
146 if(CMAKE_BUILD_TYPE MATCHES DEBUG OR CMAKE_BUILD_TYPE MATCHES "Debug" OR CMAKE_BUILD_TYPE MATCHES "debug") |
146 if(CMAKE_BUILD_TYPE MATCHES DEBUG OR CMAKE_BUILD_TYPE MATCHES "Debug" OR CMAKE_BUILD_TYPE MATCHES "debug") |
147 message(STATUS "Building Debug") |
147 message(STATUS "Building Debug") |
148 set(Optz false) |
148 set(Optz false) |
149 else() |
149 else() |
150 message(STATUS "Building Release") |
150 message(STATUS "Building Release") |
151 set(Optz true) |
151 set(Optz true) |
152 endif() |
152 endif() |
153 |
153 |
154 |
154 |
155 #set default flags values for all projects |
155 #set default flags values for all projects |
156 set(CMAKE_C_FLAGS "-pipe ${CMAKE_C_FLAGS}") |
156 set(CMAKE_C_FLAGS "-pipe ${CMAKE_C_FLAGS}") |
164 set(pascal_flags ${fpflags_full} "-B" "-FE../bin" "-Cs2000000" "-vewn" ${pascal_flags}) |
164 set(pascal_flags ${fpflags_full} "-B" "-FE../bin" "-Cs2000000" "-vewn" ${pascal_flags}) |
165 separate_arguments(ghflags_full UNIX_COMMAND ${GHFLAGS}) |
165 separate_arguments(ghflags_full UNIX_COMMAND ${GHFLAGS}) |
166 set(haskell_flags "-O2" ${haskell_flags} ${ghflags_full}) |
166 set(haskell_flags "-O2" ${haskell_flags} ${ghflags_full}) |
167 |
167 |
168 if(Optz) |
168 if(Optz) |
169 # set(pascal_flags "-O3" "-OpPENTIUM4" "-CfSSE3" "-Xs" "-Si" ${pascal_flags}) |
169 # set(pascal_flags "-O3" "-OpPENTIUM4" "-CfSSE3" "-Xs" "-Si" ${pascal_flags}) |
170 set(pascal_flags "-Os" "-Ooregvar" "-Xs" "-Si" ${pascal_flags}) |
170 set(pascal_flags "-Os" "-Ooregvar" "-Xs" "-Si" ${pascal_flags}) |
171 set(haskell_flags "-w" "-fno-warn-unused-do-bind" ${haskell_flags}) |
171 set(haskell_flags "-w" "-fno-warn-unused-do-bind" ${haskell_flags}) |
172 else(Optz) |
172 else(Optz) |
173 set(pascal_flags "-O-" "-g" "-gl" "-gv" "-Ct" "-dDEBUGFILE" ${pascal_flags}) |
173 set(pascal_flags "-O-" "-g" "-gl" "-gv" "-Ct" "-dDEBUGFILE" ${pascal_flags}) |
174 set(haskell_flags "-Wall" "-debug" "-dcore-lint" "-fno-warn-unused-do-bind" ${haskell_flags}) |
174 set(haskell_flags "-Wall" "-debug" "-dcore-lint" "-fno-warn-unused-do-bind" ${haskell_flags}) |
175 endif(Optz) |
175 endif(Optz) |
176 |
176 |
177 |
177 |
178 if(DEFINED DATA_INSTALL_DIR) |
178 if(DEFINED DATA_INSTALL_DIR) |
179 set(SHAREPATH ${DATA_INSTALL_DIR}/hedgewars/) |
179 set(SHAREPATH ${DATA_INSTALL_DIR}/hedgewars/) |
180 else() |
180 else() |
181 set(SHAREPATH share/hedgewars/) |
181 set(SHAREPATH share/hedgewars/) |
182 endif() |
182 endif() |
183 set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) |
183 set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) |
184 |
184 |
185 |
185 |
186 if(WITH_SERVER) |
186 if(WITH_SERVER) |
187 if(GHC) |
187 if(GHC) |
188 set(ghc_executable ${GHC}) |
188 set(ghc_executable ${GHC}) |
189 else() |
189 else() |
190 find_program(ghc_executable ghc) |
190 find_program(ghc_executable ghc) |
191 endif() |
191 endif() |
192 |
192 |
193 if(ghc_executable) |
193 if(ghc_executable) |
194 set(HAVE_NETSERVER true) |
194 set(HAVE_NETSERVER true) |
195 add_subdirectory(gameServer) |
195 add_subdirectory(gameServer) |
196 else() |
196 else() |
197 message(STATUS "No GHC executable found, server will *not* be built") |
197 message(STATUS "No GHC executable found, server will *not* be built") |
198 set(HAVE_NETSERVER false) |
198 set(HAVE_NETSERVER false) |
199 endif() |
199 endif() |
200 else(WITH_SERVER) |
200 else(WITH_SERVER) |
201 set(HAVE_NETSERVER false) |
201 set(HAVE_NETSERVER false) |
202 endif(WITH_SERVER) |
202 endif(WITH_SERVER) |
203 |
203 |
204 find_package(Lua) |
204 find_package(Lua) |
205 if(NOT ${LUA_FOUND}) |
205 if(NOT ${LUA_FOUND}) |
206 message(STATUS "Lua library not found, building bundled dependency") |
206 message(STATUS "Lua library not found, building bundled dependency") |
207 add_subdirectory(misc/liblua) |
207 add_subdirectory(misc/liblua) |
208 #link with liblua.a (which requires system readline) |
208 #link with liblua.a (which requires system readline) |
209 set(pascal_flags "-k${CMAKE_BINARY_DIR}/bin/liblua.a" "-k-lreadline" ${pascal_flags}) |
209 set(pascal_flags "-k${CMAKE_BINARY_DIR}/bin/liblua.a" "-k-lreadline" ${pascal_flags}) |
210 endif() |
210 endif() |
211 add_subdirectory(hedgewars) |
211 add_subdirectory(hedgewars) |
212 |
212 |
213 #run cmake -DANDROID=1 to enable this |
213 #run cmake -DANDROID=1 to enable this |
214 if(ANDROID) |
214 if(ANDROID) |
215 add_subdirectory(project_files/Android-build) |
215 add_subdirectory(project_files/Android-build) |
216 endif() |
216 endif() |
217 |
217 |
218 if(NOT (BUILD_ENGINE_LIBRARY OR ANDROID)) |
218 if(NOT (BUILD_ENGINE_LIBRARY OR ANDROID)) |
219 add_subdirectory(bin) |
219 add_subdirectory(bin) |
220 add_subdirectory(misc/quazip) |
220 add_subdirectory(misc/quazip) |
221 add_subdirectory(QTfrontend) |
221 add_subdirectory(QTfrontend) |
222 add_subdirectory(share) |
222 add_subdirectory(share) |
223 add_subdirectory(tools) |
223 add_subdirectory(tools) |
224 endif() |
224 endif() |
225 |
225 |
226 |
226 |
227 # CPack variables |
227 # CPack variables |
228 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Hedgewars, a free turn-based strategy") |
228 set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Hedgewars, a free turn-based strategy") |
233 set(CPACK_PACKAGE_EXECUTABLES "hedgewars" "hedgewars") |
233 set(CPACK_PACKAGE_EXECUTABLES "hedgewars" "hedgewars") |
234 set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") |
234 set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING") |
235 set(CPACK_PACKAGE_INSTALL_DIRECTORY "Hedgewars ${HEDGEWARS_VERSION}") |
235 set(CPACK_PACKAGE_INSTALL_DIRECTORY "Hedgewars ${HEDGEWARS_VERSION}") |
236 |
236 |
237 if(WIN32 AND NOT UNIX) |
237 if(WIN32 AND NOT UNIX) |
238 set(CPACK_NSIS_DISPLAY_NAME "Hedgewars") |
238 set(CPACK_NSIS_DISPLAY_NAME "Hedgewars") |
239 set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/") |
239 set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/") |
240 set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/") |
240 set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/") |
241 set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com") |
241 set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com") |
242 set(CPACK_NSIS_MODIFY_PATH OFF) |
242 set(CPACK_NSIS_MODIFY_PATH OFF) |
243 set(CPACK_GENERATOR "ZIP;NSIS") |
243 set(CPACK_GENERATOR "ZIP;NSIS") |
244 set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "hedgewars") |
244 set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "hedgewars") |
245 else(WIN32 AND NOT UNIX) |
245 else(WIN32 AND NOT UNIX) |
246 set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine") |
246 set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine") |
247 endif(WIN32 AND NOT UNIX) |
247 endif(WIN32 AND NOT UNIX) |
248 |
248 |
249 set(CPACK_SOURCE_IGNORE_FILES |
249 set(CPACK_SOURCE_IGNORE_FILES |
250 "~" |
250 "~" |
251 "\\\\.hg" |
251 "\\\\.hg" |
252 "\\\\.svn" |
252 "\\\\.svn" |
253 "\\\\.exe$" |
253 "\\\\.exe$" |
254 "\\\\.a$" |
254 "\\\\.a$" |
255 "\\\\.dll$" |
255 "\\\\.dll$" |
256 "\\\\.xcf$" |
256 "\\\\.xcf$" |
257 "\\\\.cxx$" |
257 "\\\\.cxx$" |
258 "\\\\.db$" |
258 "\\\\.db$" |
259 "\\\\.dof$" |
259 "\\\\.dof$" |
260 "\\\\.layout$" |
260 "\\\\.layout$" |
261 "\\\\.zip$" |
261 "\\\\.zip$" |
262 "\\\\.gz$" |
262 "\\\\.gz$" |
263 "\\\\.bz2$" |
263 "\\\\.bz2$" |
264 "\\\\.tmp$" |
264 "\\\\.tmp$" |
265 "\\\\.core$" |
265 "\\\\.core$" |
266 "\\\\.sh$" |
266 "\\\\.sh$" |
267 "\\\\.sifz$" |
267 "\\\\.sifz$" |
268 "\\\\.svg$" |
268 "\\\\.svg$" |
269 "\\\\.svgz$" |
269 "\\\\.svgz$" |
270 "\\\\.ppu$" |
270 "\\\\.ppu$" |
271 "\\\\.psd$" |
271 "\\\\.psd$" |
272 "\\\\.o$" |
272 "\\\\.o$" |
273 "Makefile" |
273 "Makefile" |
274 "Doxyfile" |
274 "Doxyfile" |
275 "CMakeFiles" |
275 "CMakeFiles" |
276 "debug" |
276 "debug" |
277 "release$" |
277 "release$" |
278 "Debug$" |
278 "Debug$" |
279 "Release$" |
279 "Release$" |
280 "proto\\\\.inc$" |
280 "proto\\\\.inc$" |
281 "hwconsts\\\\.cpp$" |
281 "hwconsts\\\\.cpp$" |
282 "playlist\\\\.inc$" |
282 "playlist\\\\.inc$" |
283 "CPack" |
283 "CPack" |
284 "cmake_install\\\\.cmake$" |
284 "cmake_install\\\\.cmake$" |
285 "config\\\\.inc$" |
285 "config\\\\.inc$" |
286 "hwengine\\\\.desktop$" |
286 "hwengine\\\\.desktop$" |
287 "CMakeCache\\\\.txt$" |
287 "CMakeCache\\\\.txt$" |
288 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libopenalbridge" |
288 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libopenalbridge" |
289 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libfreetype" |
289 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libfreetype" |
290 "^${CMAKE_CURRENT_SOURCE_DIR}/misc/liblua" |
290 "^${CMAKE_CURRENT_SOURCE_DIR}/misc/liblua" |
291 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libtremor" |
291 # "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libtremor" |
292 "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/HedgewarsMobile/" |
292 "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/HedgewarsMobile/" |
293 "^${CMAKE_CURRENT_SOURCE_DIR}/bin/[a-z]" |
293 "^${CMAKE_CURRENT_SOURCE_DIR}/bin/[a-z]" |
294 "^${CMAKE_CURRENT_SOURCE_DIR}/tools/templates" |
294 "^${CMAKE_CURRENT_SOURCE_DIR}/tools/templates" |
295 "^${CMAKE_CURRENT_SOURCE_DIR}/doc" |
295 "^${CMAKE_CURRENT_SOURCE_DIR}/doc" |
296 "^${CMAKE_CURRENT_SOURCE_DIR}/templates" |
296 "^${CMAKE_CURRENT_SOURCE_DIR}/templates" |
297 "^${CMAKE_CURRENT_SOURCE_DIR}/Graphics" |
297 "^${CMAKE_CURRENT_SOURCE_DIR}/Graphics" |
298 "^${CMAKE_CURRENT_SOURCE_DIR}/realtest" |
298 "^${CMAKE_CURRENT_SOURCE_DIR}/realtest" |
299 "^${CMAKE_CURRENT_SOURCE_DIR}/tmp" |
299 "^${CMAKE_CURRENT_SOURCE_DIR}/tmp" |
300 "^${CMAKE_CURRENT_SOURCE_DIR}/utils" |
300 "^${CMAKE_CURRENT_SOURCE_DIR}/utils" |
301 "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Maps/test" |
301 "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Maps/test" |
302 "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Themes/ethereal" |
302 "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Themes/ethereal" |
303 "^${CMAKE_CURRENT_SOURCE_DIR}/install_manifest.txt" |
303 "^${CMAKE_CURRENT_SOURCE_DIR}/install_manifest.txt" |
304 "^${CMAKE_CURRENT_SOURCE_DIR}/CMakeCache.txt" |
304 "^${CMAKE_CURRENT_SOURCE_DIR}/CMakeCache.txt" |
305 "^${CMAKE_CURRENT_SOURCE_DIR}/hedgewars\\\\." |
305 "^${CMAKE_CURRENT_SOURCE_DIR}/hedgewars\\\\." |
306 ) |
306 ) |
307 |
307 |
308 include(CPack) |
308 include(CPack) |
309 |
309 |