5

Ho creato un progetto C++ su Linux e ho raggruppato i file sorgente in molte directory per organizzarmi.Come mantenere la gerarchia delle cartelle di origine su Solution Explorer?

Stavo usando CMake per compilare, con un CMakeFiles.txt su ogni sottodirectory.

srcs 
|--folderA 
| |--Toto.cpp 
| |--Tata.cpp 
| 
|--folderB 
| |--Foo.cpp 
| |--Bar.cpp 
[...] 

Recentemente, ho aperto con Visual Studio 2015, che ha trovato tutti i file sorgente, ma appena messo l'intero elenco sulla cartella "Sorgenti" di Esplora soluzioni.

Source Files 
|--Toto.cpp 
|--Tata.cpp 
|--Foo.cpp 
|--Bar.cpp 

Ho intenzione di avere un numero enorme di file e sarà presto difficile trovarne uno.

C'è un modo per dire esplicitamente di rispettare la gerarchia di cartelle su Solution Explorer?

+0

Quale versione di CMake? –

+0

@JamesAdkison Sto usando l'ultimo, il 3.3.1. – Aracthor

+1

Ho aggiunto un'implementazione di esempio 'assign_source_group' che potresti trovare utile alla mia risposta in [Come impostare i filtri di Visual Studio per la sub directory annidata usando cmake] (http://stackoverflow.com/questions/31422680/how-to-set -Visual-studio-filtri-per-nested-sub-directory-con-cMake/31423421 # 31423421). – Florian

risposta

3

Utilizzare il comando source_group.

source_group (<name> [FILES <src>...] [REGULAR_EXPRESSION <regex>])

Definisce un gruppo in cui le fonti saranno inseriti in file di progetto. Questo ha lo scopo di configurare le schede dei file in Visual Studio. Le opzioni sono:

FILE Qualsiasi file di origine specificato esplicitamente verrà inserito nel gruppo. I percorsi relativi sono interpretati rispetto alla directory sorgente corrente.

REGULAR_EXPRESSION Qualsiasi file di origine il cui nome corrisponde all'espressione regolare verrà inserito nel gruppo.