CMakeでジェネレータを判定して分岐する
GCC で MinGW と Raspberry Pi 両方で動くプログラムを書いていて、リンクするライブラリは切り替えたいという状況。
色々調べて何とかなったので書いておきます。もっと良い判定方法があるかもしれないですけど、とりあえず。
CMakeLists.txt : ジェネレータの名前に MinGW
が含まれていたら bar もリンク
要点
- if(条件式) ~ elseif() ~ else() ~ endif() が使える。
- elseif, else, endif の条件式は無視されるので空でよい。
- MATCHES は正規表現のマッチングを行う演算子。
参考
使える演算子がまとまっていました(↓)
いやしかし、CMake。
便利なんだけど複雑で情報量が少ないですね。
やりたいことの書き方を調べるのに結構苦労します。
Introduction to CMake (Software Tool Series Book 1) (English Edition)
posted with amazlet at 15.05.26
(2014-05-16)
Mastering Cmake
posted with amazlet at 15.05.26
Ken Martin Bill Hoffman
Kitware, Incorporated
売り上げランキング: 82,100
Kitware, Incorporated
売り上げランキング: 82,100