FindSWIG¶
尋找簡化封裝和介面產生器(SWIG)可執行檔。
此模組會尋找已安裝的 SWIG 並判斷其版本。
新增於版本 3.18:如果將 COMPONENTS
或 OPTIONAL_COMPONENTS
引數提供給 find_package()
命令,它也會判斷支援的目標語言。
新增於版本 3.19:當要求版本時,它可以指定為簡單值或範圍。如需版本範圍用法和功能的詳細說明,請參閱 find_package()
命令。
此模組定義以下變數
SWIG_FOUND
是否在系統上找到 SWIG 和任何必要組件。
SWIG_EXECUTABLE
SWIG 可執行檔的路徑。
SWIG_DIR
已安裝 SWIG 的
Lib
目錄的路徑(swig -swiglib
的結果)。SWIG_VERSION
SWIG 可執行檔版本(
swig -version
的結果)。SWIG_<lang>_FOUND
如果請求
COMPONENTS
或OPTIONAL_COMPONENTS
,則每個可用的目標語言<lang>
(小寫) 將設定為 TRUE。
提供給 find_package
的任何 COMPONENTS
都應是提供給 swig_add_library
的 LANGUAGE 引數的支援目標語言名稱,例如 python
或 perl5
。語言名稱必須為小寫。
所有資訊都是從 SWIG_EXECUTABLE
收集的,因此可以透過設定 SWIG_EXECUTABLE
從命令列變更要尋找的版本。
範例用法,需要 SWIG 4.0 或更高版本以及 Python 語言支援,並具有可選的 Fortran 支援
find_package(SWIG 4.0 COMPONENTS python OPTIONAL_COMPONENTS fortran)
if(SWIG_FOUND)
message("SWIG found: ${SWIG_EXECUTABLE}")
if(NOT SWIG_fortran_FOUND)
message(WARNING "SWIG Fortran bindings cannot be generated")
endif()
endif()