summaryrefslogtreecommitdiff
path: root/src/unwinder
diff options
context:
space:
mode:
authorMike Danes <onemihaid@hotmail.com>2015-08-01 11:04:16 +0300
committerMike Danes <onemihaid@hotmail.com>2015-08-04 11:00:34 +0300
commit8bb8ed66e4e54270e18e68c37515f21730c82cea (patch)
treea8f713371002b0a037965b4020ffd254a1de73aa /src/unwinder
parentfd1fbb93e8435c371dea39f16c0cf6d030b8c7dd (diff)
downloadcoreclr-8bb8ed66e4e54270e18e68c37515f21730c82cea.tar.gz
coreclr-8bb8ed66e4e54270e18e68c37515f21730c82cea.tar.bz2
coreclr-8bb8ed66e4e54270e18e68c37515f21730c82cea.zip
Enable the Windows x86 build
This allows building the Windows x86 version of CoreCLR by using "x86" for the BuildArch parameter of build.cmd. Note that CMAKE_SYSTEM_PROCESSOR is no longer used in Windows builds to set IS_64BIT_BUILD. This change is enough to get CoreCLR to build but more changes are required for it to actually run correctly. In particular, the JIT compiler support for x86 is pretty limited at this point.
Diffstat (limited to 'src/unwinder')
-rw-r--r--src/unwinder/CMakeLists.txt4
-rw-r--r--src/unwinder/dac/CMakeLists.txt8
2 files changed, 10 insertions, 2 deletions
diff --git a/src/unwinder/CMakeLists.txt b/src/unwinder/CMakeLists.txt
index 86c935a578..3f81ebcccc 100644
--- a/src/unwinder/CMakeLists.txt
+++ b/src/unwinder/CMakeLists.txt
@@ -17,6 +17,8 @@ if(CLR_CMAKE_PLATFORM_ARCH_AMD64)
list(APPEND UNWINDER_SOURCES
amd64/unwinder_amd64.cpp
)
+elseif(CLR_CMAKE_PLATFORM_ARCH_I386)
+# nothing needed for x86
elseif(CLR_CMAKE_PLATFORM_ARCH_ARM)
include_directories(arm)
@@ -30,7 +32,7 @@ elseif(CLR_CMAKE_PLATFORM_ARCH_ARM64)
arm64/unwinder_arm64.cpp
)
else()
- message(FATAL_ERROR "Only ARM, ARM64 and AMD64 is supported")
+ clr_unknown_arch()
endif()
convert_to_absolute_path(UNWINDER_SOURCES ${UNWINDER_SOURCES})
diff --git a/src/unwinder/dac/CMakeLists.txt b/src/unwinder/dac/CMakeLists.txt
index 75d7050c6f..55c9199c7e 100644
--- a/src/unwinder/dac/CMakeLists.txt
+++ b/src/unwinder/dac/CMakeLists.txt
@@ -8,6 +8,12 @@ if(CLR_CMAKE_PLATFORM_ARCH_AMD64)
add_definitions(-DDBG_TARGET_AMD64=1)
add_definitions(-DDBG_TARGET_WIN64=1)
add_definitions(-D_WIN64=1)
+elseif(CLR_CMAKE_PLATFORM_ARCH_I386)
+ add_definitions(-D_TARGET_X86_=1)
+ add_definitions(-DDBG_TARGET_32BIT=1)
+ add_definitions(-DDBG_TARGET_X86=1)
+ add_definitions(-DDBG_TARGET_WIN32=1)
+ add_definitions(-D_WIN32=1)
elseif(CLR_CMAKE_PLATFORM_ARCH_ARM)
add_definitions(-D_TARGET_ARM_=1)
add_definitions(-DDBG_TARGET_32BIT=1)
@@ -21,7 +27,7 @@ elseif(CLR_CMAKE_PLATFORM_ARCH_ARM64)
add_definitions(-DDBG_TARGET_WIN64=1)
add_definitions(-D_WIN64=1)
else()
- message(FATAL_ERROR "Only ARM, ARM64 and AMD64 is supported")
+ clr_unknown_arch()
endif()
add_library(unwinder_dac ${UNWINDER_SOURCES})