From: Xiaofeng Yan <xiaofeng.yan@windriver.com>
To: Saul Wold <sgw@linux.intel.com>
Cc: Patches and discussions about the oe-core layer
<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH 0/2] Add function to package source codes tree to source rpm and tar packages
Date: Fri, 13 Jan 2012 18:01:37 +0800 [thread overview]
Message-ID: <4F100101.6060508@windriver.com> (raw)
In-Reply-To: <4F0F3CE6.3020707@linux.intel.com>
On 2012年01月13日 04:04, Saul Wold wrote:
> On 01/07/2012 11:11 PM, Xiaofeng Yan wrote:
>> From: Xiaofeng Yan<xiaofeng.yan@windriver.com>
>>
>> Add file "tar_archive.bbclass" and modify file "package_rpm.bbclass"
>> for packaging source codes tree to source rpm and tar packages.
>> After adding srpm function in file "package_rpm.bbclass", user can
>> get source rpm packages beside rpm package.
>> User also get tar packages of source codes tree according to the
>> requirement from bug 1655. The final result is as follow:
>> Take qemux86 for an example:
>> Get source rpm pakcages
>> 1 Inherit tar_archive.bbclass in package_rpm.bbclass.
>> 2 Select the type of packaging source code tree in
>> conf/local.conf(ARCHIVE_TYPE ?= "SRPM")
>> 3 Run the following command
>> $ bitbake core-image-sato -c copysources
>> 4 Get source rpm packages:
>> $ tree build/tmp/deploy/sources
>> build/tmp/deploy/sources/
>> └── qemux86
>> ├── all-poky-linux
>> │  ├── encodings-1.0.4-r2.1.src.rpm
>> ......
>> ├── i586-poky-linux
>> │  ├── acl-2.2.51-r2.src.rpm
>> ......
>> └── qemux86-poky-linux
>> ├── base-files-3.0.14-r70.src.rpm
>> ......
>> Get tar packages:
>> 1 Inherit tar_archive.bbclass in an suitable position (for example,
>> package_rpm.bbclass).
>> 2 Select the type of packaging source code tree in
>> conf/local.conf(ARCHIVE_TYPE ?= "TARGZ")
>> 3 Run the following command
>> $ bitbake core-image-sato -c copysources
>> 4 Get tar packages:
>> $ tree build/tmp/deploy/sources
>> buildx86/tmp/deploy/sources
>> └── qemux86
>> ├── all-poky-linux
>> │  ├── encodings-1_1.0.4-r2.1
>> │  │  ├── encodings-1_1.0.4-r2.1.tar.gz
>> │  │  └── log.tar.gz
>> ......
>> ├── i586-poky-linux
>> │  ├── acl-2.2.51-r2
>> │  │  ├── acl-2.2.51-r2.tar.gz
>> └── log.tar.gz
>> ......
>> └── qemux86-poky-linux
>> ├── core-image-sato-1.0-r0
>> ├── libzypp-0.0-git1+15b6c52260bbc52b3d8e585e271b67e10cc7c433-r17
>> │  ├──
>> libzypp-0.0-git1+15b6c52260bbc52b3d8e585e271b67e10cc7c433-r17.tar.gz
>> │  └── log.tar.gz
>> ......
>>
>> if inheriting tar_archive.bbclass in one bb file, then only package
>> source codes tree of this file.
>> Take zlib for an example:
>> Get source rpm pakcage of zlib
>> 1 Inherit tar_archive.bbclass in zlib_1.2.5.bb.
>> 2 Select the type of packaging source code tree in
>> conf/local.conf(ARCHIVE_TYPE ?= "SRPM")
>> 3 Run the following command
>> $ bitbake zlib
>> 4 Get source rpm package:
>> $ ls build/tmp/work/i586-poky-linux/zlib-1.2.5-r3/deploy-srpm/i586/
>> zlib-1.2.5-r3.src.rpm
>>
>>
>> Get tar package of zlib
>> 1 Inherit tar_archive.bbclass in zlib_1.2.5.bb.
>> 2 Select the type of packaging source code tree in
>> conf/local.conf(ARCHIVE_TYPE ?= "TARGZ")
>> 3 Run the following command
>> $ bitbake zlib
>> 4 Get tar package:
>> $ ls build/tmp/work/i586-poky-linux/zlib-1.2.5-r3/
>> zlib-1.2.5-r3.tar.gz log.tar.gz ......
>>
>>
>> Pull URL: git://git.pokylinux.org/poky-contrib.git
>> Branch: xiaofeng/1655
>> Browse:
>> http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=xiaofeng/1655
>>
>> Thanks,
>> Xiaofeng Yan<xiaofeng.yan@windriver.com>
>> ---
>>
>>
>> Xiaofeng Yan (2):
>> package_rpm.bbclass: add srpm function in spec file
>> tar_archive.bbclass: Package source codes and log files to tar
>> package
>>
>> meta/classes/package_rpm.bbclass | 65 ++++++++++--
>> meta/classes/tar_archive.bbclass | 216
>> ++++++++++++++++++++++++++++++++++++++
>> 2 files changed, 271 insertions(+), 10 deletions(-)
>> create mode 100644 meta/classes/tar_archive.bbclass
>>
>>
> Xiaofeng, Wenzong:
>
> We are going to put a hold on both this patchset and Wenzong's patch
> set, due to the similarity of what is trying to be done. Both of these
> patches are creating tar archives of source and temp directories.
> While it is being done differently, we need to consolidate these changes.
>
> The SRPM work can use the consolidated version. As I mentioned in a
> prior email to Wenzong, there are also other classes such as
> copyleft_complaince.bbclass and src_distrbute.bbclass that we should
> look at and determine if they can be modified or extended.
>
> Wenzong pointed out that copyleft does license checking, it can work
> for all sources depending on the settings of the INCLUDE/EXCLUDE
> variables, so it can be reused, it creates a source + patchset directory.
>
> The sourcepgk.bbclass seems to be doing something different in
> creating a diff file (among other) of a given package between the
> unpack and post-patch, including the python functions and environmnet
> variables.
>
> I (with Mark's help) will craft and updated document to address what
> we are want to accomplish, which is simplifing what we currently have
> with the goal to meet the commercial vendor's needs of supplying the
> source either patched or with a patchset that can be applied along
> with the configuration and build scripts for various license compliance.
>
> Thanks for your initial work in this area, but we need to find a
> better overall approach without duplicating code/effort.
>
> Sau!
>
>
I reviewed sourcepkg.bbclass(some cases can't be considered and we need
modify this file according to requirement). It is similar with
tar_archive.bbclass in some functions. I agree with Saul's suggestion
about combining two or more files into one file.
Yan
Thanks
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>
prev parent reply other threads:[~2012-01-13 10:08 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-08 7:11 [PATCH 0/2] Add function to package source codes tree to source rpm and tar packages Xiaofeng Yan
2012-01-08 7:11 ` [PATCH 1/2] package_rpm.bbclass: add srpm function in spec file Xiaofeng Yan
2012-01-09 16:17 ` Mark Hatle
2012-01-10 8:02 ` Xiaofeng Yan
2012-01-08 7:11 ` [PATCH 2/2] tar_archive.bbclass: Package source codes and log files to tar package Xiaofeng Yan
2012-01-09 16:20 ` Mark Hatle
2012-01-12 20:04 ` [PATCH 0/2] Add function to package source codes tree to source rpm and tar packages Saul Wold
2012-01-13 10:01 ` Xiaofeng Yan [this message]
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=4F100101.6060508@windriver.com \
--to=xiaofeng.yan@windriver.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=sgw@linux.intel.com \
/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