reactos/modules/rostests/rosautotest/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

30 lines
866 B
CMake

list(APPEND SOURCE
CConfiguration.cpp
CFatalException.cpp
CInvalidParameterException.cpp
CJournaledTestList.cpp
CPipe.cpp
CPipedProcess.cpp
CProcess.cpp
CSimpleException.cpp
CTestList.cpp
CVirtualTestList.cpp
CWebService.cpp
CWineTest.cpp
main.cpp
misc.cpp
shutdown.cpp
tools.cpp
precomp.h)
add_executable(rosautotest ${SOURCE} ${CMAKE_CURRENT_BINARY_DIR}/rosautotestmsg.rc)
target_link_libraries(rosautotest cppstl)
set_target_cpp_properties(rosautotest WITH_EXCEPTIONS)
set_module_type(rosautotest win32cui UNICODE)
add_importlibs(rosautotest advapi32 shell32 user32 wininet msvcrt kernel32 ntdll)
add_pch(rosautotest precomp.h SOURCE)
add_message_headers(ANSI rosautotestmsg.mc)
add_dependencies(rosautotest rosautotestmsg)
add_cd_file(TARGET rosautotest DESTINATION reactos/system32 FOR all)