2016-01-06 18 views
5

Quindi guardando attraverso la nuova release di GLM 0.9.7, non vedo un file FindGLM.cmake da nessuna parte, usato per includere facilmente GLM in CMAKE. Ho sempre potuto utilizzare una vecchia versione di esso trovato online, ma i seguenti commit mi aveva perplesso:FindGLM.cmake non in glm 0.9.7, è un modo deprecato per trovare le librerie in CMAKE?

https://github.com/g-truc/glm/commit/62a7daddcf082f754000fc5e42d7bcdf93c895f7

Commit messaggio viene "rimosso FindGLM obsoleti". Quindi, lo sviluppatore l'ha semplicemente scaricato o ci sono in effetti un nuovo modo per trovare le librerie in CMAKE?

risposta

5

Sì, i moduli di ricerca CMake (file FindXyz.cmake) sono obsoleti a favore dei file di Config pacchetto (generalmente denominati XyzConfig.cmake). La filosofia originale è che i moduli di ricerca vengono spediti e gestiti da CMake, mentre i file di configurazione dei pacchetti vengono spediti e gestiti dal pacchetto che intendono trovare.

Il comando di CMake find_package ha in realtà due modalità: Modalità modulo (legacy, utilizzando i moduli Trova) e modalità Config (preferita, utilizzando i file Config pacchetto).

Per il client che utilizza il pacchetto, è necessario modificare poco (a meno che non si desideri una maggiore personalizzazione, offerta dalla modalità Config di find_package).

Si noti che il commit a cui si è collegati non solo elimina FindGLM.cmake, ma aggiunge anche un file glmConfig.cmake.

+0

Grazie! È passato molto tempo da quando ho usato cmake, cercherò la nuova documentazione. – Sheph