Sto usando CMake per un progetto e googletest per i miei casi di test. Guardando in giro per Internet, sembra essere una pratica comune copiare semplicemente la fonte googletest in una sottocartella del repository e includerla con "add_subdirectory (googletest)". L'ho fatto.CPack: Escludere i comandi INSTALL dalla sottodirectory (directory googletest)
Ora sto usando CPack per generare pacchetti debian per il mio progetto. Sfortunatamente, i pacchetti generati da CPack installano googletest insieme al mio progetto. Questo ovviamente non è quello che voglio.
Guardando nella directory googletest, ho trovato alcuni comandi di installazione di cmake lì, quindi è chiaro, perché succede. La domanda è ora - come posso evitarlo? Non mi piace modificare i file CMakeLists.txt da googletest, perché dovrei ricordare di applicare nuovamente le mie modifiche su un aggiornamento. C'è un altro modo per disabilitare queste installazioni in CPack?
La seconda cosa sembra disabilitare anche i miei comandi di installazione, sebbene siano definiti in una directory diversa (non secondaria). Per quale ambito è stata sovrascritta la funzione di installazione? Posso sovrascriverlo solo per la directory corrente (comprese le sottodirectory)? – Heinzi
'Posso sovrascriverlo solo per la directory corrente (comprese le sottodirectory)?' - Esattamente la definizione della funzione dovrebbe funzionare. Lo metterò alla prova più tardi. – Tsyvarev
Bene, in realtà la definizione della funzione ha un ambito globale.Ho aggiunto il codice per ripristinare il comportamento di 'install()' nel post di risposta. – Tsyvarev