mirror of
https://github.com/reactos/reactos.git
synced 2024-07-21 11:48:04 +00:00
d6ea8659c8
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
40 lines
959 B
CMake
40 lines
959 B
CMake
project(MSPAINT)
|
|
|
|
add_definitions(-DINITGUID)
|
|
|
|
include_directories(${REACTOS_SOURCE_DIR}/sdk/lib/atl)
|
|
|
|
list(APPEND SOURCE
|
|
dialogs.cpp
|
|
dib.cpp
|
|
drawing.cpp
|
|
fullscreen.cpp
|
|
history.cpp
|
|
imgarea.cpp
|
|
main.cpp
|
|
miniature.cpp
|
|
mouse.cpp
|
|
palette.cpp
|
|
palettemodel.cpp
|
|
registry.cpp
|
|
scrollbox.cpp
|
|
selection.cpp
|
|
selectionmodel.cpp
|
|
sizebox.cpp
|
|
textedit.cpp
|
|
toolbox.cpp
|
|
toolsettings.cpp
|
|
toolsmodel.cpp
|
|
winproc.cpp
|
|
precomp.h)
|
|
|
|
file(GLOB mspaint_rc_deps icons/*.*)
|
|
add_rc_deps(rsrc.rc ${mspaint_rc_deps})
|
|
add_executable(mspaint ${SOURCE} rsrc.rc)
|
|
set_module_type(mspaint win32gui UNICODE)
|
|
target_link_libraries(mspaint uuid cpprt)
|
|
set_target_cpp_properties(mspaint WITH_EXCEPTIONS)
|
|
add_importlibs(mspaint hhctrl comdlg32 shell32 user32 gdi32 advapi32 comctl32 msvcrt kernel32 rpcrt4 shlwapi)
|
|
add_pch(mspaint precomp.h SOURCE)
|
|
add_cd_file(TARGET mspaint DESTINATION reactos/system32 FOR all)
|