diff options
| author | ruki <[email protected]> | 2024-05-11 23:23:21 +0800 |
|---|---|---|
| committer | GitHub <[email protected]> | 2024-05-11 23:23:21 +0800 |
| commit | abd7b7fa4544bfe43fad829389e5e602e253631e (patch) | |
| tree | ec58ac2ea82563ee004651a06e27bd66c00cd9f8 | |
| parent | 505e5bfcb12baed4d86d6462d9e5e69494024077 (diff) | |
| parent | f7f1d757066f56e76efd57bb7611b696f90633a1 (diff) | |
Merge pull request #5084 from xmake-io/vsxmake
add forceincludes for vsxmake
4 files changed, 4 insertions, 0 deletions
diff --git a/xmake/plugins/project/vsxmake/getinfo.lua b/xmake/plugins/project/vsxmake/getinfo.lua index af88b51f6..5d52733e5 100644 --- a/xmake/plugins/project/vsxmake/getinfo.lua +++ b/xmake/plugins/project/vsxmake/getinfo.lua @@ -137,6 +137,7 @@ function _make_targetinfo(mode, arch, target) targetinfo.configfiledir = _make_dirs(target:get("configdir")) targetinfo.includedirs = _make_dirs(table.join(_get_values_from_target(target, "includedirs") or {}, _get_values_from_target(target, "sysincludedirs"))) targetinfo.linkdirs = _make_dirs(_get_values_from_target(target, "linkdirs")) + targetinfo.forceincludes = path.joinenv(table.wrap(_get_values_from_target(target, "forceincludes"))) targetinfo.sourcedirs = _make_dirs(_get_values_from_target(target, "values.project.vsxmake.sourcedirs")) targetinfo.pcheaderfile = target:pcheaderfile("cxx") or target:pcheaderfile("c") diff --git a/xmake/scripts/vsxmake/vsproj/Xmake.props b/xmake/scripts/vsxmake/vsproj/Xmake.props index dd50e39e4..301a13fd5 100644 --- a/xmake/scripts/vsxmake/vsproj/Xmake.props +++ b/xmake/scripts/vsxmake/vsproj/Xmake.props @@ -104,6 +104,7 @@ <ClCompile> <PreprocessorDefinitions>%(PreprocessorDefinitions);$(XmakeDefines)</PreprocessorDefinitions> <AdditionalIncludeDirectories>$(XmakeIncludeDirs)</AdditionalIncludeDirectories> + <ForcedIncludeFiles>$(XmakeForceIncludes)</ForcedIncludeFiles> <AdditionalOptions>%(AdditionalOptions) $(XmakeCFlags) $(XmakeCXFlags) $(XmakeCXXFlags)</AdditionalOptions> <LanguageStandard Condition="'%(LanguageStandard)' == '' And $(XmakeLanguages.Contains('cxx11'))">stdcpp11</LanguageStandard> <LanguageStandard Condition="'%(LanguageStandard)' == '' And $(XmakeLanguages.Contains('cxx14'))">stdcpp14</LanguageStandard> diff --git a/xmake/scripts/vsxmake/vsproj/Xmake.targets b/xmake/scripts/vsxmake/vsproj/Xmake.targets index b7db71d2f..1dddc7728 100644 --- a/xmake/scripts/vsxmake/vsproj/Xmake.targets +++ b/xmake/scripts/vsxmake/vsproj/Xmake.targets @@ -142,6 +142,7 @@ MSBuild Properties: XmakeLanguages: $(XmakeLanguages) XmakeSubSystem: $(XmakeSubSystem) XmakeIncludeDirs: $(XmakeIncludeDirs) + XmakeForceIncludes: $(XmakeForceIncludes) XmakeLinkDirs: $(XmakeLinkDirs) XmakeSourceDirs: $(XmakeSourceDirs) XmakePrecompiledHeader: $(XmakePrecompiledHeader) diff --git a/xmake/scripts/vsxmake/vsproj/templates/vcxproj/XmakeConfig(mode,arch) b/xmake/scripts/vsxmake/vsproj/templates/vcxproj/XmakeConfig(mode,arch) index 5fa6d0f0f..ebbeb00f7 100644 --- a/xmake/scripts/vsxmake/vsproj/templates/vcxproj/XmakeConfig(mode,arch) +++ b/xmake/scripts/vsxmake/vsproj/templates/vcxproj/XmakeConfig(mode,arch) @@ -16,6 +16,7 @@ <XmakeRunArgs>#runargs#</XmakeRunArgs> <XmakeConfigFlags>#configflags#</XmakeConfigFlags> <XmakeIncludeDirs>#includedirs#</XmakeIncludeDirs> + <XmakeForceIncludes>#forceincludes#</XmakeForceIncludes> <XmakeLinkDirs>#linkdirs#</XmakeLinkDirs> <XmakeSourceDirs>#sourcedirs#</XmakeSourceDirs> <XmakePrecompiledHeader>#pcheaderfile#</XmakePrecompiledHeader> |
