45 |
45 |
46 #versioning |
46 #versioning |
47 set(CPACK_PACKAGE_VERSION_MAJOR 0) |
47 set(CPACK_PACKAGE_VERSION_MAJOR 0) |
48 set(CPACK_PACKAGE_VERSION_MINOR 9) |
48 set(CPACK_PACKAGE_VERSION_MINOR 9) |
49 set(CPACK_PACKAGE_VERSION_PATCH 20) |
49 set(CPACK_PACKAGE_VERSION_PATCH 20) |
50 set(HEDGEWARS_PROTO_VER 46) |
50 set(HEDGEWARS_PROTO_VER 48) |
51 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") |
51 set(HEDGEWARS_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}") |
52 include(${CMAKE_MODULE_PATH}/revinfo.cmake) |
52 include(${CMAKE_MODULE_PATH}/revinfo.cmake) |
53 |
53 |
54 message(STATUS "Building ${HEDGEWARS_VERSION}-r${HEDGEWARS_REVISION} (${HEDGEWARS_HASH})") |
54 message(STATUS "Building ${HEDGEWARS_VERSION}-r${HEDGEWARS_REVISION} (${HEDGEWARS_HASH})") |
55 |
55 |
56 #general utilities |
56 #general utilities |
57 include(${CMAKE_MODULE_PATH}/utils.cmake) |
57 include(${CMAKE_MODULE_PATH}/utils.cmake) |
|
58 #paths initialization |
|
59 include(${CMAKE_MODULE_PATH}/paths.cmake) |
58 #platform specific init code |
60 #platform specific init code |
59 include(${CMAKE_MODULE_PATH}/platform.cmake) |
61 include(${CMAKE_MODULE_PATH}/platform.cmake) |
60 include(${CMAKE_MODULE_PATH}/paths.cmake) |
|
61 |
62 |
62 |
63 |
63 #when build type is not specified, assume Debug/Release according to build version information |
64 #when build type is not specified, assume Debug/Release according to build version information |
64 if (CMAKE_BUILD_TYPE) |
65 if (CMAKE_BUILD_TYPE) |
65 string (TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE) |
66 string (TOUPPER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE) |
74 |
75 |
75 #perform safe check that enable/disable compilation features |
76 #perform safe check that enable/disable compilation features |
76 include(${CMAKE_MODULE_PATH}/compilerchecks.cmake) |
77 include(${CMAKE_MODULE_PATH}/compilerchecks.cmake) |
77 |
78 |
78 #set default compiler flags |
79 #set default compiler flags |
79 add_flag_append(CMAKE_C_FLAGS "-Wall -pipe -fPIC") |
80 add_flag_append(CMAKE_C_FLAGS "-Wall -pipe") |
80 add_flag_append(CMAKE_C_FLAGS_RELEASE "-Os") |
81 add_flag_append(CMAKE_C_FLAGS_RELEASE "-O2") |
81 add_flag_append(CMAKE_C_FLAGS_DEBUG "-Wextra -O0") |
82 add_flag_append(CMAKE_C_FLAGS_DEBUG "-Wextra -O0") |
82 add_flag_append(CMAKE_CXX_FLAGS "-Wall -pipe -fPIC") |
83 add_flag_append(CMAKE_CXX_FLAGS "-Wall -pipe") |
83 add_flag_append(CMAKE_CXX_FLAGS_RELEASE "-Os") |
84 add_flag_append(CMAKE_CXX_FLAGS_RELEASE "-O2") |
84 add_flag_append(CMAKE_CXX_FLAGS_DEBUG "-Wextra -O0") |
85 add_flag_append(CMAKE_CXX_FLAGS_DEBUG "-Wextra -O0") |
85 add_flag_append(CMAKE_Pascal_FLAGS "-Cs2000000 -fPIC") |
|
86 add_flag_append(CMAKE_Pascal_FLAGS_DEBUG "-O- -gv") |
|
87 add_flag_append(CMAKE_Pascal_FLAGS_RELEASE "-Os -Xs") |
|
88 |
86 |
89 #CMake adds a lot of additional configuration flags, so let's clear them up |
87 #CMake adds a lot of additional configuration flags, so let's clear them up |
90 if(${MINIMAL_FLAGS}) |
88 if(${MINIMAL_FLAGS}) |
91 unset(CMAKE_C_FLAGS_RELEASE) |
89 unset(CMAKE_C_FLAGS_RELEASE) |
92 unset(CMAKE_C_FLAGS_DEBUG) |
90 unset(CMAKE_C_FLAGS_DEBUG) |