• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
C++ mit CMake: Debug- und Release-Build sauber trennen
#1
Ich möchte ein kleines C++-Projekt so strukturieren, dass Debug-Builds viele Warnungen und Sanitizer nutzen, während Release optimiert bleibt. Gleichzeitig soll es mit Ninja und Visual Studio funktionieren.

Welche CMake-Struktur hat sich dafür bei euch bewährt?
  Reply
#2
Generator Expressions sind dafür praktisch. Warnungen kann man am Target setzen und Debug-spezifische Optionen mit $<$<CONFIGBig Grinebug>:...> ergänzen. So bleibt die Konfiguration bei Single- und Multi-Config-Generatoren nutzbar.
  Reply
#3
Ich würde außerdem Presets einsetzen. Eine CMakePresets.json mit debug, release und sanitizer macht Builds reproduzierbar und verhindert, dass jeder andere Kommandozeilenoptionen verwendet.
  Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)