2012-10-15 12 views
28

Mam makefile dla mojego projektu, a także przekazuję pewne argumenty i na podstawie tego argumentu ustawiam flagę. Mogę to zrobić. ale teraz chcę zrobić to samo za pomocą cmake. Stworzyłem cmakelist.txt, ale nie wiem, jak przekazać argument i sprawdzić wartość argumentu w cmakelist.txt.Przekazywanie argumentu do CMAKE za pomocą wiersza polecenia

próbki mojego makefile:

ifeq "$(FAB)" "po" 
     //setting some flags 
else 
     //setting some iother flag 
endif 

Jaka jest droga do podjęcia argument z wiersza polecenia i ustawić flagi w oparciu o które?

Odpowiedz

46

W pliku CMakeLists.txt utwórz zmienną cache, co zostało udokumentowane tutaj:

SET(FAB "po" CACHE STRING "Some user-specified option") 

Źródło: http://cmake.org/cmake/help/v2.8.8/cmake.html#command:set

Następnie, albo skorzystać z GUI (ccmake lub cmake-gui), aby ustawić zmienna cache, lub określić wartość zmiennej w linii poleceń cmake:

cmake -DFAB:STRING=po 

Źródło: http://cmake.org/cmake/help/v2.8.8/cmake.html#opt:-Dvar:typevalue

Zmodyfikuj zmienną pamięci podręcznej na wartość boolowską, jeśli faktycznie jest to opcja logiczna.

Powiązane problemy