CMakeLists.txt
author unc0rr
Fri, 01 May 2009 09:01:44 +0000
changeset 2021 a591afb43768
parent 2015 d2848d723690
child 2107 9f3e6ed06b3e
permissions -rw-r--r--
Some changes in try to fix issue when you enter room with painted map, but frontend shows generated one (most probably bug is triggered by template filters) Untested.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
     1
project(hedgewars)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
     2
1461
87e5a6c3882c Ping clients every 30 seconds, should help with ghosts on server
unc0rr
parents: 1459
diff changeset
     3
cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
     4
1107
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
     5
if(COMMAND cmake_policy)
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
     6
	cmake_policy(SET CMP0003 NEW)
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
     7
endif(COMMAND cmake_policy)
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
     8
1843
16cdd1745b73 Add QCA2 checks to build system
unc0rr
parents: 1758
diff changeset
     9
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules)
1107
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
    10
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    11
set(CPACK_PACKAGE_VERSION_MAJOR "0")
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    12
set(CPACK_PACKAGE_VERSION_MINOR "9")
2005
aa79f631711b Move health sorter to visual gears:
unc0rr
parents: 1988
diff changeset
    13
set(CPACK_PACKAGE_VERSION_PATCH "11-dev")
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    14
2015
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    15
set(universal_build "0")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    16
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    17
if(APPLE)
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    18
set(CMAKE_INSTALL_PREFIX "Hedgewars.app/Contents/MacOS/") 
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    19
set(DATA_INSTALL_DIR "../Resources/")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    20
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    21
if(CMAKE_OSX_ARCHITECTURES MATCHES "i386;ppc7400" OR CMAKE_OSX_ARCHITECTURES MATCHES "ppc7400;i386" OR CMAKE_OSX_ARCHITECTURES MATCHES "i386;ppc" OR CMAKE_OSX_ARCHITECTURES MATCHES "ppc;i386")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    22
	set(universal_build "1")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    23
	message("-- Building a Universal Application")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    24
endif(CMAKE_OSX_ARCHITECTURES MATCHES "i386;ppc7400" OR CMAKE_OSX_ARCHITECTURES MATCHES "ppc7400;i386" OR CMAKE_OSX_ARCHITECTURES MATCHES "i386;ppc" OR CMAKE_OSX_ARCHITECTURES MATCHES "ppc;i386")
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    25
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    26
endif(APPLE)
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
    27
266
53f46353d029 one else fix
displacer
parents: 265
diff changeset
    28
if(DEFINED DATA_INSTALL_DIR)
262
b4bc05237c06 fixed absent DATA_INSTALL_DIR
displacer
parents: 261
diff changeset
    29
	set(SHAREPATH ${DATA_INSTALL_DIR}/hedgewars/)
266
53f46353d029 one else fix
displacer
parents: 265
diff changeset
    30
else(DEFINED DATA_INSTALL_DIR)
262
b4bc05237c06 fixed absent DATA_INSTALL_DIR
displacer
parents: 261
diff changeset
    31
	set(SHAREPATH share/hedgewars/)
266
53f46353d029 one else fix
displacer
parents: 265
diff changeset
    32
endif(DEFINED DATA_INSTALL_DIR)
220
d79eaeaf969d Fix hwengine target behaviour
unc0rr
parents: 205
diff changeset
    33
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    34
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    35
set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
2005
aa79f631711b Move health sorter to visual gears:
unc0rr
parents: 1988
diff changeset
    36
set(HEDGEWARS_PROTO_VER 26)
271
f2f9a3d5b441 Protocol version sets in CMake
unc0rr
parents: 268
diff changeset
    37
1415
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    38
if(WITH_SERVER)
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    39
	set(HAVE_NETSERVER true)
1979
912e450d4db2 - Add gameServer to build system
unc0rr
parents: 1843
diff changeset
    40
	add_subdirectory(gameServer)
1415
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    41
else(WITH_SERVER)
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    42
	set(HAVE_NETSERVER false)
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    43
endif(WITH_SERVER)
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
    44
223
c41effdd461d Better build system scripts
unc0rr
parents: 220
diff changeset
    45
add_subdirectory(bin)
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    46
add_subdirectory(QTfrontend)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    47
add_subdirectory(hedgewars)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    48
add_subdirectory(share)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    49
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    50
# CPack vars
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    51
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    52
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Hedgewars, a turn-based strategy")
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    53
set(CPACK_PACKAGE_VENDOR "Hedgewars")
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    54
set(CPACK_PACKAGE_FILE_NAME "hedgewars-${HEDGEWARS_VERSION}")
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    55
set(CPACK_SOURCE_PACKAGE_FILE_NAME "hedgewars-src-${HEDGEWARS_VERSION}")
1459
cf6fa7c9cf45 Fix generator name (TBZ2 instead of BZ2)
unc0rr
parents: 1458
diff changeset
    56
set(CPACK_SOURCE_GENERATOR "TBZ2")
1173
70b0acd4548c Revert accidental nsis installer generator regression
unc0rr
parents: 1159
diff changeset
    57
set(CPACK_PACKAGE_EXECUTABLES "hedgewars" "hedgewars")
458
5880af7b530a Fix build
unc0rr
parents: 360
diff changeset
    58
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    59
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Hedgewars ${HEDGEWARS_VERSION}")
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    60
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    61
if(WIN32 AND NOT UNIX)
223
c41effdd461d Better build system scripts
unc0rr
parents: 220
diff changeset
    62
	set(CPACK_NSIS_DISPLAY_NAME "Hedgewars, a turn-based Worms-like strategy") 
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    63
	set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/")
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    64
	set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/")
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    65
	set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com")
1159
49c88f620e51 Various build system improvements
unc0rr
parents: 1141
diff changeset
    66
	set(CPACK_NSIS_MODIFY_PATH OFF)
49c88f620e51 Various build system improvements
unc0rr
parents: 1141
diff changeset
    67
	set(CPACK_GENERATOR "ZIP;NSIS")
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    68
else(WIN32 AND NOT UNIX)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    69
	set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine")
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    70
endif(WIN32 AND NOT UNIX)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
    71
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    72
set(CPACK_SOURCE_IGNORE_FILES
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    73
	"~"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    74
	"\\\\.svn"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    75
	"\\\\.exe$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    76
	"\\\\.a$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    77
	"\\\\.dll$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    78
	"\\\\.xcf$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    79
	"\\\\.cxx$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    80
	"\\\\.db$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    81
	"\\\\.dof$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    82
	"\\\\.cmake$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    83
	"\\\\.layout$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    84
	"\\\\.zip$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    85
	"\\\\.gz$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    86
	"\\\\.bz2$"
722
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
    87
	"\\\\.tmp$"
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
    88
	"\\\\.core$"
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
    89
	"\\\\.sh$"
727
da975a75af09 Fix all issues with make package_source on my system
unc0rr
parents: 722
diff changeset
    90
	"\\\\.ppu$"
da975a75af09 Fix all issues with make package_source on my system
unc0rr
parents: 722
diff changeset
    91
	"\\\\.o$"
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    92
	"Makefile"
722
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
    93
	"Doxyfile"
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    94
	"CMakeFiles"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    95
	"debug"
727
da975a75af09 Fix all issues with make package_source on my system
unc0rr
parents: 722
diff changeset
    96
	"release$"
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    97
	"Debug$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    98
	"Release$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
    99
	"proto.inc$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   100
	"hwconsts.cpp$"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   101
	"playlist.inc$"
722
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
   102
	"CPack"
727
da975a75af09 Fix all issues with make package_source on my system
unc0rr
parents: 722
diff changeset
   103
	"^${PROJECT_SOURCE_DIR}/bin/[a-z]"
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   104
	"^${PROJECT_SOURCE_DIR}/tools"
722
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
   105
	"^${PROJECT_SOURCE_DIR}/doc"
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
   106
	"^${PROJECT_SOURCE_DIR}/templates"
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   107
	"^${PROJECT_SOURCE_DIR}/Graphics"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   108
	"^${PROJECT_SOURCE_DIR}/realtest"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   109
	"^${PROJECT_SOURCE_DIR}/tmp"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   110
	"^${PROJECT_SOURCE_DIR}/utils"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   111
	"^${PROJECT_SOURCE_DIR}/share/hedgewars/Data/Maps/test"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   112
	"^${PROJECT_SOURCE_DIR}/share/hedgewars/Data/Themes/ethereal"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   113
	"^${PROJECT_SOURCE_DIR}/install_manifest.txt"
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   114
	"^${PROJECT_SOURCE_DIR}/CMakeCache.txt"
722
993faebbe546 - Use shotgun training as more attractive than the second one with bazooka
unc0rr
parents: 720
diff changeset
   115
	"^${PROJECT_SOURCE_DIR}/hedgewars\\\\."
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   116
)
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   117
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   118
include(CPack)