summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorruki <[email protected]>2023-08-21 23:47:55 +0800
committerruki <[email protected]>2023-08-21 23:47:55 +0800
commit9abdbc065e073bc8a6e094be753755a3cead9add (patch)
tree44d0be1a1ae592f732efb05d22bb3555bb0309f4
parentd4371ecb858b844fc5b9b16e7d49f44f3b11fd18 (diff)
improve include filter
-rw-r--r--xmake/plugins/project/vstudio/impl/vs201x_vcxproj_filters.lua16
1 files changed, 7 insertions, 9 deletions
diff --git a/xmake/plugins/project/vstudio/impl/vs201x_vcxproj_filters.lua b/xmake/plugins/project/vstudio/impl/vs201x_vcxproj_filters.lua
index a6e11b6a4..caed16b2a 100644
--- a/xmake/plugins/project/vstudio/impl/vs201x_vcxproj_filters.lua
+++ b/xmake/plugins/project/vstudio/impl/vs201x_vcxproj_filters.lua
@@ -177,15 +177,13 @@ function _make_sources(filtersfile, vsinfo, target, vcxprojdir)
filtersfile:leave("</ItemGroup>")
end
--- make headers
-function _make_headers(filtersfile, vsinfo, target, vcxprojdir)
-
- -- and headers
+-- make includes
+function _make_includes(filtersfile, vsinfo, target, vcxprojdir)
filtersfile:enter("<ItemGroup>")
- for _, headerfile in ipairs(target.headerfiles) do
- local filter = _make_filter(headerfile, target, vcxprojdir)
+ for _, includefile in ipairs(table.join(target.headerfiles or {}, target.extrafiles)) do
+ local filter = _make_filter(includefile, target, vcxprojdir)
if filter then
- filtersfile:enter("<ClInclude Include=\"%s\">", path.relative(path.absolute(headerfile), vcxprojdir))
+ filtersfile:enter("<ClInclude Include=\"%s\">", path.relative(path.absolute(includefile), vcxprojdir))
filtersfile:print("<Filter>%s</Filter>", filter)
filtersfile:leave("</ClInclude>")
end
@@ -218,8 +216,8 @@ function make(vsinfo, target)
-- make sources
_make_sources(filtersfile, vsinfo, target, vcxprojdir)
- -- make headers
- _make_headers(filtersfile, vsinfo, target, vcxprojdir)
+ -- make includes
+ _make_includes(filtersfile, vsinfo, target, vcxprojdir)
-- make tailer
_make_tailer(filtersfile, vsinfo)