ターゲット属性の修飾タグ適用targetincludedirectories:ターゲットにインクルードディレクトリを設定します。targetlinklibraries:ターゲットにライブラリの依存関係とリンクオプションを追加します。targetcompiledefinitions:ターゲットにプリプロセッサ定義を追加します。targetcompileoptions:ターゲットにコンパイルオプションを追加します。target_sources:ターゲットにソースファイルを追加します。add_library:ライブラリターゲットを定義するときに INTERFACE を使用できますが、これはターゲット属性の修飾タグではなく、単に名前が同じだけです。 使用できるタグPRIVATE:属性は現在のターゲット内でのみ使用されます。PUBLIC:属性は現在のターゲットとその依存ターゲットの両方で使用されます。INTERFACE:属性は依存ターゲット内でのみ使用され、現在のターゲット内では使用されません。 静的・動的ライブラリの修飾タグ適用add_library:ライブラリターゲットを定義します。 使用できるタグSTATIC:静的ライブラリを作成します。静的ライブラリはリンク時にすべてのコードが実行ファイルに組み込まれます。SHARED:共有ライブラリを作成します。共有ライブラリは実行時に動的にロードされます。MODULE:モジュールライブラリを作成します。モジュールライブラリは通常、プラグインシステムで使用され、他のターゲットにリンクされません。INTERFACE:インターフェイスライブラリを作成します。インターフェイスライブラリには実際の実装コードが含まれず、インクルードディレクトリやコンパイルオプションなどのインターフェイス属性を伝播するために使用されます。
CMake の各種修飾タグ
ターゲット属性の修飾タグ
静的・動的ライブラリの修飾タグ