summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xmake/modules/utils/archive/extract.lua8
1 files changed, 7 insertions, 1 deletions
diff --git a/xmake/modules/utils/archive/extract.lua b/xmake/modules/utils/archive/extract.lua
index 6b2f5a69e..9e4908e8d 100644
--- a/xmake/modules/utils/archive/extract.lua
+++ b/xmake/modules/utils/archive/extract.lua
@@ -46,7 +46,13 @@ function _extract_using_tar(archivefile, outputdir, extension, opt)
end
-- init argv
- local argv = {option.get("verbose") and "-xvf" or "-xf", archivefile}
+ local argv = {}
+ if is_host("windows") then
+ -- force "x:\\xx" as local file
+ table.insert(argv, "--force-local")
+ end
+ table.insert(argv, option.get("verbose") and "-xvf" or "-xf")
+ table.insert(archivefile)
-- ensure output directory
if not os.isdir(outputdir) then