2017-08-05 47 views
0

我試圖編寫模塊來使用CMake與自定義編譯器,但我卡在CMakeDetermineCUSTOMCompiler.cmake。我希望這些模塊可以安裝在CMake的Modules目錄下,或者是由CMAKE_MODULE_PATH指定的外部directoy。cmake configure_file()在cmake_modules_path中的路徑

,使其工作在安裝CMake的目錄,我可以把:

configure_file(${CMAKE_ROOT}/Modules/CMakeCUSTOMCompiler.cmake.in 

但後來它不與CMAKE_MODULE_PATH工作。有什麼地方可以參考當前模塊的位置?或搜索CMAKE_MODULE_PATH中指定的位置?

+1

看起來像變量[CMAKE_CURRENT_LIST_DIR](https://cmake.org/cmake/help/v3.7/variable/CMAKE_CURRENT_LIST_DIR.html)是你所尋找的:它指的是當前處理文件的位置。注意,爲了在函數或宏中使用這樣的引用,您首先需要[緩存](https://stackoverflow.com/questions/31939360/can-we-know-the-directory-where-the-macro-or -functions-被定位合的cmake/31940031#31940031)。 – Tsyvarev

+0

我曾經認爲它只提到當前的'CMakeLists.txt',但你說得對,它工作。謝謝! – dlasalle

回答