summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJérôme Leclercq <[email protected]>2022-12-22 11:12:46 +0100
committerGitHub <[email protected]>2022-12-22 11:12:46 +0100
commit7e602304514c06802830428be6b580bf8df2834a (patch)
tree95736c55cfd989ef71818ffcd54d372675dafc39
parent6759878d6d0ada5a44c1da8bf6d3c9d9ee58ca8a (diff)
Update extract.lua
-rw-r--r--xmake/modules/utils/archive/extract.lua5
1 files changed, 3 insertions, 2 deletions
diff --git a/xmake/modules/utils/archive/extract.lua b/xmake/modules/utils/archive/extract.lua
index 7ae71dcda..8cd30b958 100644
--- a/xmake/modules/utils/archive/extract.lua
+++ b/xmake/modules/utils/archive/extract.lua
@@ -399,7 +399,7 @@ function main(archivefile, outputdir, opt)
-- tar/windows can not extract .bz2 ...
extractors =
{
- [".zip"] = {_extract_using_7z, _extract_using_unzip}
+ [".zip"] = {_extract_using_7z, _extract_using_unzip, _extract_using_tar}
, [".7z"] = {_extract_using_7z}
, [".gz"] = {_extract_using_7z, _extract_using_gzip, _extract_using_tar}
, [".xz"] = {_extract_using_7z, _extract_using_xz, _extract_using_tar}
@@ -414,7 +414,8 @@ function main(archivefile, outputdir, opt)
else
extractors =
{
- [".zip"] = {_extract_using_unzip, _extract_using_7z}
+ -- tar supports .zip on macOS but does not on Linux
+ [".zip"] = is_host("macosx") and {_extract_using_unzip, _extract_using_tar, _extract_using_7z} or {_extract_using_unzip, _extract_using_7z},
, [".7z"] = {_extract_using_7z}
, [".gz"] = {_extract_using_gzip, _extract_using_tar, _extract_using_7z}
, [".xz"] = {_extract_using_xz, _extract_using_tar, _extract_using_7z}