reactos/base/applications/msconfig_new/CMakeLists.txt
Jérôme Gardou d6ea8659c8 [CMAKE] Get rid of the set_cpp macro
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
2020-10-20 21:44:54 +02:00

40 lines
1.1 KiB
CMake

PROJECT(msconfig_new)
include_directories(
.
comctl32ex
${REACTOS_SOURCE_DIR}/sdk/include/c++
${REACTOS_SOURCE_DIR}/sdk/lib/atl)
list(APPEND C_SOURCE
comctl32ex/comctl32supp.c
comctl32ex/listview.c
comctl32ex/treeview.c
comctl32ex/uxthemesupp.c
fileextractdialog.c
fileutils.c
freeldrpage.c
generalpage.c
msconfig.c
regutils.c
# startuppage.c
stringutils.c
utils.c)
list(APPEND CPP_SOURCE
systempage.cpp
srvpage.cpp
toolspage.cpp
xmldomparser.cpp
precomp.h)
add_rc_deps(msconfig.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/msconfig.ico)
add_executable(msconfig_new ${C_SOURCE} ${CPP_SOURCE} msconfig.rc)
add_pch(msconfig_new precomp.h CPP_SOURCE)
set_module_type(msconfig_new win32gui UNICODE)
target_link_libraries(msconfig_new comsupp cpprt)
set_target_cpp_properties(msconfig_new WITH_EXCEPTIONS)
add_importlibs(msconfig_new user32 gdi32 comctl32 comdlg32 advapi32 version ole32 oleaut32 msxml3 shell32 shlwapi msvcrt kernel32)
add_cd_file(TARGET msconfig_new DESTINATION reactos/system32 FOR all)