1 cmake_minimum_required(VERSION 2.8.12.2)
3 include(configure.cmake)
7 set(CMAKE_INCLUDE_CURRENT_DIR ON)
11 include_directories(include)
15 if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
16 add_definitions(-D_TARGET_MAC64)
19 arch/i386/dispatchexceptionwrapper.S
20 exception/machexception.cpp
21 exception/machmessage.cpp
23 endif(CMAKE_SYSTEM_NAME STREQUAL Darwin)
25 if(CMAKE_SYSTEM_NAME STREQUAL Linux)
26 add_definitions(-D__LINUX__=1)
27 endif(CMAKE_SYSTEM_NAME STREQUAL Linux)
29 add_definitions(-DPLATFORM_UNIX=1)
30 add_definitions(-DLP64COMPATIBLE=1)
31 add_definitions(-DFEATURE_PAL=1)
32 add_definitions(-DCORECLR=1)
33 add_definitions(-DPIC=1)
34 add_definitions(-DBIT64=1)
35 add_definitions(-D_WIN64=1)
37 add_compile_options(-fno-builtin)
38 add_compile_options(-fPIC)
43 arch/i386/processor.cpp
54 cruntime/printfcpp.cpp
55 cruntime/silent_printf.cpp
57 cruntime/stringtls.cpp
71 file/shmfilelockmgr.cpp
72 handlemgr/handleapi.cpp
73 handlemgr/handlemgr.cpp
79 locale/unicode_data.cpp
92 misc/dactableaddress.cpp
100 objmgr/shmobjectmanager.cpp
105 safecrt/safecrt_input_s.c
106 safecrt/safecrt_output_l.c
107 safecrt/safecrt_output_s.c
108 safecrt/safecrt_winput_s.c
109 safecrt/safecrt_woutput_s.c
110 safecrt/splitpath_s.c
128 safecrt/wmakepath_s.c
129 safecrt/wsplitpath_s.c
132 shmemory/shmemory.cpp
135 synchobj/semaphore.cpp
137 synchmgr/synchcontrollers.cpp
138 synchmgr/synchmanager.cpp
142 thread/threadsusp.cpp
146 add_library(CoreClrPal
152 if(CMAKE_SYSTEM_NAME STREQUAL Linux)
153 target_link_libraries(CoreClrPal
159 endif(CMAKE_SYSTEM_NAME STREQUAL Linux)
161 if(CMAKE_SYSTEM_NAME STREQUAL Darwin)
162 find_library(COREFOUNDATION CoreFoundation)
163 find_library(CORESERVICES CoreServices)
164 find_library(SECURITY Security)
165 find_library(SYSTEM System)
166 target_link_libraries(CoreClrPal
172 endif(CMAKE_SYSTEM_NAME STREQUAL Darwin)
174 add_subdirectory(examples)