diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-02-03 17:25:30 +0000 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-02-06 13:12:19 +0000 |
commit | 52b506145bcddc133ca93a8c9f7343de69d10907 (patch) | |
tree | 89d5849986b5fe7ef4352b2e58ba1aaf1bd5d6a1 | |
parent | 4b31d6f6f0a2a6b9e504ffae0d3b2099cbd7dddc (diff) | |
download | openembedded-core-52b506145bcddc133ca93a8c9f7343de69d10907.tar.gz openembedded-core-52b506145bcddc133ca93a8c9f7343de69d10907.tar.bz2 openembedded-core-52b506145bcddc133ca93a8c9f7343de69d10907.zip |
package.bbclass: Various minor performance tweaks
* Call getVar outside the loop
* Drop unneeded PATH export (bitbake does this already)
* Drop unused variable
* Simplify if statement nesting
* Simplify variable expandion to a getVar call (expand would just call getVar)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/package.bbclass | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 760f245a52..6ec028b594 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -557,11 +557,12 @@ python fixup_perms () { # paths are resolved via BBPATH def get_fs_perms_list(d): str = "" + bbpath = d.getVar('BBPATH', True) fs_perms_tables = d.getVar('FILESYSTEM_PERMS_TABLES', True) if not fs_perms_tables: fs_perms_tables = 'files/fs-perms.txt' for conf_file in fs_perms_tables.split(): - str += " %s" % bb.which(d.getVar('BBPATH', True), conf_file) + str += " %s" % bb.utils.which(bbpath, conf_file) return str @@ -892,11 +893,10 @@ python populate_packages () { for pkg in packages.split(): if d.getVar('LICENSE_EXCLUSION-' + pkg, True): bb.warn("%s has an incompatible license. Excluding from packaging." % pkg) + elif pkg in package_list: + bb.error("%s is listed in PACKAGES multiple times, this leads to packaging errors." % pkg) else: - if pkg in package_list: - bb.error("%s is listed in PACKAGES multiple times, this leads to packaging errors." % pkg) - else: - package_list.append(pkg) + package_list.append(pkg) d.setVar('PACKAGES', ' '.join(package_list)) pkgdest = d.getVar('PKGDEST', True) @@ -911,7 +911,6 @@ python populate_packages () { bb.warn("FILES variable for package %s contains '//' which is invalid. Attempting to fix this but you should correct the metadata.\n" % pkg) filesvar.replace("//", "/") files = filesvar.split() - file_links = {} for file in files: if os.path.isabs(file): file = '.' + file @@ -1195,7 +1194,7 @@ python package_do_filedeps() { pkgdest = d.getVar('PKGDEST', True) packages = d.getVar('PACKAGES', True) - rpmdeps = d.expand("${RPMDEPS}") + rpmdeps = d.getVar('RPMDEPS', True) def chunks(files, n): return [files[i:i+n] for i in range(0, len(files), n)] @@ -1287,7 +1286,6 @@ python package_do_shlibs() { def linux_so(file): needs_ldconfig = False cmd = d.getVar('OBJDUMP', True) + " -p " + pipes.quote(file) + " 2>/dev/null" - cmd = "PATH=\"%s\" %s" % (d.getVar('PATH', True), cmd) fd = os.popen(cmd) lines = fd.readlines() fd.close() |