diff options
author | Robert Yang <liezhi.yang@windriver.com> | 2012-08-24 14:06:59 +0800 |
---|---|---|
committer | Saul Wold <sgw@linux.intel.com> | 2012-08-28 08:03:40 -0700 |
commit | 6ac3e8be0307ecaea5e92f8bda94f1cd2193a47a (patch) | |
tree | 92e8d3d1a6641fa817070da8c6aaed96b433fc7a /meta/classes/archiver.bbclass | |
parent | 731e1171d6c35ed086b36c081f48dba2015319f8 (diff) | |
download | openembedded-core-6ac3e8be0307ecaea5e92f8bda94f1cd2193a47a.tar.gz openembedded-core-6ac3e8be0307ecaea5e92f8bda94f1cd2193a47a.tar.bz2 openembedded-core-6ac3e8be0307ecaea5e92f8bda94f1cd2193a47a.zip |
archiver.bbclass: fix the remove error
* The "tar-package" is used for saving the "Source" list for rpmbuild,
there is no such a file when "ARCHIVER_MODE[type] ?= srpm", and there
would be errors, it hadn't happen before was becuase that the remove
function didn't work. Let the "rpmbuild --rmsource" to remove the
Sources, and the remove function will just remove the tar-package file.
* Remove several unwanted "try ... exception" sentences, let the error
raise rather than ignore them when the error happens.
* Remove several un-needed code.
[YOCTO #2619]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Diffstat (limited to 'meta/classes/archiver.bbclass')
-rw-r--r-- | meta/classes/archiver.bbclass | 51 |
1 files changed, 20 insertions, 31 deletions
diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass index 19c5567714..3146d02b3c 100644 --- a/meta/classes/archiver.bbclass +++ b/meta/classes/archiver.bbclass @@ -359,26 +359,22 @@ def store_package(d, package_name): """ store tarbablls name to file "tar-package" """ - try: - f = open(os.path.join(d.getVar('WORKDIR', True), 'tar-package'), 'a') - f.write(package_name + ' ') - f.close() - except IOError: - pass + f = open(os.path.join(d.getVar('WORKDIR', True), 'tar-package'), 'a') + f.write(package_name + ' ') + f.close() def get_package(d): """ get tarballs name from "tar-package" """ work_dir = (d.getVar('WORKDIR', True)) - tarpackage = os.path.join(work_dir, 'tar-package') - try: - f = open(tarpackage, 'r') - line = list(set(f.readline().replace('\n', '').split())) - except UnboundLocalError, IOError: - pass - f.close() - return line + tarlist = os.path.join(work_dir, 'tar-package') + if os.path.exists(tarlist): + f = open(tarlist, 'r') + line = f.readline().rstrip('\n').split() + f.close() + return line + return [] def archive_sources_patches(d, stage_name): @@ -407,9 +403,9 @@ def archive_sources_patches(d, stage_name): if d.getVar('SOURCE_ARCHIVE_PACKAGE_TYPE', True) != 'srpm': move_tarball_deploy(d, [source_tar_name, patch_tar_name]) else: - tarpackage = os.path.join(d.getVar('WORKDIR', True), 'tar-package') - if os.path.exists(tarpackage): - os.remove(tarpackage) + tarlist = os.path.join(d.getVar('WORKDIR', True), 'tar-package') + if os.path.exists(tarlist): + os.remove(tarlist) for package in os.path.basename(source_tar_name), patch_tar_name: if package: store_package(d, str(package) + ' ') @@ -558,18 +554,11 @@ python do_archive_linux_yocto(){ do_kernel_checkout[postfuncs] += "do_archive_linux_yocto " # remove tarball for sources, patches and logs after creating srpm. -python do_remove_tarball(){ - if d.getVar('SOURCE_ARCHIVE_PACKAGE_TYPE', True) == 'srpm': - work_dir = d.getVar('WORKDIR', True) - try: - for file in os.listdir(os.getcwd()): - if file in get_package(d): - os.remove(file) - os.remove(os.path.join(work_dir, 'tar-package')) - except (TypeError, OSError): - pass +python do_remove_tarlist(){ + work_dir = d.getVar('WORKDIR', True) + tarlist = os.path.join(work_dir, 'tar-package') + if os.path.exists(tarlist): + os.remove(tarlist) } -do_remove_tarball[deptask] = "do_archive_scripts_logs" -do_package_write_rpm[postfuncs] += "do_remove_tarball " -export get_licenses -export get_package +do_remove_tarlist[deptask] = "do_archive_scripts_logs" +do_package_write_rpm[postfuncs] += "do_remove_tarlist " |