mirror of
https://github.com/reactos/reactos.git
synced 2024-09-09 12:20:21 +00:00
![Jérôme Gardou](/assets/img/avatar_default.png)
Instead of messing with global variables and the like, we introduce two target properties: - WITH_CXX_EXCEPTIONS: if you want to use C++ exceptions - WITH_CXX_RTTI: if you need RTTI in your module You can use the newly introduced set_target_cpp_properties function, with WITH_EXCEPTIONS and WITH_RTTI arguments We also introduce two libraries : - cpprt: for C++ runtime routines - cppstl: for the C++ standard template library NB: On GCC, this requires to create imported libraries with the related built-in libraries:libsupc++, limingwex, libstdc++ Finally, we manage the relevant flags with the ad-hoc generator expressions So, if you don't need exceptions, nor RTTI, nor use any runtime at all: you simply have nothing else to do than add your C++ file to your module
27 lines
559 B
CMake
27 lines
559 B
CMake
|
|
|
|
list(APPEND SOURCE
|
|
cardbitmaps.cpp
|
|
cardbutton.cpp
|
|
cardcolor.cpp
|
|
cardcount.cpp
|
|
cardlib.cpp
|
|
cardregion.cpp
|
|
cardrgndraw.cpp
|
|
cardrgnmouse.cpp
|
|
cardstack.cpp
|
|
cardwindow.cpp
|
|
dropzone.cpp
|
|
cardlib.h)
|
|
|
|
add_library(cardlib STATIC ${SOURCE})
|
|
target_link_libraries(cardlib PRIVATE cpprt)
|
|
target_include_directories(cardlib PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
if(NOT MSVC)
|
|
target_compile_options(cardlib PRIVATE "-Wno-unused-but-set-variable")
|
|
endif()
|
|
|
|
add_dependencies(cardlib psdk)
|
|
add_pch(cardlib cardlib.h SOURCE)
|