From 047625ac3c6cbe1d69cb41b0daaf7bc333d917ed Mon Sep 17 00:00:00 2001 From: ruki Date: Wed, 5 May 2021 00:35:04 +0800 Subject: fix toplevel for package --- xmake/core/package/package.lua | 3 ++- xmake/modules/private/action/require/impl/package.lua | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/xmake/core/package/package.lua b/xmake/core/package/package.lua index 8ef9e5884..b96db2849 100644 --- a/xmake/core/package/package.lua +++ b/xmake/core/package/package.lua @@ -359,7 +359,8 @@ end -- is top level? user top requires in xmake.lua function _instance:is_toplevel() - return not self:parents() + local requireinfo = self:requireinfo() + return requireinfo and requireinfo.is_toplevel end -- is the system package? diff --git a/xmake/modules/private/action/require/impl/package.lua b/xmake/modules/private/action/require/impl/package.lua index bbf5bc913..8b29a83d7 100644 --- a/xmake/modules/private/action/require/impl/package.lua +++ b/xmake/modules/private/action/require/impl/package.lua @@ -352,6 +352,7 @@ function _init_requireinfo(requireinfo, package, opt) -- pass root toolchains to top library package requireinfo.configs = requireinfo.configs or {} if opt.is_toplevel then + requireinfo.is_toplevel = true if package:is_cross() and package:is_library() then -- TODO get extra configs of toolchain requireinfo.configs.toolchains = requireinfo.configs.toolchains or project.get("target.toolchains") or get_config("toolchain") -- cgit v1.3.1