私はC++ライブラリ(ヘッダーのセット、インポートライブラリおよびDLL)を構築しています。このライブラリを使いたい開発者にとって、できるだけ簡単に使えるようにしたいと思います。特に、このライブラリの利用者が、プロジェクトのすべての異なる構成(Debug|Releaseおよびx86/x64 / ARM)に対して、ヘッダーパス、ライブラリパス、およびリンクライブラリを手動で変更することを心配する必要はありません。プロパティシートを使用してこれを実行できることを知っています。この目的のために6つの異なるプロパティシートを作成しました(構成ごとに1つ)。各シートは次のようになります(x86 | Debugバージョンのみをリストし、マクロINCLUDEPATHおよびLIBPATHが正しく定義されていると想定します)。
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<_PropertySheetDisplayName>MyCPPLib, 1.0</_PropertySheetDisplayName>
</PropertyGroup>
<ItemDefinitionGroup>
<ClCompile>
<AdditionalIncludeDirectories>$INCLUDEPATH;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>$(AdditionalLibraryDirectories);$LIBPATH\x86\Debug</AdditionalLibraryDirectories>
<AdditionalDependencies>MyCPPLib.lib;$(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
</Project>
ユーザーのアクティブな構成に基づいて、6つの構成すべてを処理できる単一のpropsファイルを作成できるかどうかを知りたいですか?そのファイルはどのように見えますか?