72,24 → 72,49 |
OUTPUT_STRIP_TRAILING_WHITESPACE |
) |
MESSAGE(STATUS "Machine: ${MACHINE}, void pointer size: ${CMAKE_SIZEOF_VOID_P}") |
STRING(REGEX MATCH "(i?86-*)|(athlon-*)|(pentium-*)" _machine_x86 "${MACHINE}") |
STRING(REGEX MATCH "(i[0-9]86-*)|(athlon-*)|(pentium-*)" _machine_x86 "${MACHINE}") |
IF (_machine_x86) |
MESSAGE(STATUS "Found target X86") |
SET(ARCH_X86 1) |
ENDIF (_machine_x86) |
IF (APPLE AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND ARCH_X86 EQUAL 1) |
MESSAGE(STATUS "Found Snow Leopard Target: Apple, 64 bit, X86") |
UNSET(ARCH_X86) |
SET(ARCH_X86_64 1) |
SET(APPLE_10_6_X 1 CACHE TYPE BOOL) |
ENDIF (APPLE AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND ARCH_X86 EQUAL 1) |
|
STRING(REGEX MATCH "(x86_64-*)|(X86_64-*)|(AMD64-*)|(amd64-*)" _machine_x86_64 "${MACHINE}") |
IF (_machine_x86_64) |
MESSAGE(STATUS "Found target X86_64") |
SET(ARCH_X86_64 1) |
MESSAGE(STATUS "Found target X86_64") |
SET(ARCH_X86_64 1) |
ENDIF (_machine_x86_64) |
|
IF (APPLE AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND (ARCH_X86 EQUAL 1 OR ARCH_X86_64 EQUAL 1)) |
STRING(REGEX REPLACE ".*-darwin([0-9]+).*" "\\1" _apple_ver "${MACHINE}") |
IF (_apple_ver EQUAL "14") |
MESSAGE(STATUS "Found OSX Yosemite Target: Apple, 64 bit, X86") |
SET(APPLE_10_10_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "14") |
IF (_apple_ver EQUAL "13") |
MESSAGE(STATUS "Found OSX Mavericks Target: Apple, 64 bit, X86") |
SET(APPLE_10_9_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "13") |
IF (_apple_ver EQUAL "12") |
MESSAGE(STATUS "Found OSX Mountain Lion Target: Apple, 64 bit, X86") |
SET(APPLE_10_8_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "12") |
IF (_apple_ver EQUAL "11") |
MESSAGE(STATUS "Found OSX Lion Target: Apple, 64 bit, X86") |
SET(APPLE_10_7_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "11") |
IF (_apple_ver EQUAL "10") |
MESSAGE(STATUS "Found OSX Snow Leopard Target: Apple, 64 bit, X86") |
SET(APPLE_10_6_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "10") |
IF (_apple_ver EQUAL "9") |
MESSAGE(STATUS "Found OSX Leoard Target: Apple, 32 bit, X86") |
SET(APPLE_10_9_X 1 CACHE TYPE BOOL) |
ENDIF (_apple_ver EQUAL "9") |
UNSET(ARCH_X86) |
ENDIF (APPLE AND CMAKE_SIZEOF_VOID_P EQUAL 8 AND (ARCH_X86 EQUAL 1 OR ARCH_X86_64 EQUAL 1)) |
|
|
|
STRING(REGEX MATCH "(sparc64-*)|(SPARC64-*)" _machine_sparc_64 "${MACHINE}") |
IF (_machine_sparc_64) |
MESSAGE(STATUS "Found target SPARC 64") |
357,72 → 382,70 |
IF(APPLE_10_4_X) |
SET(OSXMINVER "10.4" CACHE TYPE STRING) |
ENDIF(APPLE_10_4_X) |
# gcc/mac |
IF(WANT_UNIVERSAL_BUNDLE) |
MESSAGE("Setting Universal (PPC/i386) Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "ppc;i386" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc;i386" ) |
SET(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk") |
SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.4") |
ELSE(WANT_UNIVERSAL_BUNDLE) |
IF(ARCH_PPC OR ARCH_PPC_64) |
MESSAGE("Setting PPC Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "ppc" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc" ) |
ELSE(ARCH_PPC OR ARCH_PPC_64) |
IF(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
MESSAGE("Setting x86_64 Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "x86_64" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "x86_64" ) |
ELSE(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
MESSAGE("Setting i386 Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "i386" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "i386" ) |
ENDIF(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
ENDIF(ARCH_PPC OR ARCH_PPC_64) |
ENDIF(WANT_UNIVERSAL_BUNDLE) |
MESSAGE(STATUS "${CMAKE_OSX_ARCHITECTURES} ${CMAKE_OSX_SYSROOT}") |
SET(ENV{MACOSX_DEPLOYMENT_TARGET} ${OSXMINVER} ) |
SET( ENV{LD_PREBIND} 1 ) |
SET( ENV{LD_PREBIND_ALLOW_OVERLAP} 1 ) |
IF (WANT_DEBUG) |
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (WANT_DEBUG) |
IF (WANT_RELEASEWITHDEBUG) |
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (WANT_RELEASEWITHDEBUG) |
IF (NOT WANT_DEBUG AND NOT WANT_RELEASEWITHDEBUG) |
SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_RELEASE "-O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (NOT WANT_DEBUG AND NOT WANT_RELEASEWITHDEBUG) |
# gcc/mac |
IF(WANT_UNIVERSAL_BUNDLE) |
MESSAGE("Setting Universal (PPC/i386) Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "ppc;i386" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc;i386" ) |
SET(CMAKE_OSX_SYSROOT "/Developer/SDKs/MacOSX10.4u.sdk") |
SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.4") |
ELSE(WANT_UNIVERSAL_BUNDLE) |
IF(ARCH_PPC OR ARCH_PPC_64) |
MESSAGE("Setting PPC Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "ppc" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "ppc" ) |
ELSE(ARCH_PPC OR ARCH_PPC_64) |
IF(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
MESSAGE("Setting x86_64 Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "x86_64" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "x86_64" ) |
ELSE(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
MESSAGE("Setting i386 Architecture for OSX Build/Bundle") |
SET(CMAKE_OSX_ARCHITECTURES "i386" ) |
SET(CMAKE_TRY_COMPILE_OSX_ARCHITECTURES "i386" ) |
ENDIF(APPLE_10_6_X OR APPLE_10_7_X OR APPLE_10_8_X OR APPLE_10_9_X OR APPLE_10_10_X) |
ENDIF(ARCH_PPC OR ARCH_PPC_64) |
ENDIF(WANT_UNIVERSAL_BUNDLE) |
MESSAGE(STATUS "${CMAKE_OSX_ARCHITECTURES} ${CMAKE_OSX_SYSROOT}") |
SET(ENV{MACOSX_DEPLOYMENT_TARGET} ${OSXMINVER} ) |
SET(ENV{LD_PREBIND} 1 ) |
SET(ENV{LD_PREBIND_ALLOW_OVERLAP} 1 ) |
IF (WANT_DEBUG) |
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (WANT_DEBUG) |
IF (WANT_RELEASEWITHDEBUG) |
SET(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_RELWITHDEBINFO "-O2 -g3 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (WANT_RELEASEWITHDEBUG) |
IF (NOT WANT_DEBUG AND NOT WANT_RELEASEWITHDEBUG) |
SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
SET(CMAKE_C_FLAGS_RELEASE "-O2 -fno-inline-functions -Wall -mmacosx-version-min=${OSXMINVER}") |
ENDIF (NOT WANT_DEBUG AND NOT WANT_RELEASEWITHDEBUG) |
ELSE(APPLE) |
IF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
# Windows build with Visual Studio |
# Surely there's a better way to identify the compiler? |
SET(CMAKE_CXX_FLAGS_DEBUG) |
SET(CMAKE_C_FLAGS_DEBUG) |
ELSE(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
# vanilla gcc |
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -Wall -fstrict-aliasing") |
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g3 -Wall -fstrict-aliasing") |
|
IF (_machine_x86 OR _machine_x86_64) |
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fPIC") |
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fPIC") |
ENDIF (_machine_x86 OR _machine_x86_64) |
|
ENDIF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
IF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
# Windows build with Visual Studio |
# Surely there's a better way to identify the compiler? |
SET(CMAKE_CXX_FLAGS_DEBUG) |
SET(CMAKE_C_FLAGS_DEBUG) |
ELSE(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
# vanilla gcc |
SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -Wall -fstrict-aliasing") |
SET(CMAKE_C_FLAGS_DEBUG "-O0 -g3 -Wall -fstrict-aliasing") |
IF (_machine_x86 OR _machine_x86_64) |
SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -fPIC") |
SET(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -fPIC") |
ENDIF (_machine_x86 OR _machine_x86_64) |
ENDIF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
ENDIF(APPLE) |
|
IF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
SET(CMAKE_CXX_FLAGS_RELEASE) |
SET(CMAKE_C_FLAGS_RELEASE) |
SET(CMAKE_CXX_FLAGS_RELEASE) |
SET(CMAKE_C_FLAGS_RELEASE) |
ELSE(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -Wall -fPIC") |
SET(CMAKE_C_FLAGS_RELEASE "-O2 -Wall -fPIC") |
ADD_DEFINITIONS(-DNDEBUG) |
SET(CMAKE_CXX_FLAGS_RELEASE "-O2 -Wall -fPIC") |
SET(CMAKE_C_FLAGS_RELEASE "-O2 -Wall -fPIC") |
ADD_DEFINITIONS(-DNDEBUG) |
ENDIF(${CMAKE_GENERATOR} MATCHES "^(Visual Studio|NMake).*") |
|
IF(WIN32) |