summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/plugins/project/vsxmake/getinfo.lua1
-rw-r--r--xmake/scripts/vsxmake/vsproj/Xmake.props1
-rw-r--r--xmake/scripts/vsxmake/vsproj/Xmake.targets1
-rw-r--r--xmake/scripts/vsxmake/vsproj/templates/vcxproj/XmakeConfig(mode,arch)1
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>