From: Saul Wold <sgw@linux.intel.com>
To: 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: Thu, 12 Jan 2012 12:04:54 -0800 [thread overview]
Message-ID: <4F0F3CE6.3020707@linux.intel.com> (raw)
In-Reply-To: <cover.1326003199.git.xiaofeng.yan@windriver.com>
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!
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
next prev parent reply other threads:[~2012-01-12 20:12 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 ` Saul Wold [this message]
2012-01-13 10:01 ` [PATCH 0/2] Add function to package source codes tree to source rpm and tar packages Xiaofeng Yan
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=4F0F3CE6.3020707@linux.intel.com \
--to=sgw@linux.intel.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