Reactos
1
2include_directories(
3 ${REACTOS_SOURCE_DIR}/sdk/lib/crt/include
4 ${REACTOS_SOURCE_DIR}/sdk/include/c++)
5
6# We need different things, depending on the compiler
7if(MSVC)
8 list(APPEND SOURCE
9 ehvec.cpp
10 new_nothrow.cpp
11 terminate.cpp
12 typeinfo.cpp)
13 if(ARCH STREQUAL "i386")
14 add_asm_files(cpprt_asm i386/cpprt.s)
15 elseif(ARCH STREQUAL "amd64")
16 add_asm_files(cpprt_asm amd64/cpprt.s)
17 elseif(ARCH STREQUAL "arm")
18 add_asm_files(cpprt_asm arm/cpprt.s)
19 endif()
20else()
21 list(APPEND SOURCE
22 __cxa_pure_virtual.cpp)
23endif()
24
25add_library(cpprt ${SOURCE} ${cpprt_asm})
26set_target_cpp_properties(cpprt WITH_EXCEPTIONS)
27add_dependencies(cpprt xdk)
28
29# On GCC builds, we need to link against libsupc++
30if(NOT MSVC)
31 target_link_libraries(cpprt libsupc++)
32endif()