summaryrefslogtreecommitdiff
path: root/xmake/modules/private/action/require/impl/actions/install.lua
diff options
context:
space:
mode:
Diffstat (limited to 'xmake/modules/private/action/require/impl/actions/install.lua')
-rw-r--r--xmake/modules/private/action/require/impl/actions/install.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/xmake/modules/private/action/require/impl/actions/install.lua b/xmake/modules/private/action/require/impl/actions/install.lua
index 6e451b891..348986239 100644
--- a/xmake/modules/private/action/require/impl/actions/install.lua
+++ b/xmake/modules/private/action/require/impl/actions/install.lua
@@ -238,8 +238,9 @@ function main(package)
oldir = os.cd(sourcedir)
elseif #package:urls() > 0 then
-- only one root directory? skip it
+ local anchorfile = path.join(workdir, "source", "__sourceroot_anchor__.txt")
local filedirs = os.filedirs(path.join(workdir, "source", "*"))
- if #filedirs == 1 and os.isdir(filedirs[1]) then
+ if not os.isfile(anchorfile) and #filedirs == 1 and os.isdir(filedirs[1]) then
oldir = os.cd(filedirs[1])
else
oldir = os.cd(path.join(workdir, "source"))