summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/actions/install.lua
diff options
context:
space:
mode:
authorruki <[email protected]>2026-01-08 22:53:42 +0800
committerruki <[email protected]>2026-01-09 17:59:09 +0800
commit90b6cc257a135cdeafbc542d2ec368250f0ec69d (patch)
treeb5808ce3c2adbca979fff6d913a6a3f3c14d4627 /xmake/modules/private/action/require/impl/actions/install.lua
parent6265a6fcec0471720bf399374ca1078451036c43 (diff)
install package from schemes
Diffstat (limited to 'xmake/modules/private/action/require/impl/actions/install.lua')
-rw-r--r--xmake/modules/private/action/require/impl/actions/install.lua7
1 files changed, 5 insertions, 2 deletions
diff --git a/xmake/modules/private/action/require/impl/actions/install.lua b/xmake/modules/private/action/require/impl/actions/install.lua
index d7310149a..157424305 100644
--- a/xmake/modules/private/action/require/impl/actions/install.lua
+++ b/xmake/modules/private/action/require/impl/actions/install.lua
@@ -555,8 +555,11 @@ function main(package)
end
os.tryrm(installdir)
- -- is precompiled package? we can fallback to source package and try reinstall it again
- if package:is_precompiled() then
+ -- is not last scheme? we can fallback to next scheme and try reinstall it again
+ local current_scheme = package:current_scheme()
+ local schemes_orderlist = package:schemes_orderlist()
+ local last_scheme = schemes_orderlist[#schemes_orderlist]
+ if current_scheme ~= last_scheme then
ok = false
else
-- failed