for _,sourcename in ipairs(sources) do
local src = source.sources[sourcename]
- for licencename in src:get_licences():iter() do
+ for licencename in src:licences():iter() do
if not seen[licencename] then
table.insert(licences, licencename)
seen[licencename] = true
return self._licences or false
end
---- Set licence array.
--- Obsolete interface.
--- @param licences String list of licence names (sl).
-function source.basic_source:set_licences(licences)
- assert(type(licences) == "table" and licences.class.name == "sl")
- self._licences = licences:copy()
-end
-
---- Get licence array.
--- Obsolete interface.
--- Must be set before calling get_licences(). Note that this returns all
--- licences used in a source. Some sources may have more detailed licensing
--- information which can be accessed by other means.
--- @return String list of licence names (sl).
-function source.basic_source:get_licences()
- assert(type(self._licences) == "table")
- return self._licences:copy()
-end
-
--- Set env object.
-- @param env Env object.
function source.basic_source:set_env(env)
for sourcename in cp_sources:iter() do
local src = source.sources[sourcename]
- cp_licences:insert_sl(src:get_licences())
+ cp_licences:insert_sl(src:licences())
end
-- project/proj/init/<files>
function cvs.cvs_source:sourceid(sourceset)
assert(type(sourceset) == "string" and #sourceset > 0)
- local rc, re, hc, lid, licences
+ local rc, re, hc, lid
if self._sourceids[sourceset] then
return self._sourceids[sourceset]
hash.hash_append(hc, self._name)
hash.hash_append(hc, self._type)
hash.hash_append(hc, self._env:envid())
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
function cvs.cvs_source:display()
- local licences
local d = {}
self:sourceid("tag")
table.insert(d, string.format("module = %s", self._module))
table.insert(d, string.format("working = %s", self:get_working()))
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
table.insert(d, string.format("licence = %s", licencename))
end
-- write licences
local destdir = string.format("%s/licences", directory)
local fname = string.format("%s/%s.licences", destdir, archive)
- local licenses = src:get_licences()
- local licence_list = licenses:concat("\n").."\n"
+ local licence_list = src:licences():concat("\n").."\n"
rc, re = e2lib.mkdir_recursive(destdir)
if not rc then
assert(type(sourceset) == "string" and #sourceset > 0,
"sourceset arg invalid")
- local rc, re, id, hc, licences
+ local rc, re, id, hc
if self._sourceids[sourceset] then
return self._sourceids[sourceset]
hash.hash_append(hc, self._type)
hash.hash_append(hc, self._env:envid())
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
local lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
function git.git_source:display()
- local rev_tag, rev_branch, licences
+ local rev_tag, rev_branch
-- try to calculate the sourceid, but do not care if it fails.
-- working copy might be unavailable
table.insert(d, string.format("location = %s", self._location))
table.insert(d, string.format("working = %s", self:get_working()))
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
table.insert(d, string.format("licence = %s", licencename))
end
-- write licences
local destdir = e2lib.join(directory, "licences")
local fname = string.format("%s/%s.licences", destdir, archive)
- local licences = src:get_licences()
- local licence_list = licences:concat("\n") .. "\n"
+ local licence_list = src:licences():concat("\n") .. "\n"
rc, re = e2lib.mkdir_recursive(destdir)
if not rc then
return false, e:cat(re)
function gitrepo_source:sourceid(sourceset)
assertIsStringN(sourceset)
- local rc, re, e, hc, licences, gitdir, argv, out
+ local rc, re, e, hc, gitdir, argv, out
if self._sourceids[sourceset] then
return self._sourceids[sourceset]
hash.hash_append(hc, self._branch)
hash.hash_append(hc, self._env:envid())
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
local lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, e:cat(re)
end
function gitrepo_source:display()
- local licences
-
-- try to calculate the sourceid, but do not care if it fails.
-- working copy might be unavailable
self:sourceid("tag")
table.insert(d, string.format("location = %s", self._location))
table.insert(d, string.format("working = %s", self._working))
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
table.insert(d, string.format("licence = %s", licencename))
end
-- write licences
local destdir = e2lib.join(directory, "licences")
local fname = string.format("%s/%s.licences", destdir, archive)
- local licences = src:get_licences()
- local licence_list = licences:concat("\n") .. "\n"
+ local licence_list = src:licences():concat("\n") .. "\n"
rc, re = e2lib.mkdir_recursive(destdir)
if not rc then
return false, e:cat(re)
-- required but unused.
self:set_env(environment.new())
- self:set_licences(sl.sl:new())
+ self:licences(sl.sl:new())
rc, re = e2lib.vrfy_dict_exp_keys(rawsrc, "e2source config", {
"name",
end
-- collect all licences for later processing
- licence_list:insert_sl(src:get_licences())
+ licence_list:insert_sl(src:licences())
-- write licences
- local l = src:get_licences():concat("\n").."\n"
+ local l = src:licences():concat("\n").."\n"
rc, re = eio.file_write(e2lib.join(srcdir, "licences"), l)
if not rc then
assert(type(sourceset) == "string" and #sourceset > 0)
local rc, re
- local hc, surl, svnurl, argv, out, svnrev, lid, svnrev, licences
+ local hc, surl, svnurl, argv, out, svnrev, lid, svnrev
if self._sourceids[sourceset] then
return self._sourceids[sourceset]
hash.hash_append(hc, self._type)
hash.hash_append(hc, self._env:envid())
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
lid, re = licence.licences[licencename]:licenceid()
if not lid then
return false, re
end
function svn.svn_source:display()
- local d, licences
+ local d
-- try to calculte the sourceid, but do not care if it fails.
-- working copy might be unavailable
table.insert(d, string.format("tag = %s", self._tag))
table.insert(d, string.format("working = %s", self:get_working()))
- licences = self:get_licences()
- for licencename in licences:iter() do
+ for licencename in self:licences():iter() do
table.insert(d, string.format("licence = %s", licencename))
end
-- write licences
local destdir = e2lib.join(directory, "licences")
local fname = string.format("%s/%s.licences", destdir, archive)
- local licences = src:get_licences()
- local licence_list = licences:concat("\n") .. "\n"
+ local licence_list = src:licences():concat("\n") .. "\n"
rc, re = e2lib.mkdir_recursive(destdir)
if not rc then
return false, e:cat(re)