2017-08-05 8 views
0

CMakeをカスタムコンパイラで使用するモジュールを作成しようとしていますが、私はCMakeDetermineCUSTOMCompiler.cmakeに固執しています。私はモジュールがCMakeのModulesディレクトリの中にインストールされているか、CMAKE_MODULE_PATHで指定された外部directoyのどちらかで動作するようにしたいと思います。cmake_modules_pathのcmake configure_file()パス

それは私が置くことができます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-are-in-cmake/31940031#31940031)。 – Tsyvarev

+0

私はそれが現在の 'CMakeLists.txt'にしか言及していないと思っていましたが、あなたが正しいと思います。ありがとう! – dlasalle

答えて

1

変数CMAKE_CURRENT_LIST_DIRは、現在処理中のファイルの場所を参照します。

このような参照関数またはマクロの使用には、まずcache itが必要です。

関連する問題