diff options
| author | ruki <[email protected]> | 2021-02-12 22:47:46 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2021-02-12 22:47:46 +0800 |
| commit | b29d4891a97dda8bc7a8b805651a77c0bb7698c0 (patch) | |
| tree | a4bc530c7c7376bee9d44ae0d84351c0ad6360e2 /xmake/core/project/requireinfo.lua | |
| parent | c470ec0850309c75e089c3722376316bbe20bbd8 (diff) | |
rename project.requireinfo to package
Diffstat (limited to 'xmake/core/project/requireinfo.lua')
| -rw-r--r-- | xmake/core/project/requireinfo.lua | 190 |
1 files changed, 0 insertions, 190 deletions
diff --git a/xmake/core/project/requireinfo.lua b/xmake/core/project/requireinfo.lua deleted file mode 100644 index 218f346ff..000000000 --- a/xmake/core/project/requireinfo.lua +++ /dev/null @@ -1,190 +0,0 @@ ---!A cross-platform build utility based on Lua --- --- Licensed under the Apache License, Version 2.0 (the "License"); --- you may not use this file except in compliance with the License. --- You may obtain a copy of the License at --- --- http://www.apache.org/licenses/LICENSE-2.0 --- --- Unless required by applicable law or agreed to in writing, software --- distributed under the License is distributed on an "AS IS" BASIS, --- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. --- See the License for the specific language governing permissions and --- limitations under the License. --- --- Copyright (C) 2015-present, TBOOX Open Source Group. --- --- @author ruki --- @file requireinfo.lua --- - --- define module -local requireinfo = requireinfo or {} - --- load modules -local io = require("base/io") -local os = require("base/os") -local path = require("base/path") -local table = require("base/table") -local utils = require("base/utils") -local config = require("project/config") -local semver = require("base/semver") -local sandbox = require("sandbox/sandbox") -local localcache = require("cache/localcache") - --- get cache -function requireinfo._cache() - return localcache.cache("package") -end - --- save the requires info to the cache -function requireinfo:save() - requireinfo._cache():set(self:name(), self._INFO) - requireinfo._cache():save() -end - --- clear the requireinfo -function requireinfo:clear() - local info = self._INFO - if info then - for k, v in pairs(info) do - if not k:startswith("__") then - info[k] = nil - end - end - end -end - --- dump this requireinfo -function requireinfo:dump() - utils.dump(self._INFO) -end - --- get the require info -function requireinfo:get(infoname) - return self._INFO[infoname] -end - --- get the require name -function requireinfo:name() - return self._NAME -end - --- get the package version -function requireinfo:version() - - -- get it from cache first - if self._VERSION ~= nil then - return self._VERSION - end - - -- get version - local version = nil - local verstr = self:get("version") - if verstr then - version = semver.new(verstr) - end - self._VERSION = version or false - return version -end - --- get the package license -function requireinfo:license() - return self:get("license") -end - --- has static libraries? -function requireinfo:has_static() - return self:get("static") -end - --- has shared libraries? -function requireinfo:has_shared() - return self:get("shared") -end - --- get the require string -function requireinfo:requirestr() - return self:get("__requirestr") -end - --- get the install directory -function requireinfo:installdir() - return self:get("__installdir") -end - --- get the extra info from the given name -function requireinfo:extra(name) - local extrainfo = self:extrainfo() - if extrainfo then - return extrainfo[name] - end -end - --- get the extra info -function requireinfo:extrainfo() - return self:get("__extrainfo") -end - --- set the value to the requires info -function requireinfo:set(name_or_info, ...) - if type(name_or_info) == "string" then - local args = ... - if args ~= nil then - self._INFO[name_or_info] = table.unwrap(table.unique(table.join(...))) - else - self._INFO[name_or_info] = nil - end - elseif table.is_dictionary(name_or_info) then - for name, info in pairs(table.join(name_or_info, ...)) do - self:set(name, info) - end - end -end - --- add the value to the requires info -function requireinfo:add(name_or_info, ...) - if type(name_or_info) == "string" then - local info = table.wrap(self._INFO[name_or_info]) - self._INFO[name_or_info] = table.unwrap(table.unique(table.join(info, ...))) - elseif table.is_dictionary(name_or_info) then - for name, info in pairs(table.join(name_or_info, ...)) do - self:add(name, info) - end - end -end - --- this require info is enabled? -function requireinfo:enabled() - return self:get("__enabled") -end - --- enable or disable this require info --- --- @param enabled enable it? --- -function requireinfo:enable(enabled) - self:set("__enabled", enabled) -end - --- load the requires info from the cache -function requireinfo.load(name) - - -- check - assert(name) - - -- get info - local info = requireinfo._cache():get(name) - if info == nil then - return - end - - -- init requireinfo instance - local instance = table.inherit(requireinfo) - instance._INFO = info - instance._NAME = name - return instance -end - --- return module -return requireinfo |
