[OE-core] [PATCH 0/5 V2] refactor the archiver*.bbclass
Burton, Ross
ross.burton at intel.com
Tue Feb 25 12:40:57 UTC 2014
Hi,
One point: enabling the archiver causes the stamps for various steps
to change (fetch, configure, package: wherever it hooks) which means a
full rebuild. Can the archiver hide itself from the stamps so this
doesn't happen?
This appears to be some of the work required:
+do_configure[vardepsexclude] += "do_deploy_archives"
+do_patch[vardepsexclude] += "do_create_diff_gz"
+do_unpack[vardepsexclude] += "do_ar_unpacked"
But I'm still getting a stamp change in do_package that I haven't
chased down yet.
Ross
On 24 February 2014 15:56, Robert Yang <liezhi.yang at windriver.com> wrote:
> === V2:
> * Fix the warning between different machines which is reported by Martin
> * Fix the error when the archiver.bbclass is not inherited but
> ARCHIVER_MODE[type] = "srpm" is set, reported by Ross.
> * Fix the archiving for gcc staff which uses the shared source according
> to the recently changes of prefuncs and postfuncs in bitbake, so it only
> works well with bitbake's up to date master branch, if we want to backport it,
> we also need backport the pre/postfuncs related patches.
>
> === V1:
> * The archive*.bbclass didn't work, and there were a few problems, for
> example:
> 1) There were a few duplicated code
> 2) There was no src_dir.org (or orig), but the diff command still use
> it, and it is not easy to fix this issue if we don't change a lot
> of the code.
> 3) It didn't archive the source for the native or gcc
> 4) The work flow is not very well
> 5) The "subprocess.call('fakeroot cp xxxx'" should be removed
> 6) And others ...
>
> * So that we have to refactor it, the benefits are:
> 1) Fix the problems and make it work well.
> 2) Reduce more than 400 lines in total.
> 3) Make it easy to use.
>
> // Robert
>
> The following changes since commit 0e5cfef90ff762b33da6dc301dfc9cb3947c8a02:
>
> runqemu: enforce right CPU type for qemux86/x86-64 (2014-02-13 17:48:47 +0000)
>
> are available in the git repository at:
>
> git://git.openembedded.org/openembedded-core-contrib rbt/archiver
> http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/archiver
>
> Robert Yang (5):
> classes/archive*.bbclass: remove archive-*-source.bbclass
> archiver.bbclass: refactor it
> package_rpm.bbclass: archive the source to srpm package
> archiver.bbclass: move a few code to copyleft_compliance.bbclass
> local.conf.sample.extended: update for the archiver
>
> meta/classes/archive-configured-source.bbclass | 65 ---
> meta/classes/archive-original-source.bbclass | 65 ---
> meta/classes/archive-patched-source.bbclass | 65 ---
> meta/classes/archiver.bbclass | 735 ++++++++-----------------
> meta/classes/copyleft_compliance.bbclass | 55 +-
> meta/classes/package_rpm.bbclass | 31 +-
> meta/conf/local.conf.sample.extended | 72 +--
> 7 files changed, 327 insertions(+), 761 deletions(-)
> delete mode 100644 meta/classes/archive-configured-source.bbclass
> delete mode 100644 meta/classes/archive-original-source.bbclass
> delete mode 100644 meta/classes/archive-patched-source.bbclass
>
> --
> 1.8.3.1
>
More information about the Openembedded-core
mailing list