日々鍛錬

日本で一番?わかり易い??システムの落書き帳???を目指し????,日々鍛錬中な元SEさん主婦によるデベロッパとユーザと自分のための雑記帳

VTKのCMakeLists.txtを読み解く

今回は時間の関係上,VTKに特化したCMakeLists.txtについて記載する.

以下に一般的なVTKのCmakeLists.txtを示す.

cmake_minimum_required(VERSION 2.8)
 
PROJECT(VTKPolydataSingleObj)
 
find_package(VTK REQUIRED)
include(${VTK_USE_FILE})
 
add_executable(VTKPolydataSingleObj MACOSX_BUNDLE VTKPolydataSingleObj)
 
if(VTK_LIBRARIES)
  target_link_libraries(VTKPolydataSingleObj ${VTK_LIBRARIES})
else()
  target_link_libraries(VTKPolydataSingleObj vtkHybrid)
endif()

1行ずつ読んでいく

cmake_minimum_required(VERSION 2.8)

これは,CMakeを実行する際に,最低限守らないといけない,CmakeのVersionを示してます.
よって,このシステムは,CMakeのVersionは最低,2.8以上でなければなりません.

PROJECT(VTKPolydataSingleObj)

このシステムのプロジェクト名を指定します.
Makeファイルでいうところ,各実行系の名前を指定する所,ということでしょう.
ここでは,プロジェクト名をVTKPolydataSingleObjとしているようです.


さて,いよいよ,こちらからが本格的なVTK情報読み込みデス.

find_package(VTK REQUIRED)

VTKを動作させるために,必要なLink先やコードの位置を探している所デス.
位置などを読み込んだ後に,見つけたライブラリのパスなどを通します.
ここで,複数のライブラリを組み合わせます.

include(${VTK_USE_FILE})

VTK を動作させるためのファイル一式をプロジェクトに取り込む命令文

add_executable(VTKPolydataSingleObj MACOSX_BUNDLE VTKPolydataSingleObj)
<<
VTKを実行させる,実行系ファイルの名前の指定です.
第1引数がMain関数のコード名,第2は関係なし,第3引数が実行系ファイルの名前となる.

if(VTK_LIBRARIES)
target_link_libraries(VTKPolydataSingleObj ${VTK_LIBRARIES})
else()
target_link_libraries(VTKPolydataSingleObj vtkHybrid)
endif()