From: Martin Jansa <martin.jansa@gmail.com>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: openembedded-core <openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH] sstate: Convert to use ':' as a filename sperator and use SSTATE_SWSPEC globally
Date: Fri, 20 Dec 2013 13:33:48 +0100 [thread overview]
Message-ID: <20131220123348.GV3706@jama> (raw)
In-Reply-To: <1387541162.6402.91.camel@ted>
[-- Attachment #1: Type: text/plain, Size: 2920 bytes --]
On Fri, Dec 20, 2013 at 12:06:02PM +0000, Richard Purdie wrote:
> Currently the code has problems differentiating between "gcc-cross" and "gcc-cross-initial"
> sstate files. We could add in a ton of special casing but tests show this isn't scaling
> well. Using a more unique separator resolves the issue.
>
> The choice of which separator to use is a hard one. We need something which isn't commonly
> used in PN, PV, PR, *_OS and *_ARCH which rules out '-', '_' and it needs to work ok with
> webservers/http which makes ';' and '%' harder.
>
> The change also sets SSTATE_SWSPEC globally since writing out differently named siginfo
> files for the fetch/unpack/patch tasks is a waste of diskspace, the hashes match for
> all PN in the majority of cases and if they don't, its not a big issue as the hash is
> different. This makes the results from sstate debugging more understandable.
Can you mention why :: is sometimes used in SWSPEC?
I guess it's again just for easier differentianting, but maybe it should
be mentioned in commit message.
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
> diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
> index 199a5b3..324d1c1 100644
> --- a/meta/classes/sstate.bbclass
> +++ b/meta/classes/sstate.bbclass
> @@ -9,8 +9,8 @@ def generate_sstatefn(spec, hash, d):
> return hash[:2] + "/" + spec + hash
>
> SSTATE_PKGARCH = "${PACKAGE_ARCH}"
> -SSTATE_PKGSPEC = "sstate-${PN}-${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}-${PV}-${PR}-${SSTATE_PKGARCH}-${SSTATE_VERSION}-"
> -SSTATE_SWSPEC = ""
> +SSTATE_PKGSPEC = "sstate:${PN}:${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}:${PV}:${PR}:${SSTATE_PKGARCH}:${SSTATE_VERSION}:"
> +SSTATE_SWSPEC = "sstate:${BPN}::${PV}:${PR}::${SSTATE_VERSION}:"
> SSTATE_PKGNAME = "${SSTATE_EXTRAPATH}${@generate_sstatefn(d.getVar('SSTATE_PKGSPEC', True), d.getVar('BB_TASKHASH', True), d)}"
> SSTATE_PKG = "${SSTATE_DIR}/${SSTATE_PKGNAME}"
> SSTATE_EXTRAPATH = ""
> diff --git a/meta/recipes-devtools/gcc/gcc-common.inc b/meta/recipes-devtools/gcc/gcc-common.inc
> index e49d724..112e8ce 100644
> --- a/meta/recipes-devtools/gcc/gcc-common.inc
> +++ b/meta/recipes-devtools/gcc/gcc-common.inc
> @@ -95,7 +95,7 @@ do_patch[stamp-base-clean] = "${SSCLEAN}"
>
> # SW means Shared Work directory
> SW = "${TMPDIR}/work-shared/gcc-${PV}-${PR}"
> -SSTATE_SWSPEC = "sstate-gcc-${PV}-${PR}-${SSTATE_VERSION}-"
> +SSTATE_SWSPEC = "sstate:gcc::${PV}:${PR}::${SSTATE_VERSION}:"
> WORKDIR_task-unpack = "${SW}"
> WORKDIR_task-patch = "${SW}"
>
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
next prev parent reply other threads:[~2013-12-20 12:33 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-20 12:06 [PATCH] sstate: Convert to use ':' as a filename sperator and use SSTATE_SWSPEC globally Richard Purdie
2013-12-20 12:33 ` Martin Jansa [this message]
2013-12-20 12:37 ` Richard Purdie
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=20131220123348.GV3706@jama \
--to=martin.jansa@gmail.com \
--cc=openembedded-core@lists.openembedded.org \
--cc=richard.purdie@linuxfoundation.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.