2015年7月24日金曜日

cmakeで依存ライブラリーのtarget名が被ってしまう場合(CMP0002)の対処方法

すべて自分で管理しているcmakeプロジェクトでtarget名が被る事はないし、あっても簡単に対処できます。

ところが、 cmake のプロジェクトで外部依存ライブラリーのcmakeのプロジェクトをadd_subdirecotryで複数取り込んでいる場合にtarget名の重複が発生する事態が発生しました。さてどうしましょう。

こたえ:

set_property(GLOBAL PROPERTY ALLOW_DUPLICATE_CUSTOM_TARGETS ON)

この問題、具体的には c-blosc と glfw を add_subdirectory すると uninstall ターゲットが被るなどの状況で発生します。

0 件のコメント:

コメントを投稿