Skip to content

Commit

Permalink
improve group
Browse files Browse the repository at this point in the history
  • Loading branch information
waruqi committed Nov 7, 2024
1 parent 8693657 commit 8b871d5
Showing 1 changed file with 12 additions and 5 deletions.
17 changes: 12 additions & 5 deletions xmake/plugins/project/vsxmake/getinfo.lua
Original file line number Diff line number Diff line change
Expand Up @@ -301,18 +301,25 @@ function _make_vsinfo_groups()
for targetname, target in table.orderpairs(project.targets()) do
local group_path = target:get("group")
if group_path and #(group_path:trim()) > 0 then
group_path = path.normalize(group_path)
local group_name = path.filename(group_path)
local group_names = path.split(group_path)
local group_current_path
for idx, name in ipairs(group_names) do
local group = groups["group." .. name] or {}
group_current_path = group_current_path and path.join(group_current_path, name) or name
local group = groups["group." .. group_current_path] or {}
group.group = name
group.group_id = hash.uuid4("group." .. name)
group.group_id = hash.uuid4("group." .. group_current_path)
if idx > 1 then
group_deps["group_dep." .. name] = {current_id = group.group_id, parent_id = hash.uuid4("group." .. group_names[idx - 1])}
group_deps["group_dep." .. group_current_path] = {
current_id = group.group_id,
parent_id = hash.uuid4("group." .. path.directory(group_current_path))}
end
groups["group." .. name] = group
groups["group." .. group_current_path] = group
end
group_deps["group_dep.target." .. targetname] = {current_id = hash.uuid4(targetname), parent_id = groups["group." .. group_name].group_id}
group_deps["group_dep.target." .. targetname] = {
current_id = hash.uuid4(targetname),
parent_id = groups["group." .. group_path].group_id}
end
end
return groups, group_deps
Expand Down

0 comments on commit 8b871d5

Please sign in to comment.