Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
To: Khem Raj <raj.khem@gmail.com>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [PATCH] boost: Add real native support
Date: Tue, 26 Mar 2013 08:44:42 +0100	[thread overview]
Message-ID: <515151EA.70403@herbrechtsmeier.net> (raw)
In-Reply-To: <2F386A63-6910-492E-B8A8-986FE6FA3906@gmail.com>

Am 26.03.2013 06:55, schrieb Khem Raj:
> On Mar 12, 2013, at 7:49 AM, Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net> wrote:
>
>> The current boost recipe only creates the bjam build tool during
>> a native run and thereby is not usable for other native recipes
>> that depend on a boost library. Use instead the bjam build tool
>> from the do_boostconfig task and add real native support to the
>> boost recipe. Additionally remove the boost-native from DEPENDS.
>>
>> Keep the installation of the native bjam build tool for backward
>> compatibility.
>>
>> Native compilation of bzip2 isn't working and therefore disabled.
>>
> would it be possible to have an independent bjam-native ?
Yes, I can add a bjam-native. But I will only add bjam-native as cross 
compiling don't work out of the box.

> I was wondering if there were other recipes needing bjam
> could benefit. Now that bjam is removed from staging, this
> could cause other recipes which could have been using
> it unknowingly to fail. Although that in itself is a problem.
This patch installs bjam during native build and thereby keep the old 
behaviour but I will update the patch and move bjam to its own native 
recipe.

>
>> Signed-off-by: Stefan Herbrechtsmeier <stefan@herbrechtsmeier.net>
>> ---
>> meta/recipes-support/boost/boost.inc       |   37 ++++++----------------------
>> meta/recipes-support/boost/boost_1.53.0.bb |    2 +
>> 2 files changed, 10 insertions(+), 29 deletions(-)
>>
>> diff --git a/meta/recipes-support/boost/boost.inc b/meta/recipes-support/boost/boost.inc
>> index 1266666..eaba3a2 100644
>> --- a/meta/recipes-support/boost/boost.inc
>> +++ b/meta/recipes-support/boost/boost.inc
>> @@ -6,8 +6,7 @@
>> DESCRIPTION = "Free peer-reviewed portable C++ source libraries"
>> HOMEPAGE = "http://www.boost.org/"
>> SECTION = "libs"
>> -DEPENDS = "boost-native zlib bzip2"
>> -DEPENDS_class-native = ""
>> +DEPENDS = "zlib bzip2"
>> LICENSE = "BSL-1.0 & MIT & Python-2.0"
>>
>> ARM_INSTRUCTION_SET = "arm"
>> @@ -126,6 +125,8 @@ BJAM_OPTS    = '${PARALLEL_MAKE} \
>> 		--disable-icu \
>> 		${BJAM_EXTRA}'
>>
>> +# Native compilation of bzip2 isn't working
>> +BJAM_OPTS_append_class-native = ' -sNO_BZIP2=1'
>>
>> do_boostconfig() {
>> 	cp -f boost/config/platform/linux.hpp boost/config/platform/linux-gnueabi.hpp
>> @@ -146,7 +147,7 @@ addtask do_boostconfig after do_patch before do_configure
>>
>> do_compile() {
>> 	set -ex
>> -	bjam ${BJAM_OPTS} --prefix=${prefix} \
>> +	./bjam ${BJAM_OPTS} --prefix=${prefix} \
>> 		--exec-prefix=${exec_prefix} \
>> 		--libdir=${libdir} \
>> 		--includedir=${includedir}
>> @@ -154,7 +155,7 @@ do_compile() {
>>
>> do_install() {
>> 	set -ex
>> -	bjam ${BJAM_OPTS} \
>> +	./bjam ${BJAM_OPTS} \
>> 		--libdir=${D}${libdir} \
>> 		--includedir=${D}${includedir} \
>> 		install
>> @@ -171,29 +172,7 @@ do_install() {
>>
>> BBCLASSEXTEND = "native"
>>
>> -do_configure_class-native() {
>> -	:
>> +do_install_append_class-native() {
>> +       install -d ${D}${bindir}/
>> +       install -c -m 755 bjam ${D}${bindir}/
>> }
>> -
>> -do_boostconfig_class-native() {
>> -	:
>> -}
>> -
>> -do_compile_class-native() {
>> -	set -ex
>> -	cd ${S}/tools/build/v2/engine
>> -	rm -rf bin.*
>> -	./build.sh gcc
>> -}
>> -
>> -# This is too terrible - the build script doesn't give any good
>> -# way I can see to find out where the binaries are placed, so
>> -# rely on only one bin.foo directory being created.
>> -do_install_class-native () {
>> -	set -ex
>> -	cd ${S}/tools/build/v2/engine
>> -	install -d ${D}${bindir}/
>> -	install -c -m 755 bin.*/bjam ${D}${bindir}/
>> -}
>> -
>> -
>> diff --git a/meta/recipes-support/boost/boost_1.53.0.bb b/meta/recipes-support/boost/boost_1.53.0.bb
>> index de721c5..7527b25 100644
>> --- a/meta/recipes-support/boost/boost_1.53.0.bb
>> +++ b/meta/recipes-support/boost/boost_1.53.0.bb
>> @@ -2,6 +2,8 @@ include boost.inc
>>
>> LIC_FILES_CHKSUM = "file://LICENSE_1_0.txt;md5=e4224ccaecb14d942c71d31bef20d78c"
>>
>> +PR = "r1"
>> +
>> SRC_URI += "file://arm-intrinsics.patch \
>>             "
>>
>> -- 
>> 1.7.0.4
>>
>>
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core




  reply	other threads:[~2013-03-26  8:01 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-03-07 16:37 [PATCH] boost: Split out bjam build tool and add real native support Stefan Herbrechtsmeier
2013-03-11 23:44 ` Saul Wold
2013-03-12 10:19   ` Stefan Herbrechtsmeier
2013-03-12 10:48     ` Koen Kooi
2013-03-12 11:58       ` Stefan Herbrechtsmeier
2013-03-12 14:55         ` Stefan Herbrechtsmeier
2013-03-12 14:49 ` [PATCH] boost: Add " Stefan Herbrechtsmeier
2013-03-26  5:55   ` Khem Raj
2013-03-26  7:44     ` Stefan Herbrechtsmeier [this message]
2013-03-26 13:02 ` [PATCH V2] " Stefan Herbrechtsmeier
  -- strict thread matches above, loose matches on Subject: below --
2013-03-25  6:10 [PATCH] " Lukas Bulwahn

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=515151EA.70403@herbrechtsmeier.net \
    --to=stefan@herbrechtsmeier.net \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=raj.khem@gmail.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