xref: /reactos/sdk/lib/cpprt/CMakeLists.txt (revision 9c544a55)
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()
33