* [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12
@ 2015-06-25 19:46 Andre McCurdy
2015-06-25 19:46 ` [PATCH 2/3] image_types.bbclass: use pbzip2 for images requiring bz2 compression Andre McCurdy
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Andre McCurdy @ 2015-06-25 19:46 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb | 27 +++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
create mode 100644 meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
new file mode 100644
index 0000000..fb70d0c
--- /dev/null
+++ b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
@@ -0,0 +1,27 @@
+SUMMARY = "PBZIP2 is a parallel implementation of bzip2"
+DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \
+file compressor that uses pthreads and achieves near-linear speedup on SMP \
+machines. The output of this version is fully compatible with bzip2 v1.0.2 or \
+newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)."
+HOMEPAGE = "http://compression.ca/pbzip2/"
+SECTION = "console/utils"
+LICENSE = "BSD"
+LIC_FILES_CHKSUM = "file://COPYING;md5=4c4f2edec9679d5abef3514a816b54a4"
+
+DEPENDS = "bzip2"
+
+SRC_URI = "https://launchpad.net/${BPN}/1.1/${PV}/+download/${BP}.tar.gz"
+
+SRC_URI[md5sum] = "91a4911b13305850423840eb0fa6f4f9"
+SRC_URI[sha256sum] = "573bb358a5a7d3bf5f42f881af324cedf960c786e8d66dd03d448ddd8a0166ee"
+
+do_configure[noexec] = "1"
+
+EXTRA_OEMAKE = "CXX='${CXX} ${CXXFLAGS}' LDFLAGS='${LDFLAGS}'"
+
+do_install() {
+ install -d ${D}${bindir}
+ install -m 0755 pbzip2 ${D}${bindir}/
+}
+
+BBCLASSEXTEND = "native"
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/3] image_types.bbclass: use pbzip2 for images requiring bz2 compression
2015-06-25 19:46 [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Andre McCurdy
@ 2015-06-25 19:46 ` Andre McCurdy
2015-06-25 19:46 ` [PATCH 3/3] populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfiles Andre McCurdy
2015-06-26 22:35 ` [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Richard Purdie
2 siblings, 0 replies; 7+ messages in thread
From: Andre McCurdy @ 2015-06-25 19:46 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
meta/classes/image_types.bbclass | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass
index d86d108..9668bad 100644
--- a/meta/classes/image_types.bbclass
+++ b/meta/classes/image_types.bbclass
@@ -162,13 +162,13 @@ IMAGE_TYPES = " \
COMPRESSIONTYPES = "gz bz2 lzma xz lz4 sum"
COMPRESS_CMD_lzma = "lzma -k -f -7 ${IMAGE_NAME}.rootfs.${type}"
COMPRESS_CMD_gz = "gzip -f -9 -c ${IMAGE_NAME}.rootfs.${type} > ${IMAGE_NAME}.rootfs.${type}.gz"
-COMPRESS_CMD_bz2 = "bzip2 -f -k ${IMAGE_NAME}.rootfs.${type}"
+COMPRESS_CMD_bz2 = "pbzip2 -f -k ${IMAGE_NAME}.rootfs.${type}"
COMPRESS_CMD_xz = "xz -f -k -c ${XZ_COMPRESSION_LEVEL} ${XZ_THREADS} --check=${XZ_INTEGRITY_CHECK} ${IMAGE_NAME}.rootfs.${type} > ${IMAGE_NAME}.rootfs.${type}.xz"
COMPRESS_CMD_lz4 = "lz4c -9 -c ${IMAGE_NAME}.rootfs.${type} > ${IMAGE_NAME}.rootfs.${type}.lz4"
COMPRESS_CMD_sum = "sumtool -i ${IMAGE_NAME}.rootfs.${type} -o ${IMAGE_NAME}.rootfs.${type}.sum ${JFFS2_SUM_EXTRA_ARGS}"
COMPRESS_DEPENDS_lzma = "xz-native"
COMPRESS_DEPENDS_gz = ""
-COMPRESS_DEPENDS_bz2 = ""
+COMPRESS_DEPENDS_bz2 = "pbzip2-native"
COMPRESS_DEPENDS_xz = "xz-native"
COMPRESS_DEPENDS_lz4 = "lz4-native"
COMPRESS_DEPENDS_sum = "mtd-utils-native"
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfiles
2015-06-25 19:46 [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Andre McCurdy
2015-06-25 19:46 ` [PATCH 2/3] image_types.bbclass: use pbzip2 for images requiring bz2 compression Andre McCurdy
@ 2015-06-25 19:46 ` Andre McCurdy
2015-06-26 22:35 ` [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Richard Purdie
2 siblings, 0 replies; 7+ messages in thread
From: Andre McCurdy @ 2015-06-25 19:46 UTC (permalink / raw)
To: openembedded-core
Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---
meta/classes/populate_sdk_base.bbclass | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass
index 781b279..a4a0193 100644
--- a/meta/classes/populate_sdk_base.bbclass
+++ b/meta/classes/populate_sdk_base.bbclass
@@ -40,7 +40,7 @@ TOOLCHAIN_TARGET_TASK_ATTEMPTONLY ?= ""
TOOLCHAIN_OUTPUTNAME ?= "${SDK_NAME}-toolchain-${SDK_VERSION}"
SDK_RDEPENDS = "${TOOLCHAIN_TARGET_TASK} ${TOOLCHAIN_HOST_TASK}"
-SDK_DEPENDS = "virtual/fakeroot-native"
+SDK_DEPENDS = "virtual/fakeroot-native pbzip2-native"
# We want the MULTIARCH_TARGET_SYS to point to the TUNE_PKGARCH, not PACKAGE_ARCH as it
# could be set to the MACHINE_ARCH
@@ -121,13 +121,13 @@ fakeroot create_sdk_files() {
sed -i -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" ${SDK_OUTPUT}/${SDKPATH}/relocate_sdk.py
}
-SDKTAROPTS = "--owner=root --group=root -j"
+SDKTAROPTS = "--owner=root --group=root"
fakeroot tar_sdk() {
# Package it up
mkdir -p ${SDK_DEPLOY}
cd ${SDK_OUTPUT}/${SDKPATH}
- tar ${SDKTAROPTS} -c --file=${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.tar.bz2 .
+ tar ${SDKTAROPTS} -cf - . | pbzip2 > ${SDK_DEPLOY}/${TOOLCHAIN_OUTPUTNAME}.tar.bz2
}
fakeroot create_shar() {
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12
2015-06-25 19:46 [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Andre McCurdy
2015-06-25 19:46 ` [PATCH 2/3] image_types.bbclass: use pbzip2 for images requiring bz2 compression Andre McCurdy
2015-06-25 19:46 ` [PATCH 3/3] populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfiles Andre McCurdy
@ 2015-06-26 22:35 ` Richard Purdie
2015-06-26 22:47 ` Richard Purdie
2 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2015-06-26 22:35 UTC (permalink / raw)
To: Andre McCurdy; +Cc: openembedded-core
On Thu, 2015-06-25 at 12:46 -0700, Andre McCurdy wrote:
> Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
> ---
> meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb | 27 +++++++++++++++++++++++++++
> 1 file changed, 27 insertions(+)
> create mode 100644 meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
>
> diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> new file mode 100644
> index 0000000..fb70d0c
> --- /dev/null
> +++ b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> @@ -0,0 +1,27 @@
> +SUMMARY = "PBZIP2 is a parallel implementation of bzip2"
> +DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \
> +file compressor that uses pthreads and achieves near-linear speedup on SMP \
> +machines. The output of this version is fully compatible with bzip2 v1.0.2 or \
> +newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)."
> +HOMEPAGE = "http://compression.ca/pbzip2/"
> +SECTION = "console/utils"
> +LICENSE = "BSD"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=4c4f2edec9679d5abef3514a816b54a4"
> +
> +DEPENDS = "bzip2"
http://errors.yoctoproject.org/Errors/Details/12617/
probably as bzip2-native is in ASSUME_PROVIDED at a guess and the bzip2
headers weren't installed :/.
We might have to force this to build bzip2-native, the only issue with
that is installing bzip2 itself into the sysroot will cause a race like
we've had with tar and gzip :(. We might have to teach it to install the
libs but not the binaries in the native case (and do a PROVIDES +=
"bzip2-replacement-native" or something so we can depend on the right
thing.
Cheers,
Richard
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12
2015-06-26 22:35 ` [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Richard Purdie
@ 2015-06-26 22:47 ` Richard Purdie
2015-06-26 23:06 ` Andre McCurdy
0 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2015-06-26 22:47 UTC (permalink / raw)
To: Andre McCurdy; +Cc: openembedded-core
On Fri, 2015-06-26 at 23:35 +0100, Richard Purdie wrote:
> On Thu, 2015-06-25 at 12:46 -0700, Andre McCurdy wrote:
> > Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
> > ---
> > meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb | 27 +++++++++++++++++++++++++++
> > 1 file changed, 27 insertions(+)
> > create mode 100644 meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> >
> > diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> > new file mode 100644
> > index 0000000..fb70d0c
> > --- /dev/null
> > +++ b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> > @@ -0,0 +1,27 @@
> > +SUMMARY = "PBZIP2 is a parallel implementation of bzip2"
> > +DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \
> > +file compressor that uses pthreads and achieves near-linear speedup on SMP \
> > +machines. The output of this version is fully compatible with bzip2 v1.0.2 or \
> > +newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)."
> > +HOMEPAGE = "http://compression.ca/pbzip2/"
> > +SECTION = "console/utils"
> > +LICENSE = "BSD"
> > +LIC_FILES_CHKSUM = "file://COPYING;md5=4c4f2edec9679d5abef3514a816b54a4"
> > +
> > +DEPENDS = "bzip2"
>
> http://errors.yoctoproject.org/Errors/Details/12617/
>
> probably as bzip2-native is in ASSUME_PROVIDED at a guess and the bzip2
> headers weren't installed :/.
>
> We might have to force this to build bzip2-native, the only issue with
> that is installing bzip2 itself into the sysroot will cause a race like
> we've had with tar and gzip :(. We might have to teach it to install the
> libs but not the binaries in the native case (and do a PROVIDES +=
> "bzip2-replacement-native" or something so we can depend on the right
> thing.
Turns out we've been here before. We can fix this with:
DEPENDS_append_class-native = " bzip2-replacement-native"
I'll send out a patch.
Cheers,
Richard
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12
2015-06-26 22:47 ` Richard Purdie
@ 2015-06-26 23:06 ` Andre McCurdy
2015-06-27 7:14 ` Richard Purdie
0 siblings, 1 reply; 7+ messages in thread
From: Andre McCurdy @ 2015-06-26 23:06 UTC (permalink / raw)
To: Richard Purdie; +Cc: OE Core mailing list
On Fri, Jun 26, 2015 at 3:47 PM, Richard Purdie
<richard.purdie@linuxfoundation.org> wrote:
> On Fri, 2015-06-26 at 23:35 +0100, Richard Purdie wrote:
>> On Thu, 2015-06-25 at 12:46 -0700, Andre McCurdy wrote:
>> > Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
>> > ---
>> > meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb | 27 +++++++++++++++++++++++++++
>> > 1 file changed, 27 insertions(+)
>> > create mode 100644 meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
>> >
>> > diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
>> > new file mode 100644
>> > index 0000000..fb70d0c
>> > --- /dev/null
>> > +++ b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
>> > @@ -0,0 +1,27 @@
>> > +SUMMARY = "PBZIP2 is a parallel implementation of bzip2"
>> > +DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \
>> > +file compressor that uses pthreads and achieves near-linear speedup on SMP \
>> > +machines. The output of this version is fully compatible with bzip2 v1.0.2 or \
>> > +newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)."
>> > +HOMEPAGE = "http://compression.ca/pbzip2/"
>> > +SECTION = "console/utils"
>> > +LICENSE = "BSD"
>> > +LIC_FILES_CHKSUM = "file://COPYING;md5=4c4f2edec9679d5abef3514a816b54a4"
>> > +
>> > +DEPENDS = "bzip2"
>>
>> http://errors.yoctoproject.org/Errors/Details/12617/
>>
>> probably as bzip2-native is in ASSUME_PROVIDED at a guess and the bzip2
>> headers weren't installed :/.
>>
>> We might have to force this to build bzip2-native, the only issue with
>> that is installing bzip2 itself into the sysroot will cause a race like
>> we've had with tar and gzip :(. We might have to teach it to install the
>> libs but not the binaries in the native case (and do a PROVIDES +=
>> "bzip2-replacement-native" or something so we can depend on the right
>> thing.
>
> Turns out we've been here before. We can fix this with:
>
> DEPENDS_append_class-native = " bzip2-replacement-native"
>
> I'll send out a patch.
Thanks.
I'm wondering why I haven't seen an issue though - no build errors
here and I don't have any bzip2 headers on the host.
>
> Cheers,
>
> Richard
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12
2015-06-26 23:06 ` Andre McCurdy
@ 2015-06-27 7:14 ` Richard Purdie
0 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2015-06-27 7:14 UTC (permalink / raw)
To: Andre McCurdy; +Cc: OE Core mailing list
On Fri, 2015-06-26 at 16:06 -0700, Andre McCurdy wrote:
> On Fri, Jun 26, 2015 at 3:47 PM, Richard Purdie
> <richard.purdie@linuxfoundation.org> wrote:
> > On Fri, 2015-06-26 at 23:35 +0100, Richard Purdie wrote:
> >> On Thu, 2015-06-25 at 12:46 -0700, Andre McCurdy wrote:
> >> > Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
> >> > ---
> >> > meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb | 27 +++++++++++++++++++++++++++
> >> > 1 file changed, 27 insertions(+)
> >> > create mode 100644 meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> >> >
> >> > diff --git a/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> >> > new file mode 100644
> >> > index 0000000..fb70d0c
> >> > --- /dev/null
> >> > +++ b/meta/recipes-extended/pbzip2/pbzip2_1.1.12.bb
> >> > @@ -0,0 +1,27 @@
> >> > +SUMMARY = "PBZIP2 is a parallel implementation of bzip2"
> >> > +DESCRIPTION = "PBZIP2 is a parallel implementation of the bzip2 block-sorting \
> >> > +file compressor that uses pthreads and achieves near-linear speedup on SMP \
> >> > +machines. The output of this version is fully compatible with bzip2 v1.0.2 or \
> >> > +newer (ie: anything compressed with pbzip2 can be decompressed with bzip2)."
> >> > +HOMEPAGE = "http://compression.ca/pbzip2/"
> >> > +SECTION = "console/utils"
> >> > +LICENSE = "BSD"
> >> > +LIC_FILES_CHKSUM = "file://COPYING;md5=4c4f2edec9679d5abef3514a816b54a4"
> >> > +
> >> > +DEPENDS = "bzip2"
> >>
> >> http://errors.yoctoproject.org/Errors/Details/12617/
> >>
> >> probably as bzip2-native is in ASSUME_PROVIDED at a guess and the bzip2
> >> headers weren't installed :/.
> >>
> >> We might have to force this to build bzip2-native, the only issue with
> >> that is installing bzip2 itself into the sysroot will cause a race like
> >> we've had with tar and gzip :(. We might have to teach it to install the
> >> libs but not the binaries in the native case (and do a PROVIDES +=
> >> "bzip2-replacement-native" or something so we can depend on the right
> >> thing.
> >
> > Turns out we've been here before. We can fix this with:
> >
> > DEPENDS_append_class-native = " bzip2-replacement-native"
> >
> > I'll send out a patch.
>
> Thanks.
>
> I'm wondering why I haven't seen an issue though - no build errors
> here and I don't have any bzip2 headers on the host.
Something else must have built bzip2-replacement-native then and it was
just luck. If you cleansstate bzip2-replacement-native and
pbzip2-native, then just built the latter you should see it.
Cheers,
Richard
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-06-27 7:14 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-06-25 19:46 [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Andre McCurdy
2015-06-25 19:46 ` [PATCH 2/3] image_types.bbclass: use pbzip2 for images requiring bz2 compression Andre McCurdy
2015-06-25 19:46 ` [PATCH 3/3] populate_sdk_base.bbclass: use pbzip2 to compress SDK tarfiles Andre McCurdy
2015-06-26 22:35 ` [PATCH 1/3] pbzip2: add initial recipe, pbzip2 v1.1.12 Richard Purdie
2015-06-26 22:47 ` Richard Purdie
2015-06-26 23:06 ` Andre McCurdy
2015-06-27 7:14 ` Richard Purdie
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox