10 |
10 |
11 set(CPACK_PACKAGE_VERSION_MAJOR "0") |
11 set(CPACK_PACKAGE_VERSION_MAJOR "0") |
12 set(CPACK_PACKAGE_VERSION_MINOR "9") |
12 set(CPACK_PACKAGE_VERSION_MINOR "9") |
13 set(CPACK_PACKAGE_VERSION_PATCH "13-dev") |
13 set(CPACK_PACKAGE_VERSION_PATCH "13-dev") |
14 |
14 |
|
15 set(build_type "standard") |
15 |
16 |
16 if(APPLE) |
17 if(APPLE) |
17 set(CMAKE_FIND_FRAMEWORK "FIRST") |
18 set(CMAKE_FIND_FRAMEWORK "FIRST") |
18 set(universal_build true) |
19 |
19 |
|
20 #paths for creating the bundle |
20 #paths for creating the bundle |
21 set(bundle_name Hedgewars.app) |
21 set(bundle_name Hedgewars.app) |
22 set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/) |
22 set(CMAKE_INSTALL_PREFIX ${bundle_name}/Contents/MacOS/) |
23 set(DATA_INSTALL_DIR "../Resources/") |
23 set(DATA_INSTALL_DIR "../Resources/") |
24 set(target_dir ".") |
24 set(target_dir ".") |
25 |
25 |
26 #build architecture / os version |
26 #build architecture / os version |
27 set(MacVersion $ENV{MACOSX_DEPLOYMENT_TARGET}) |
27 set(minimum_os $ENV{MACOSX_DEPLOYMENT_TARGET}) |
28 if(MacVersion MATCHES "10.4") |
28 if(minimum_os MATCHES "10.4") |
29 message(STATUS "Target: Mac OS X 10.4 i386/ppc") |
29 message(STATUS "Target: Mac OS X 10.4 i386") |
30 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk/") |
30 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk/") |
31 set(CMAKE_OSX_ARCHITECTURES "i386;ppc7400") |
31 set(CMAKE_OSX_ARCHITECTURES "i386") |
|
32 set(build_type "standard") |
32 endif() |
33 endif() |
33 if(MacVersion MATCHES "10.5") |
34 if(minimum_os MATCHES "10.5") |
34 message(STATUS "Target: Mac OS X 10.5 i386/ppc") |
35 message(STATUS "Target: Mac OS X 10.5 i386/ppc") |
35 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.5.sdk/") |
36 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.5.sdk/") |
36 set(CMAKE_OSX_ARCHITECTURES "i386;ppc7400") |
37 set(CMAKE_OSX_ARCHITECTURES "i386;ppc7400") |
|
38 set(build_type "universal") |
37 endif() |
39 endif() |
38 if(MacVersion MATCHES "10.6") |
40 if(minimum_os MATCHES "10.6") |
39 message(STATUS "Target: Mac OS X 10.6 i386/ppc/x86_64") |
41 message(STATUS "Target: Mac OS X 10.6 i386/ppc/x86_64") |
40 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.6.sdk/") |
42 set(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.6.sdk/") |
41 set(CMAKE_OSX_ARCHITECTURES "i386;x86_64;ppc7400") |
43 set(CMAKE_OSX_ARCHITECTURES "x86_64;i386;ppc7400") |
|
44 set(build_type "universal64") |
42 endif() |
45 endif() |
43 #else use the default sysroot with default archs |
46 if(NOT minimum_os) |
|
47 #use the default sysroot with default archs |
|
48 EXEC_PROGRAM(sw_vers OUTPUT_VARIABLE MACOSX_VERSION) |
|
49 string(REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" MACOSX_VERSION "${MACOSX_VERSION}") |
|
50 STRING(REGEX REPLACE "[0-9][0-9].([0-9]+).[0-9]" "\\1" MACOSX_VERSION ${MACOSX_VERSION}) |
|
51 set(minimum_os "10.${MACOSX_VERSION}") |
|
52 endif() |
44 else(APPLE) |
53 else(APPLE) |
45 set(target_dir "bin") |
54 set(target_dir "bin") |
46 endif(APPLE) |
55 endif(APPLE) |
47 |
56 |
48 |
57 |
75 set(pascal_compiler_flags_cmn "-O2" "-Xs" "-Nu" "-Si" ${pascal_compiler_flags_cmn}) |
84 set(pascal_compiler_flags_cmn "-O2" "-Xs" "-Nu" "-Si" ${pascal_compiler_flags_cmn}) |
76 set(haskell_compiler_flags_cmn "-w" "-O2") |
85 set(haskell_compiler_flags_cmn "-w" "-O2") |
77 if(APPLE AND NOT universal_build) |
86 if(APPLE AND NOT universal_build) |
78 set(CMAKE_C_FLAGS_RELEASE "-fPIC -msse2 ${CMAKE_C_FLAGS_RELEASE}") |
87 set(CMAKE_C_FLAGS_RELEASE "-fPIC -msse2 ${CMAKE_C_FLAGS_RELEASE}") |
79 set(CMAKE_CXX_FLAGS_RELEASE "-fPIC -msse2 ${CMAKE_CXX_FLAGS_RELEASE}") |
88 set(CMAKE_CXX_FLAGS_RELEASE "-fPIC -msse2 ${CMAKE_CXX_FLAGS_RELEASE}") |
80 set(pascal_compiler_flags_cmn "-fPIC" "-CfSSE2" ${pascal_compiler_flags_cmn}) #-CF7400 for ppc |
89 set(pascal_compiler_flags_cmn "-fPIC" ${pascal_compiler_flags_cmn}) |
|
90 #-Cf7400 for ppc, -CfSSE2 for x86 (but none for x86_64) |
81 endif() |
91 endif() |
82 else(Optz) |
92 else(Optz) |
83 set(pascal_compiler_flags_cmn "-O-" "-gl" "-dDEBUGFILE" "-pg" "-vv" ${pascal_compiler_flags_cmn}) |
93 set(pascal_compiler_flags_cmn "-O-" "-gl" "-dDEBUGFILE" "-pg" "-vv" ${pascal_compiler_flags_cmn}) |
84 set(haskell_compiler_flags_cmn "-Wall" "-debug" "-dcore-lint") |
94 set(haskell_compiler_flags_cmn "-Wall" "-debug" "-dcore-lint") |
85 endif(Optz) |
95 endif(Optz) |