2011-05-16 21:12:07 +08:00
|
|
|
|
2012-08-28 02:58:27 +08:00
|
|
|
if(NOT ARCH)
|
|
|
|
set(ARCH i386)
|
|
|
|
endif()
|
|
|
|
|
2015-09-05 22:38:50 +08:00
|
|
|
# Default to Debug for the build type
|
|
|
|
if(NOT DEFINED CMAKE_BUILD_TYPE)
|
|
|
|
set(CMAKE_BUILD_TYPE "Debug" CACHE STRING
|
|
|
|
"Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel.")
|
|
|
|
endif()
|
|
|
|
|
2011-05-16 21:12:07 +08:00
|
|
|
# the name of the target operating system
|
|
|
|
set(CMAKE_SYSTEM_NAME Windows)
|
|
|
|
set(CMAKE_SYSTEM_PROCESSOR i686)
|
|
|
|
|
|
|
|
# which compilers to use for C and C++
|
2017-11-24 19:01:43 +08:00
|
|
|
# clang-cl gets detected as "Clang" instead of "MSVC" so we force it here
|
2017-10-28 05:18:01 +08:00
|
|
|
if(USE_CLANG_CL)
|
2017-11-24 19:01:43 +08:00
|
|
|
include(CMakeForceCompiler)
|
|
|
|
CMAKE_FORCE_C_COMPILER(clang-cl MSVC)
|
|
|
|
set(CMAKE_C_COMPILER_VERSION "16.00.40219.01")
|
|
|
|
if(ARCH STREQUAL "i386")
|
|
|
|
set(MSVC_C_ARCHITECTURE_ID "X86")
|
|
|
|
endif()
|
|
|
|
include(${CMAKE_ROOT}/Modules/CMakeClDeps.cmake)
|
2017-10-28 05:18:01 +08:00
|
|
|
else()
|
|
|
|
set(CMAKE_C_COMPILER cl)
|
|
|
|
endif()
|
2014-05-25 20:29:49 +08:00
|
|
|
|
|
|
|
if(ARCH STREQUAL "arm")
|
|
|
|
include(CMakeForceCompiler)
|
|
|
|
CMAKE_FORCE_CXX_COMPILER(cl MSVC)
|
|
|
|
else()
|
2017-10-28 05:18:01 +08:00
|
|
|
if(USE_CLANG_CL)
|
2017-11-24 19:01:43 +08:00
|
|
|
include(CMakeForceCompiler)
|
|
|
|
CMAKE_FORCE_CXX_COMPILER(clang-cl MSVC)
|
2017-10-28 05:18:01 +08:00
|
|
|
else()
|
|
|
|
set(CMAKE_CXX_COMPILER cl)
|
|
|
|
endif()
|
2014-05-25 20:29:49 +08:00
|
|
|
endif()
|
|
|
|
|
2012-08-24 23:36:17 +08:00
|
|
|
set(CMAKE_MC_COMPILER mc)
|
2011-05-16 21:12:07 +08:00
|
|
|
set(CMAKE_RC_COMPILER rc)
|
2012-08-28 02:58:27 +08:00
|
|
|
if(ARCH STREQUAL "amd64")
|
2011-05-16 21:12:07 +08:00
|
|
|
set(CMAKE_ASM_COMPILER ml64)
|
2014-05-26 23:28:12 +08:00
|
|
|
elseif(ARCH STREQUAL "arm")
|
|
|
|
set(CMAKE_ASM_COMPILER armasm)
|
2019-06-02 06:38:56 +08:00
|
|
|
elseif(ARCH STREQUAL "arm64")
|
|
|
|
set(CMAKE_ASM_COMPILER armasm64)
|
2011-05-16 21:12:07 +08:00
|
|
|
else()
|
|
|
|
set(CMAKE_ASM_COMPILER ml)
|
|
|
|
endif()
|
2011-09-28 19:13:53 +08:00
|
|
|
set(CMAKE_ASM_COMPILER_ID "VISUAL")
|
2011-05-16 21:12:07 +08:00
|
|
|
|
|
|
|
set(CMAKE_C_STANDARD_LIBRARIES "" CACHE INTERNAL "")
|
|
|
|
|
2012-08-28 02:58:27 +08:00
|
|
|
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86")
|
2011-05-16 21:12:07 +08:00
|
|
|
add_definitions(-D__i386__)
|
|
|
|
endif()
|
2018-08-20 04:01:31 +08:00
|
|
|
|
|
|
|
set(CMAKE_USER_MAKE_RULES_OVERRIDE "${CMAKE_CURRENT_LIST_DIR}/overrides-msvc.cmake")
|