2013-02-28 9 views
10

domanda principale: Esiste una configurazione per cmake, per mostrare o ignorare gli avvisi/errori del compilatore solo da una determinata directory?CMake - ignora/mostra solo errori/avvisi di determinate directory

soluzione alternativa: Come si può attivare questo in QtCreator?

sfondo/motivazione: Sto lavorando su un grande CMake-progetto e vuole mettere a fuoco gli avvisi e gli errori solo dal mio sottoprogetto. Sto lavorando con QtCreator e mi infastidisce cercare i "miei" errori/avvertimenti sotto una pila di stranieri.

risposta

14

È possibile impostare le opzioni di avviso del compilatore in CMake almeno per certi bersaglio o di alcuni file .

# For target 
set_target_properties(your_project_name PROPERTIES COMPILE_FLAGS "...") 

# For files 
set_source_files_properties(
    ${list_of_your_files} 
    PROPERTIES 
    COMPILE_FLAGS "..." 
) 

E 'anche possibile impostare le opzioni per-cartella base separando il progetto come sottoprogetto, aggiungerlo utilizzando add_subdirectory(your_project) e nel progetto CMakeLists.txt utilizzare add_definitions(...).

Da documentazione CMake:

add_definitions aggiunge flag alla riga di comando del compilatore per sorgenti nella directory corrente e al di sotto.