Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Martin Jansa <martin.jansa@gmail.com>
To: Robert Yang <liezhi.yang@windriver.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH 0/5] refactor the archive*.bbcalss
Date: Tue, 21 Jan 2014 13:37:48 +0100	[thread overview]
Message-ID: <20140121123748.GB4100@jama> (raw)
In-Reply-To: <52DE4EC0.0@windriver.com>

[-- Attachment #1: Type: text/plain, Size: 7480 bytes --]

On Tue, Jan 21, 2014 at 06:41:04PM +0800, Robert Yang wrote:
> 
> Hi Martin,
> 
> I've tested the archiver.bbclass with rm_work.bbclasss again, it works for me,
> it seems that you only downloaded the archiver.bbclass was not enough, would
> you please try this PULL? It is based on oe-core and on oe-core-contrib now:-)
> And if the error occurs, would you please show the configuration and error
> logs ?

I've tried to enable "everything" to test it properly, so my config
looks like this (BTW: it would be nice to show in local.conf.sample
what are the default values):

# Create source archive for complience with the licenses
# Enable all to properly test newer archiver backported from oe-core/master
INHERIT_DISTRO += "archiver"
ARCHIVER_MODE[src] = "prepatch"
ARCHIVER_MODE[diff] = "1"
ARCHIVER_MODE[diff-exclude] ?= ".pc autom4te.cache patches"
ARCHIVER_MODE[dumpdata] = "1"
ARCHIVER_MODE[recipe] = "1"
ARCHIVER_MODE[log] = "1"

And error in do_patch:

NOTE: recipe perf-1.0-r8: task do_patch: Started
ERROR: Error executing a python function in /OE/openembedded-core/meta/recipes-kernel/perf/perf.bb:
OSError: [Errno 2] No such file or directory: '/OE/tmp-eglibc/sysroots/qemux86/usr/src'

ERROR: The stack trace of python calls that resulted in this exception/failure was:
ERROR:   File "do_ar_prepatch", line 6, in <module>
ERROR:
ERROR:   File "do_ar_prepatch", line 3, in do_ar_prepatch
ERROR:
ERROR:   File "archiver.bbclass", line 17, in create_tarball
ERROR:
ERROR: The code that was being executed was:
ERROR:      0002:def do_ar_prepatch(d):
ERROR:      0003:    create_tarball(d, d.getVar('S', True), 'prepatch')
ERROR:      0004:
ERROR:      0005:
ERROR:  *** 0006:do_ar_prepatch(d)
ERROR:      0007:
ERROR: [From file: 'do_ar_prepatch', lineno: 6, function: <module>]
ERROR:      0001:
ERROR:      0002:def do_ar_prepatch(d):
ERROR:  *** 0003:    create_tarball(d, d.getVar('S', True), 'prepatch')
ERROR:      0004:
ERROR:      0005:
ERROR:      0006:do_ar_prepatch(d)
ERROR:      0007:
ERROR: [From file: 'do_ar_prepatch', lineno: 3, function: do_ar_prepatch]
ERROR:      0013:    srcdir = srcdir.rstrip('/')
ERROR:      0014:    dirname = os.path.dirname(srcdir)
ERROR:      0015:    basename = os.path.basename(srcdir)
ERROR:      0016:    olddir = os.getcwd()
ERROR:  *** 0017:    os.chdir(dirname)
ERROR:      0018:    bb.note("Creating %s" % tarname)
ERROR:      0019:    if (len(os.listdir(basename))) != 0:
ERROR:      0020:        tar = tarfile.open(tarname, "w:gz")
ERROR:      0021:        tar.add(basename)
ERROR: [From file: 'archiver.bbclass', lineno: 17, function: create_tarball]
ERROR: Function failed: do_ar_prepatch
ERROR: Logfile of failure stored in: /OE/tmp-eglibc/work/i586-oe-linux/perf/1.0-r8/temp/log.do_patch.28364
NOTE: recipe perf-1.0-r8: task do_patch: Failed
ERROR: Task 20159 (/OE/openembedded-core/meta/recipes-kernel/perf/perf.bb, do_patch) failed with exit code '1'

> git://git.openembedded.org/openembedded-core-contrib rbt/archiver
> 
> // Robert
> 
> On 01/18/2014 08:26 PM, Martin Jansa wrote:
> > On Thu, Jan 16, 2014 at 05:33:20PM +0800, Robert Yang wrote:
> >>
> >>
> >> On 01/16/2014 05:25 PM, Martin Jansa wrote:
> >>> On Thu, Jan 16, 2014 at 10:14:30AM +0800, Robert Yang wrote:
> >>>>
> >>>>
> >>>> On 01/16/2014 12:55 AM, Martin Jansa wrote:
> >>>>> On Tue, Jan 14, 2014 at 12:20:14AM +0800, Robert Yang wrote:
> >>>>>> * 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 1b636173ca88e5ccca1992f9a12367a1189fa674:
> >>>>>>
> >>>>>>      bitbake: toaster: Toaster GUI, generic search, filter and order (2014-01-10 15:20:26 +0000)
> >>>>>>
> >>>>>> are available in the git repository at:
> >>>>>>
> >>>>>>      git://git.pokylinux.org/poky-contrib rbt/archiver
> >>>>>>      http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=rbt/archiver
> >>>>>
> >>>>> Can you send pull-request for oe-core?
> >>>>>
> >>>>
> >>>> Here it is:
> >>>> git://git.pokylinux.org/poky-contrib rbt/ar_oe
> >>>> http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=rbt/ar_oe
> >>>
> >>> This still looks like poky-contrib (so it will download whole
> >>> poky-contrib when I add it as remote to oe-core repo).
> >>>
> >>
> >> Sorry, I can't create repo on oe-contrib, seems that I lost my key.
> >
> > That's sad, you should send new one to khem to replace it, before
> > someone else finds your old key.
> >
> >> How about:
> >>
> >> git fetch git://git.pokylinux.org/poky-contrib rbt/ar_oe
> >
> > That still fetches whole poky repo I'm not interested in.
> >
> > So I've downloaded just archiver.bbclass manually and tested it on my
> > use-case, I can confirm that it doesn't remove required file anymore,
> > but it seems that there is something terribly broken when used in
> > combination with rm_work or multimachine builds.
> >
> > I haven't debugged it yet, but 2nd build (in the same directory) with
> > this new archiver included almost every recipe failed in do_patch task.
> >
> >>>> // Robert
> >>>>
> >>>>>> 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-yocto/conf/local.conf.sample.extended     |  72 +--
> >>>>>>     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                  | 723 ++++++++-----------------
> >>>>>>     meta/classes/copyleft_compliance.bbclass       |  55 +-
> >>>>>>     meta/classes/package_rpm.bbclass               |  31 +-
> >>>>>>     7 files changed, 316 insertions(+), 760 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
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>> Openembedded-core mailing list
> >>>>>> Openembedded-core@lists.openembedded.org
> >>>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> >>>>>
> >>>
> >

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]

  reply	other threads:[~2014-01-21 12:37 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-13 16:20 [PATCH 0/5] refactor the archive*.bbcalss Robert Yang
2014-01-13 10:21 ` Martin Jansa
2014-01-13 10:47   ` Robert Yang
2014-01-13 11:52     ` Henning Heinold
2014-01-13 11:58       ` Martin Jansa
2014-01-14  2:13         ` Robert Yang
2014-01-13 16:20 ` [PATCH 1/5] classes/archive*.bbclass: remove archive-*-source.bbclass Robert Yang
2014-01-13 16:20 ` [PATCH 2/5] archiver.bbclass: refactor it Robert Yang
2014-01-13 16:20 ` [PATCH 3/5] package_rpm.bbclass: archive the source to srpm package Robert Yang
2014-01-13 16:20 ` [PATCH 4/5] archiver.bbclass: move a few code to copyleft_compliance.bbclass Robert Yang
2014-01-13 16:20 ` [PATCH 5/5] local.conf.sample.extended: update for the archiver Robert Yang
2014-01-15 16:55 ` [PATCH 0/5] refactor the archive*.bbcalss Martin Jansa
2014-01-16  2:14   ` Robert Yang
2014-01-16  9:25     ` Martin Jansa
2014-01-16  9:33       ` Robert Yang
2014-01-18 12:26         ` Martin Jansa
2014-01-21 10:40           ` Robert Yang
2014-01-21 10:41           ` Robert Yang
2014-01-21 12:37             ` Martin Jansa [this message]
2014-01-22  2:59               ` Robert Yang
2014-01-22 10:13                 ` Robert Yang
2014-01-31 15:57                   ` Martin Jansa
2014-02-13  9:54 ` Robert Yang
2014-02-13 10:14   ` Henning Heinold

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140121123748.GB4100@jama \
    --to=martin.jansa@gmail.com \
    --cc=liezhi.yang@windriver.com \
    --cc=openembedded-core@lists.openembedded.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox