CMakeLists.txt
author nemo
Mon, 29 Oct 2012 17:38:54 -0400
branch0.9.18
changeset 7888 65b2d4e1b8b6
parent 7821 9353d5eb360e
child 7892 617553fe0196
permissions -rw-r--r--
fix reserved hats from scripting
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
5407
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
     3
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
     4
#initialise cmake environment
1461
87e5a6c3882c Ping clients every 30 seconds, should help with ghosts on server
unc0rr
parents: 1459
diff changeset
     5
cmake_minimum_required(VERSION 2.6.0 FATAL_ERROR)
5169
e353ca78d28b some comments and simplifications for cmake files
koda
parents: 5168
diff changeset
     6
FOREACH(policy CMP0003 CMP0012)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
     7
    IF(POLICY ${policy})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
     8
        CMAKE_POLICY(SET ${policy} NEW)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
     9
    ENDIF()
5169
e353ca78d28b some comments and simplifications for cmake files
koda
parents: 5168
diff changeset
    10
ENDFOREACH()
5407
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
    11
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake_modules)
5405
5b17e1b3e0d5 better variable grouping...
koda
parents: 5223
diff changeset
    12
1107
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
    13
4252
13ec087713dd raised version number
koda
parents: 4098
diff changeset
    14
#detect Mercurial revision (if present)
7821
9353d5eb360e 0.9.18 release branch
koda
parents: 7820
diff changeset
    15
set(version_suffix "") #UNSET THIS VARIABLE AT RELEASE TIME
4903
21dd1def5aaf if source has uncommitted changes:
sheepluva
parents: 4845
diff changeset
    16
set(HGCHANGED "")
3074
271cfcb2bcda Frontend:
smxx
parents: 3055
diff changeset
    17
IF(version_suffix MATCHES "-dev")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    18
    set(HW_DEV true)
7709
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
    19
    set(default_build_type "DEBUG")
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
    20
    IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/.hg)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    21
        FIND_PROGRAM(HGCOMMAND hg)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    22
        IF(HGCOMMAND)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    23
            exec_program(${HGCOMMAND}
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    24
                     ARGS identify -in ${CMAKE_CURRENT_SOURCE_DIR}
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    25
                     OUTPUT_VARIABLE version_suffix
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    26
                     )
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    27
            STRING(REGEX REPLACE "[^+]" "" HGCHANGED ${version_suffix})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    28
            STRING(REGEX REPLACE "([0-9a-zA-Z]+)(.*) ([0-9]+)(.*)" "\\3-\\1" version_suffix ${version_suffix})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    29
            IF (HGCHANGED)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    30
                MESSAGE(STATUS "Building revision ${version_suffix} (SOURCE CODE MODIFIED)")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    31
            ELSE()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    32
                MESSAGE(STATUS "Building revision ${version_suffix}")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    33
            ENDIF()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    34
            set(version_suffix "-${version_suffix}")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    35
        ENDIF()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    36
    ENDIF()
3074
271cfcb2bcda Frontend:
smxx
parents: 3055
diff changeset
    37
ELSE()
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    38
    set(HW_DEV false)
7709
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
    39
    set(default_build_type "RELEASE")
2672
0f1403bf267a check for sdl_image and sdl_mixer versions
koda
parents: 2671
diff changeset
    40
ENDIF()
0f1403bf267a check for sdl_image and sdl_mixer versions
koda
parents: 2671
diff changeset
    41
1107
ee873ada9e86 Supress CMake warning
unc0rr
parents: 1074
diff changeset
    42
5405
5b17e1b3e0d5 better variable grouping...
koda
parents: 5223
diff changeset
    43
#versioning
5407
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
    44
set(CPACK_PACKAGE_VERSION_MAJOR 0)
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
    45
set(CPACK_PACKAGE_VERSION_MINOR 9)
6605
800d4c029d53 bump to 0.9.18-dev - not sure how this was missed before
nemo
parents: 6538
diff changeset
    46
set(CPACK_PACKAGE_VERSION_PATCH 18${version_suffix})
7821
9353d5eb360e 0.9.18 release branch
koda
parents: 7820
diff changeset
    47
set(HEDGEWARS_PROTO_VER 43)
5407
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
    48
set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
5405
5b17e1b3e0d5 better variable grouping...
koda
parents: 5223
diff changeset
    49
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
    50
7718
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    51
#set some default values
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    52
option(NOSERVER "Disable gameServer build [default: auto]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    53
option(NOPNG "Disable screenshoot compression [default: auto]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    54
option(NOVIDEOREC "Disable video recording [default: auto]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    55
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    56
option(BUILD_ENGINE_LIBRARY "Enable hwengine library [default: off]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    57
option(ANDROID "Enable Android build [default: off]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    58
option(CROSSAPPLE "Enable OSX when not on OSX [default: off]" OFF)
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    59
3495
a6b4f351d400 now engine can be optionally built as library, there's an example wrapper of how to use it
koda
parents: 3407
diff changeset
    60
5405
5b17e1b3e0d5 better variable grouping...
koda
parents: 5223
diff changeset
    61
#bundle .app setup
7256
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    62
if(APPLE OR CROSSAPPLE)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    63
    #paths for creating the bundle
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    64
    set(bundle_name Hedgewars.app)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    65
    set(frameworks_dir ${bundle_name}/Contents/Frameworks/)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    66
    set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    67
    set(DATA_INSTALL_DIR "../Resources/")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    68
    set(target_dir ".")
7256
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    69
    set(minimum_macosx_version "10.6")
7718
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    70
else()
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
    71
    set(target_dir "bin")
7256
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    72
endif()
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    73
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    74
if(APPLE)
5b97b9946cde CROSSAPPLE ftw
koda
parents: 7233
diff changeset
    75
    set(CMAKE_FIND_FRAMEWORK "FIRST")
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3677
diff changeset
    76
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    77
    #what system are we building for
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    78
    set(minimum_macosx_version $ENV{MACOSX_DEPLOYMENT_TARGET})
3697
d5b30d6373fc remove trailing spaces from end of line
koda
parents: 3677
diff changeset
    79
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    80
    #detect on which system we are: if sw_vers cannot be found for any reason (re)use minimum_macosx_version
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    81
    find_program(sw_vers sw_vers)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    82
    if(sw_vers)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    83
        exec_program(${sw_vers} ARGS "-productVersion" OUTPUT_VARIABLE current_macosx_version)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    84
        string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" current_macosx_version ${current_macosx_version})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    85
        else()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    86
        if(NOT minimum_macosx_version)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    87
            message(FATAL_ERROR "sw_vers not found! Need explicit MACOSX_DEPLOYMENT_TARGET variable set")
7114
e0110a1229b7 add NOPNG to cmake to explicitly disable PNG dependency
koda
parents: 7113
diff changeset
    88
        else()
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    89
            set(current_macosx_version ${minimum_macosx_version})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    90
        endif()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    91
    endif()
2641
b08cafb86797 some tweaks in the mac compilation system
koda
parents: 2629
diff changeset
    92
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    93
    #if nothing is set, we deploy only for the current system
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    94
    if(NOT minimum_macosx_version)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    95
        set(minimum_macosx_version ${current_macosx_version})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    96
    endif()
2641
b08cafb86797 some tweaks in the mac compilation system
koda
parents: 2629
diff changeset
    97
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    98
    #lower systems don't have enough processing power anyways
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
    99
    if (minimum_macosx_version LESS "10.4")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   100
        message(FATAL_ERROR "Hedgewars is not supported on Mac OS X pre-10.4")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   101
    endif()
2929
dd4efe601bc6 restore tiger 10.4 deployment
koda
parents: 2834
diff changeset
   102
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   103
    #workaround for http://playcontrol.net/ewing/jibberjabber/big_behind-the-scenes_chang.html#SDL_mixer (Update 2)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   104
    if(current_macosx_version MATCHES "10.4")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   105
        find_package(SDL_mixer REQUIRED)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   106
        set(DYLIB_SMPEG "-dylib_file @loader_path/Frameworks/smpeg.framework/Versions/A/smpeg:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/smpeg.framework/Versions/A/smpeg")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   107
        set(DYLIB_MIKMOD "-dylib_file @loader_path/Frameworks/mikmod.framework/Versions/A/mikmod:${SDLMIXER_LIBRARY}/Versions/A/Frameworks/mikmod.framework/Versions/A/mikmod")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   108
        set(pascal_flags "-k${DYLIB_SMPEG}" "-k${DYLIB_MIKMOD}" ${pascal_flags})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   109
        set(CMAKE_C_FLAGS "${DYLIB_SMPEG}" "${DYLIB_MIKMOD}" ${CMAKE_C_FLAGS})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   110
    endif()
7114
e0110a1229b7 add NOPNG to cmake to explicitly disable PNG dependency
koda
parents: 7113
diff changeset
   111
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   112
    #CMAKE_OSX_ARCHITECTURES and CMAKE_OSX_SYSROOT need to be set for universal binary and correct linking
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   113
    if(NOT CMAKE_OSX_ARCHITECTURES)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   114
        if(current_macosx_version LESS "10.6")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   115
            if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "powerpc*")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   116
                set(CMAKE_OSX_ARCHITECTURES "ppc7400")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   117
            else()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   118
                set(CMAKE_OSX_ARCHITECTURES "i386")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   119
            endif()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   120
        else()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   121
            set(CMAKE_OSX_ARCHITECTURES "x86_64")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   122
        endif()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   123
    endif()
5053
a767954cfa03 this should help people hacking the cmake files
koda
parents: 4904
diff changeset
   124
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   125
    #CMAKE_OSX_SYSROOT is set at the system version we are supposed to build on
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   126
    #we need to provide the correct one when host and target differ
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   127
    if(NOT ${minimum_macosx_version} MATCHES ${current_macosx_version})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   128
        if(minimum_macosx_version MATCHES "10.4")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   129
            set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk/")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   130
            set(CMAKE_C_COMPILER "gcc-4.0")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   131
            set(CMAKE_CXX_COMPILER "g++-4.0")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   132
        else()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   133
            string(REGEX REPLACE "([0-9]+.[0-9]+).[0-9]+" "\\1" sdk_version ${minimum_macosx_version})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   134
            set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX${sdk_version}.sdk/")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   135
        endif()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   136
    endif()
2641
b08cafb86797 some tweaks in the mac compilation system
koda
parents: 2629
diff changeset
   137
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   138
    #add user framework directory, other paths can be passed via FPFLAGS
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   139
    set(pascal_flags "-Ff~/Library/Frameworks" ${pascal_flags})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   140
    #set deployment target
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   141
    set(pascal_flags "-k-macosx_version_min" "-k${minimum_macosx_version}" "-XR${CMAKE_OSX_SYSROOT}" ${pascal_flags})
5188
d0461bd6d45b some updates to the crossbuild system for mac
koda
parents: 5173
diff changeset
   142
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   143
    message(STATUS "Build system: Mac OS X ${current_macosx_version} with GCC:${CMAKE_C_COMPILER}")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   144
    message(STATUS "Target system: Mac OS X ${minimum_macosx_version} for architecture(s):${CMAKE_OSX_ARCHITECTURES}")
2015
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
   145
endif(APPLE)
d2848d723690 koda's patch
unc0rr
parents: 2005
diff changeset
   146
2406
2e757b32991e cmake optimizations and simplification
koda
parents: 2401
diff changeset
   147
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   148
#when build type is not specified, assume Debug/Release according to build version information
7709
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   149
if (CMAKE_BUILD_TYPE)
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   150
    string (TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE)
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   151
    if ( NOT( (CMAKE_BUILD_TYPE MATCHES "RELEASE") OR (CMAKE_BUILD_TYPE MATCHES "DEBUG") ) )
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   152
        set (CMAKE_BUILD_TYPE ${default_build_type} CACHE STRING "Only 'Debug' or 'Release' options are allowed." FORCE)
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   153
        message (STATUS "Unknown build type, using default (${default_build_type})")
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   154
    endif ()
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   155
else (CMAKE_BUILD_TYPE)
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   156
    set (CMAKE_BUILD_TYPE ${default_build_type} CACHE STRING "Choose the build type, options are: Debug Release." FORCE)
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   157
endif (CMAKE_BUILD_TYPE)
2606
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   158
2406
2e757b32991e cmake optimizations and simplification
koda
parents: 2401
diff changeset
   159
7030
09984acadece invert LUA symbol meaning and avoid hints when compiling without it
koda
parents: 7029
diff changeset
   160
#set default flags values for all projects
3338
dee9beba85cc patch by raptor (polished by me) to allow tiger/xcode24 compilation
koda
parents: 3306
diff changeset
   161
set(CMAKE_C_FLAGS "-pipe ${CMAKE_C_FLAGS}")
6538
5a1f49d84d95 testing, let's try -Os optimisation for frontend and engine; small cleanup and typos
koda
parents: 6537
diff changeset
   162
set(CMAKE_C_FLAGS_RELEASE "-w -Os -fomit-frame-pointer ${CMAKE_C_FLAGS_RELEASE}")
3338
dee9beba85cc patch by raptor (polished by me) to allow tiger/xcode24 compilation
koda
parents: 3306
diff changeset
   163
set(CMAKE_C_FLAGS_DEBUG "-Wall -O0 -g -DDEBUG ${CMAKE_C_FLAGS_DEBUG}")
2606
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   164
set(CMAKE_CXX_FLAGS ${CMAKE_C_FLAGS})
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   165
set(CMAKE_CXX_FLAGS_RELEASE ${CMAKE_C_FLAGS_RELEASE})
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   166
set(CMAKE_CXX_FLAGS_DEBUG ${CMAKE_C_FLAGS_DEBUG})
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   167
7397
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   168
#parse additional parameters
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   169
if(FPFLAGS OR GHFLAGS)
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   170
    math(EXPR cmake_version "${CMAKE_MAJOR_VERSION}*10000 + ${CMAKE_MINOR_VERSION}*100 + ${CMAKE_PATCH_VERSION}")
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   171
    if(cmake_version LESS "020800")
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   172
        message(STATUS "FPFLAGS and GHFLAGS are available only when using CMake >= 2.8")
7397
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   173
    else()
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   174
        separate_arguments(fpflags_parsed UNIX_COMMAND ${FPFLAGS})
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   175
        separate_arguments(ghflags_parsed UNIX_COMMAND ${GHFLAGS})
7397
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   176
    endif()
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   177
endif()
833fc211ca2d allow FPFLAGS and GHFLAGS only in cmakes able to support them
koda
parents: 7264
diff changeset
   178
7816
a25e943dd4b0 finally videorec on osx
koda
parents: 7807
diff changeset
   179
set(pascal_flags ${fpflags_parsed} "-vm4079,4080,4081" "-B" "-FE../bin" "-Cs2000000" "-vewnq" "-dDEBUGFILE" ${pascal_flags})
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   180
set(haskell_flags "-O2" ${ghflags_parsed} ${haskell_flags})
2606
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   181
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   182
#get BUILD_TYPE and enable/disable optimisation
7709
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   183
if(CMAKE_BUILD_TYPE MATCHES "DEBUG")
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   184
    message(STATUS "Building Debug flavour")
7820
c1b491e03362 Restore -gv, limit points to template dimensions
nemo
parents: 7819
diff changeset
   185
    set(pascal_flags "-O-" "-g" "-gl" "-gv" ${pascal_flags})
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   186
    set(haskell_flags "-Wall" "-debug" "-dcore-lint" "-fno-warn-unused-do-bind" ${haskell_flags})
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   187
else()
7709
631852904cee only accept RELASE and DEBUG build type configuration
koda
parents: 7705
diff changeset
   188
    message(STATUS "Building Release flavour")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   189
#    set(pascal_flags "-O3" "-OpPENTIUM4" "-CfSSE3" "-Xs" "-Si" ${pascal_flags})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   190
    set(pascal_flags "-Os" "-Ooregvar" "-Xs" "-Si" ${pascal_flags})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   191
    set(haskell_flags "-w" "-fno-warn-unused-do-bind" ${haskell_flags})
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   192
endif()
2606
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   193
ed687a8d081f updated build files for macosx and optimization system
koda
parents: 2573
diff changeset
   194
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   195
#finish setting paths
266
53f46353d029 one else fix
displacer
parents: 265
diff changeset
   196
if(DEFINED DATA_INSTALL_DIR)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   197
    set(SHAREPATH ${DATA_INSTALL_DIR}/hedgewars/)
2652
67d0344aea9f still updates for mac compilation
koda
parents: 2644
diff changeset
   198
else()
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   199
    set(SHAREPATH share/hedgewars/)
2652
67d0344aea9f still updates for mac compilation
koda
parents: 2644
diff changeset
   200
endif()
220
d79eaeaf969d Fix hwengine target behaviour
unc0rr
parents: 205
diff changeset
   201
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)
7718
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
   202
set(LIBRARY_OUTPUT_PATH ${EXECUTABLE_OUTPUT_PATH})
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   203
271
f2f9a3d5b441 Protocol version sets in CMake
unc0rr
parents: 268
diff changeset
   204
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   205
#server discovery
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   206
if(NOT NOSERVER)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   207
    if(GHC)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   208
        set(ghc_executable ${GHC})
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   209
    else()
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   210
        find_program(ghc_executable ghc)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   211
    endif()
5053
a767954cfa03 this should help people hacking the cmake files
koda
parents: 4904
diff changeset
   212
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   213
    if(ghc_executable)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   214
        set(HAVE_NETSERVER true)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   215
        add_subdirectory(gameServer)
7718
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
   216
        message(STATUS "Found GHC: ${ghc_executable}")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   217
    else()
7718
97ba379164ec use cmake OPTION for arguments and further cleanup on CMakeFiles
koda
parents: 7709
diff changeset
   218
        message(STATUS "Could NOT find GHC, server will not be built")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   219
        set(HAVE_NETSERVER false)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   220
    endif()
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   221
else()
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   222
    message(STATUS "Server will not be built per user request")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   223
    set(HAVE_NETSERVER false)
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   224
endif()
1415
6fbfee0e113a Allow build without net game server: introduce -DWITH_SERVER configuration parameter
unc0rr
parents: 1370
diff changeset
   225
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   226
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   227
#lua discovery
7031
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 7030
diff changeset
   228
find_package(Lua)
7233
225179f64fd8 LUA_FOUND should surely be set only if the system lua was found.
nemo
parents: 7226
diff changeset
   229
if(LUA_FOUND)
7817
6cc558a69b58 countless small optimisation for cmake, output messages are now coherent (mostly) and the options get fully respected (eg. skipping library search if not activated)
koda
parents: 7816
diff changeset
   230
    message(STATUS "Found LUA: ${LUA_DEFAULT}")
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   231
else()
7817
6cc558a69b58 countless small optimisation for cmake, output messages are now coherent (mostly) and the options get fully respected (eg. skipping library search if not activated)
koda
parents: 7816
diff changeset
   232
    message(STATUS "LUA will be provided by the bundled sources")
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   233
    add_subdirectory(misc/liblua)
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   234
    #linking with liblua.a requires system readline -- this works everywhere, right?
7704
b25add2fdfa6 slight tweak to lua linking (that will break everything, i'm sure)
koda
parents: 7397
diff changeset
   235
    set(pascal_flags "-k${EXECUTABLE_OUTPUT_PATH}/lib${LUA_LIBRARY}.a" "-k-lreadline" ${pascal_flags})
7031
d5ea24399a48 when Lua is not found, fallback to compiling the one that comes bundled in our sources
koda
parents: 7030
diff changeset
   236
endif()
7223
b554726ff468 uniform NOPNG and NOSERVER cmake symbols
koda
parents: 7220
diff changeset
   237
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   238
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   239
#main engine
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   240
add_subdirectory(hedgewars)
5053
a767954cfa03 this should help people hacking the cmake files
koda
parents: 4904
diff changeset
   241
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   242
#Android related build scripts
6812
929b467c7277 fixed some typo's. LUA_LIBRARY now points to the right name, regardless of the host machine. Running cmake after a bad attempt (ie forgot to add paths to PATH) now works rather than having to clean the cache
Xeli
parents: 6605
diff changeset
   243
if(ANDROID)
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   244
    #run cmake -DANDROID=1 to enable this
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   245
    add_subdirectory(project_files/Android-build)
6025
cac1d5601d7c reviewed the build system and parts of the previous merge, performed some code cleanup
koda
parents: 6023
diff changeset
   246
endif()
5381
8f95038f3f75 Removed protocol check, using CMake now to setup the building scripts using Templates/* removed old scripts
Xeli
parents: 5223
diff changeset
   247
7705
15f5d3cd35c6 force a DEBUG build when HW_DEV is true, some CMakeLists.txt cleanup/commenting
koda
parents: 7704
diff changeset
   248
#TODO: when ANDROID, BUILD_ENGINE_LIBRARY should be set
7099
c0e403f618aa remove the need to qt and co when using cmake with -DANDROID=1
Xeli
parents: 7050
diff changeset
   249
if(NOT (BUILD_ENGINE_LIBRARY OR ANDROID))
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   250
    add_subdirectory(bin)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   251
    add_subdirectory(misc/quazip)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   252
    add_subdirectory(QTfrontend)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   253
    add_subdirectory(share)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   254
    add_subdirectory(tools)
3515
3e8635f43972 fix cmakefiles to work with mercurial
koda
parents: 3495
diff changeset
   255
endif()
2203
6bd39d75e0dd -Added support for Release and Debug for CMAKE_BUILD_TYPE
koda
parents: 2200
diff changeset
   256
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   257
5405
5b17e1b3e0d5 better variable grouping...
koda
parents: 5223
diff changeset
   258
# CPack variables
3338
dee9beba85cc patch by raptor (polished by me) to allow tiger/xcode24 compilation
koda
parents: 3306
diff changeset
   259
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Hedgewars, a free turn-based strategy")
2827
45817d8386c7 Engine:
smxx
parents: 2822
diff changeset
   260
set(CPACK_PACKAGE_VENDOR "Hedgewars Project")
907
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
   261
set(CPACK_PACKAGE_FILE_NAME "hedgewars-${HEDGEWARS_VERSION}")
a5b0b93a39c8 Use constant generated by cmake for version string
unc0rr
parents: 904
diff changeset
   262
set(CPACK_SOURCE_PACKAGE_FILE_NAME "hedgewars-src-${HEDGEWARS_VERSION}")
1459
cf6fa7c9cf45 Fix generator name (TBZ2 instead of BZ2)
unc0rr
parents: 1458
diff changeset
   263
set(CPACK_SOURCE_GENERATOR "TBZ2")
1173
70b0acd4548c Revert accidental nsis installer generator regression
unc0rr
parents: 1159
diff changeset
   264
set(CPACK_PACKAGE_EXECUTABLES "hedgewars" "hedgewars")
458
5880af7b530a Fix build
unc0rr
parents: 360
diff changeset
   265
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
   266
set(CPACK_PACKAGE_INSTALL_DIRECTORY "Hedgewars ${HEDGEWARS_VERSION}")
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   267
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   268
if(WIN32 AND NOT UNIX)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   269
    set(CPACK_NSIS_DISPLAY_NAME "Hedgewars")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   270
    set(CPACK_NSIS_HELP_LINK "http://www.hedgewars.org/")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   271
    set(CPACK_NSIS_URL_INFO_ABOUT "http://www.hedgewars.org/")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   272
    set(CPACK_NSIS_CONTACT "unC0Rr@gmail.com")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   273
    set(CPACK_NSIS_MODIFY_PATH OFF)
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   274
    set(CPACK_GENERATOR "ZIP;NSIS")
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   275
    set(CPACK_PACKAGE_INSTALL_REGISTRY_KEY "hedgewars")
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   276
else(WIN32 AND NOT UNIX)
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   277
    set(CPACK_STRIP_FILES "bin/hedgewars;bin/hwengine")
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   278
endif(WIN32 AND NOT UNIX)
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   279
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   280
set(CPACK_SOURCE_IGNORE_FILES
7220
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   281
    "~"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   282
    "\\\\.hg"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   283
    "\\\\.svn"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   284
    "\\\\.exe$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   285
    "\\\\.a$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   286
    "\\\\.dll$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   287
    "\\\\.xcf$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   288
    "\\\\.cxx$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   289
    "\\\\.db$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   290
    "\\\\.dof$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   291
    "\\\\.layout$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   292
    "\\\\.zip$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   293
    "\\\\.gz$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   294
    "\\\\.bz2$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   295
    "\\\\.tmp$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   296
    "\\\\.core$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   297
    "\\\\.sh$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   298
    "\\\\.sifz$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   299
    "\\\\.svg$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   300
    "\\\\.svgz$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   301
    "\\\\.ppu$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   302
    "\\\\.psd$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   303
    "\\\\.o$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   304
    "Makefile"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   305
    "Doxyfile"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   306
    "CMakeFiles"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   307
    "debug"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   308
    "release$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   309
    "Debug$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   310
    "Release$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   311
    "proto\\\\.inc$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   312
    "hwconsts\\\\.cpp$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   313
    "playlist\\\\.inc$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   314
    "CPack"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   315
    "cmake_install\\\\.cmake$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   316
    "config\\\\.inc$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   317
    "hwengine\\\\.desktop$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   318
    "CMakeCache\\\\.txt$"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   319
#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libopenalbridge"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   320
#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libfreetype"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   321
    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/liblua"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   322
#    "^${CMAKE_CURRENT_SOURCE_DIR}/misc/libtremor"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   323
    "^${CMAKE_CURRENT_SOURCE_DIR}/project_files/HedgewarsMobile/"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   324
    "^${CMAKE_CURRENT_SOURCE_DIR}/bin/[a-z]"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   325
    "^${CMAKE_CURRENT_SOURCE_DIR}/tools/templates"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   326
    "^${CMAKE_CURRENT_SOURCE_DIR}/doc"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   327
    "^${CMAKE_CURRENT_SOURCE_DIR}/templates"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   328
    "^${CMAKE_CURRENT_SOURCE_DIR}/Graphics"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   329
    "^${CMAKE_CURRENT_SOURCE_DIR}/realtest"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   330
    "^${CMAKE_CURRENT_SOURCE_DIR}/tmp"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   331
    "^${CMAKE_CURRENT_SOURCE_DIR}/utils"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   332
    "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Maps/test"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   333
    "^${CMAKE_CURRENT_SOURCE_DIR}/share/hedgewars/Data/Themes/ethereal"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   334
    "^${CMAKE_CURRENT_SOURCE_DIR}/install_manifest.txt"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   335
    "^${CMAKE_CURRENT_SOURCE_DIR}/CMakeCache.txt"
dfe678f129e4 sed 's/\t/ /g' CMakeLists.txt
koda
parents: 7114
diff changeset
   336
    "^${CMAKE_CURRENT_SOURCE_DIR}/hedgewars\\\\."
584
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   337
)
f381705f1aeb Some stuff to get good results from make 'package_source'
unc0rr
parents: 546
diff changeset
   338
184
f97a7a3dc8f6 - Update more headers
unc0rr
parents: 123
diff changeset
   339
include(CPack)
5407
486231e82e8d typo and spaces
koda
parents: 5405
diff changeset
   340