組み込み関数は、install(TARGETS ...)
実行可能ターゲットとは別の場所にライブラリ ターゲットをインストールします。同様のことを実行したいと思います。ターゲット名のリストが与えられたら、その中のすべてのライブラリ ターゲットをリスト変数に追加し、すべてのランタイム ターゲットを別の変数に追加します。
CMake のデフォルトのターゲット プロパティのリストは見つかりませんでしたが、この種の区別に使用できるプロパティを追加するadd_library()
と思います。add_executable()
特定のターゲットがライブラリか実行可能ファイルか (あるいは他の何かか) を判断するにはどうすればよいでしょうか?
ベストアンサー1
文書によると、タイププロパティは、標準の CMake ターゲット タイプを区別するために使用できます。
STATIC_LIBRARY、MODULE_LIBRARY、SHARED_LIBRARY、EXECUTABLE、または内部ターゲット タイプのいずれかになります。
例:
get_target_property(target_type <target> TYPE)
if (target_type STREQUAL "EXECUTABLE")
# Process executable target
endif ()