Poniższy CMakeLists.txt
Usuń domyślne flagi na cmake
SET(CMAKE_CXX_FLAGS "/DWIN32")
SET(CMAKE_C_FLAGS ${CMAKE_CXX_FLAGS})
add_executable(hello hello.cpp)
kończy się działa
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64\CL.exe /c /nologo /W1 /WX- /O2 /Ob2 /D WIN32 /D NDEBUG /D "CMAKE_INTDIR=\"Release\"" /D _MBCS /Gm- /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Fo"hello.dir\Release\\" /Fd"C:/Users/monso/code/playground/cmakeworld/build/Release /hello.pdb" /Gd /TP /errorReport:queue ..\hello.cpp
z flagami /c /nologo /W1 /WX- /O2 /Ob2 /D WIN32 /D NDEBUG
.
Jak mogę je usunąć, aby umieścić własne? ustawienie CMAKE_CXX_FLAGS
dołącza flagę, którą umieściłem (na przykład /w
). Podczas drukowania CMAKE_CXX_FLAGS
przed i po wywołaniu set
zmienia swoje wartości.
Wygląda na to, że niektóre podstawowe flagi są zawsze dodawane przez CMake. Nie ma sposobu, aby je usunąć, zamiast zastąpienia ich inną opcją dla tej samej flagi (np. Ustawienie '/ W0 ', aby pozbyć się'/W1'). – Fraser
@Fraser Wah, wydaje mi się to podstawową i prostą cechą. Cóż, ok. Bez powodzenia. W każdym razie dzięki. – quimnuss