Patchwork distro/defaultsetup.conf: Append TCLIBC to TMPDIR by default

login
register
mail settings
Submitter Koen Kooi
Date May 17, 2011, 10:48 a.m.
Message ID <1305629309-16745-1-git-send-email-koen@dominion.thruhere.net>
Download mbox | patch
Permalink /patch/4229/
State New, archived
Headers show

Comments

Koen Kooi - May 17, 2011, 10:48 a.m.
From: Richard Purdie <richard.purdie@linuxfoundation.org>

The current solutions to share uclibc, eglibc and glibc builds in the
same tree all have various issues associated with them. Appending the
suffix to TMPDIR seems like the best solution since sstate (which
defaults to outside TMPDIR) will allow reuse of any components.

This avoids messy changes to the core with other approaches to this
problem inevitably entail, usually in code where this abstraction isn;'t
logically best placed.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/conf/distro/defaultsetup.conf         |    4 ++++
 meta/conf/distro/include/tclibc-uclibc.inc |    6 ------
 2 files changed, 4 insertions(+), 6 deletions(-)
Khem Raj - May 18, 2011, 4:52 p.m.
On Tue, May 17, 2011 at 3:48 AM, Koen Kooi <koen@dominion.thruhere.net> wrote:
> From: Richard Purdie <richard.purdie@linuxfoundation.org>
>
> The current solutions to share uclibc, eglibc and glibc builds in the
> same tree all have various issues associated with them. Appending the
> suffix to TMPDIR seems like the best solution since sstate (which
> defaults to outside TMPDIR) will allow reuse of any components.
>
> This avoids messy changes to the core with other approaches to this
> problem inevitably entail, usually in code where this abstraction isn;'t
> logically best placed.


So far so good. This patch is working ok except a few niggles
I still get TMPDIR w/o tclibc append created ad it has

[kraj@leto ~/work/newoe/build]
$ ls
.   sstate-cache         tmp-angstrom_2010_x-eglibc
..  tmp-angstrom_2010_x  tmp-angstrom_2010_x-uclibc

[kraj@leto ~/work/newoe/build/tmp-angstrom_2010_x]
$ ls
.  ..  abi_version  cache  saved_tmpdir

[kraj@leto ~/work/newoe/build/tmp-angstrom_2010_x/cache]
$ ls
.  ..  bb_codeparser.dat  bb_persist_data.sqlite3


>
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
>  meta/conf/distro/defaultsetup.conf         |    4 ++++
>  meta/conf/distro/include/tclibc-uclibc.inc |    6 ------
>  2 files changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/meta/conf/distro/defaultsetup.conf b/meta/conf/distro/defaultsetup.conf
> index 8da6c0a..e7636b4 100644
> --- a/meta/conf/distro/defaultsetup.conf
> +++ b/meta/conf/distro/defaultsetup.conf
> @@ -14,6 +14,10 @@ require conf/distro/include/tcmode-${TCMODE}.inc
>  TCLIBC ?= "eglibc"
>  require conf/distro/include/tclibc-${TCLIBC}.inc
>
> +# Allow single libc distros to disable this code
> +TCLIBCAPPEND ?= "-${TCLIBC}"
> +TMPDIR_append = "${TCLIBCAPPEND}"
> +
>  CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(bb.data.getVar('MACHINE', d, 1))][bool(bb.data.getVar('MACHINE', d, 1))]}${@['', '/' + str(bb.data.getVar('SDKMACHINE', d, 1))][bool(bb.data.getVar('SDKMACHINE', d, 1))]}"
>
>  USER_CLASSES ?= ""
> diff --git a/meta/conf/distro/include/tclibc-uclibc.inc b/meta/conf/distro/include/tclibc-uclibc.inc
> index 27f6ec6..83418d6 100644
> --- a/meta/conf/distro/include/tclibc-uclibc.inc
> +++ b/meta/conf/distro/include/tclibc-uclibc.inc
> @@ -20,12 +20,6 @@ CXXFLAGS += "-fvisibility-inlines-hidden"
>
>  IMAGE_LINGUAS = ""
>
> -DEPLOY_DIR_IMAGE = "${TMPDIR}/deploy/images"
> -DEPLOY_DIR_append = "-uclibc"
> -STAGING_DIR_TARGET_append = "-uclibc"
> -STAGING_DIR_HOST_append = "-uclibc"
> -SSTATE_MANIFESTS_append = "-uclibc"
> -
>  LIBC_DEPENDENCIES = "\
>     uclibc \
>     uclibc-dbg \
> --
> 1.6.6.1
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
>

Patch

diff --git a/meta/conf/distro/defaultsetup.conf b/meta/conf/distro/defaultsetup.conf
index 8da6c0a..e7636b4 100644
--- a/meta/conf/distro/defaultsetup.conf
+++ b/meta/conf/distro/defaultsetup.conf
@@ -14,6 +14,10 @@  require conf/distro/include/tcmode-${TCMODE}.inc
 TCLIBC ?= "eglibc"
 require conf/distro/include/tclibc-${TCLIBC}.inc
 
+# Allow single libc distros to disable this code
+TCLIBCAPPEND ?= "-${TCLIBC}"
+TMPDIR_append = "${TCLIBCAPPEND}"
+
 CACHE = "${TMPDIR}/cache/${TCMODE}-${TCLIBC}${@['', '/' + str(bb.data.getVar('MACHINE', d, 1))][bool(bb.data.getVar('MACHINE', d, 1))]}${@['', '/' + str(bb.data.getVar('SDKMACHINE', d, 1))][bool(bb.data.getVar('SDKMACHINE', d, 1))]}"
 
 USER_CLASSES ?= ""
diff --git a/meta/conf/distro/include/tclibc-uclibc.inc b/meta/conf/distro/include/tclibc-uclibc.inc
index 27f6ec6..83418d6 100644
--- a/meta/conf/distro/include/tclibc-uclibc.inc
+++ b/meta/conf/distro/include/tclibc-uclibc.inc
@@ -20,12 +20,6 @@  CXXFLAGS += "-fvisibility-inlines-hidden"
 
 IMAGE_LINGUAS = ""
 
-DEPLOY_DIR_IMAGE = "${TMPDIR}/deploy/images"
-DEPLOY_DIR_append = "-uclibc"
-STAGING_DIR_TARGET_append = "-uclibc"
-STAGING_DIR_HOST_append = "-uclibc"
-SSTATE_MANIFESTS_append = "-uclibc"
-
 LIBC_DEPENDENCIES = "\
     uclibc \
     uclibc-dbg \