diff options
| author | ruki <[email protected]> | 2023-11-18 00:35:53 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2023-11-18 00:35:53 +0800 |
| commit | 76d63abc88586d3e51179773c1112f1eee76a8e8 (patch) | |
| tree | 0e5ce02c245fadc920d71d02ed4151ff284121e5 /xmake/plugins/pack/main.lua | |
| parent | 14f1ed5587ebe19a644f4832c059ff4ec830f6df (diff) | |
improve installdir for xpack
Diffstat (limited to 'xmake/plugins/pack/main.lua')
| -rw-r--r-- | xmake/plugins/pack/main.lua | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/xmake/plugins/pack/main.lua b/xmake/plugins/pack/main.lua index 7a4ab0fbf..e404aba9b 100644 --- a/xmake/plugins/pack/main.lua +++ b/xmake/plugins/pack/main.lua @@ -44,6 +44,15 @@ function _pack_package(package) os.tryrm(package:buildir()) os.mkdir(package:outputdir()) + -- get need formats + local formats_need = option.get("formats") + if formats_need then + formats_need = formats_need:split(",") + if formats_need[1] == "all" then + formats_need = nil + end + end + -- do pack assert(package:formats(), "xpack(%s): formats not found, please use `set_formats()` to set it.", package:name()) local scripts = { @@ -52,11 +61,13 @@ function _pack_package(package) package:script("package_after") } for _, format in package:formats():keys() do - _load_package(package, format) - for i = 1, 3 do - local script = scripts[i] - if script ~= nil then - script(package) + if not formats_need or table.contains(formats_need, format) then + _load_package(package, format) + for i = 1, 3 do + local script = scripts[i] + if script ~= nil then + script(package) + end end end end |
