Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 1/4] perf: Add missing bison-native and flex-native dependencies
@ 2018-01-11 17:01 Richard Purdie
  2018-01-11 17:01 ` [PATCH 2/4] at: Add missing bison-native dependency Richard Purdie
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Richard Purdie @ 2018-01-11 17:01 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/recipes-kernel/perf/perf.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index b79b973..eebe755 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -29,6 +29,8 @@ DEPENDS = " \
     bison flex xz \
     xmlto-native \
     asciidoc-native \
+    flex-native \
+    bison-native \
 "
 
 do_configure[depends] += "virtual/kernel:do_shared_workdir"
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 2/4] at: Add missing bison-native dependency
  2018-01-11 17:01 [PATCH 1/4] perf: Add missing bison-native and flex-native dependencies Richard Purdie
@ 2018-01-11 17:01 ` Richard Purdie
  2018-01-11 17:01 ` [PATCH 3/4] gcc: Add missing flex-native dependency Richard Purdie
  2018-01-11 17:01 ` [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies Richard Purdie
  2 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2018-01-11 17:01 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/recipes-extended/at/at_3.1.20.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-extended/at/at_3.1.20.bb b/meta/recipes-extended/at/at_3.1.20.bb
index 9b537ee..8fe3b43 100644
--- a/meta/recipes-extended/at/at_3.1.20.bb
+++ b/meta/recipes-extended/at/at_3.1.20.bb
@@ -5,7 +5,7 @@ the system load levels drop to a particular level."
 SECTION = "base"
 LICENSE = "GPLv2+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=4325afd396febcb659c36b49533135d4"
-DEPENDS = "flex flex-native \
+DEPENDS = "flex flex-native bison-native \
            ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'libpam', '', d)}"
 
 RDEPENDS_${PN} = "${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_DEPS}', '', d)} \
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 3/4] gcc: Add missing flex-native dependency
  2018-01-11 17:01 [PATCH 1/4] perf: Add missing bison-native and flex-native dependencies Richard Purdie
  2018-01-11 17:01 ` [PATCH 2/4] at: Add missing bison-native dependency Richard Purdie
@ 2018-01-11 17:01 ` Richard Purdie
  2018-01-11 17:01 ` [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies Richard Purdie
  2 siblings, 0 replies; 7+ messages in thread
From: Richard Purdie @ 2018-01-11 17:01 UTC (permalink / raw)
  To: openembedded-core

This is needed for all stages of the cross/target/canadian compilers
and without it (and with indirect gcc dependencies disabled), the steps
fail. Add missing dependencies.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/recipes-devtools/gcc/gcc-7.2.inc            | 4 ++--
 meta/recipes-devtools/gcc/gcc-cross-canadian.inc | 2 +-
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/meta/recipes-devtools/gcc/gcc-7.2.inc b/meta/recipes-devtools/gcc/gcc-7.2.inc
index 1d40cba..f3d8a5e 100644
--- a/meta/recipes-devtools/gcc/gcc-7.2.inc
+++ b/meta/recipes-devtools/gcc/gcc-7.2.inc
@@ -10,8 +10,8 @@ BINV = "7.2.0"
 
 FILESEXTRAPATHS =. "${FILE_DIRNAME}/gcc-7.2:${FILE_DIRNAME}/gcc-7.2/backport:"
 
-DEPENDS =+ "mpfr gmp libmpc zlib"
-NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native"
+DEPENDS =+ "mpfr gmp libmpc zlib flex-native"
+NATIVEDEPS = "mpfr-native gmp-native libmpc-native zlib-native flex-native"
 
 LICENSE = "GPL-3.0-with-GCC-exception & GPLv3"
 
diff --git a/meta/recipes-devtools/gcc/gcc-cross-canadian.inc b/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
index 6d77620..bdd6f7e 100644
--- a/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
+++ b/meta/recipes-devtools/gcc/gcc-cross-canadian.inc
@@ -3,7 +3,7 @@ inherit cross-canadian
 SUMMARY = "GNU cc and gcc C compilers (cross-canadian for ${TARGET_ARCH} target)"
 PN = "gcc-cross-canadian-${TRANSLATED_TARGET_ARCH}"
 
-DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${HOST_PREFIX}gcc-crosssdk virtual/${HOST_PREFIX}binutils-crosssdk virtual/nativesdk-${HOST_PREFIX}libc-for-gcc nativesdk-gettext"
+DEPENDS = "virtual/${TARGET_PREFIX}gcc virtual/${HOST_PREFIX}gcc-crosssdk virtual/${HOST_PREFIX}binutils-crosssdk virtual/nativesdk-${HOST_PREFIX}libc-for-gcc nativesdk-gettext flex-native"
 
 GCCMULTILIB = "--enable-multilib"
 
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies
  2018-01-11 17:01 [PATCH 1/4] perf: Add missing bison-native and flex-native dependencies Richard Purdie
  2018-01-11 17:01 ` [PATCH 2/4] at: Add missing bison-native dependency Richard Purdie
  2018-01-11 17:01 ` [PATCH 3/4] gcc: Add missing flex-native dependency Richard Purdie
@ 2018-01-11 17:01 ` Richard Purdie
  2018-04-10 14:33   ` Denys Dmytriyenko
  2 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2018-01-11 17:01 UTC (permalink / raw)
  To: openembedded-core

This avoids adding flex-native or bison-native to the sysroot without a specific
dependency in the recipe and means indirect dependencies (e.g. X -> Y -> binutils-cross -> flex-native)
no longer met the dependency incidentally. This improves determinism and avoid
build failures when people switch to external toolchains.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 meta/classes/sstate.bbclass | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
index 6808942..7509561 100644
--- a/meta/classes/sstate.bbclass
+++ b/meta/classes/sstate.bbclass
@@ -921,6 +921,13 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
     if taskdependees[task][1] == "do_stash_locale" or taskdependees[task][1] == "do_gcc_stash_builddir":
         return True
 
+    # Don't pull in flex-native or bison-native without a specific dependency in the recipe
+    # This improves determinism in the metadata and avoids the dependency being met incidentally,
+    # e.g. from binutils-cross which doesn't happen in the external toolchain case
+    if taskdependees[task][1] == 'do_populate_sysroot':
+        if taskdependees[task][0] == "flex-native" or taskdependees[task][0] == "bison-native":
+            return True
+
     # We only need to trigger packagedata through direct dependencies
     # but need to preserve packagedata on packagedata links
     if taskdependees[task][1] == "do_packagedata":
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies
  2018-01-11 17:01 ` [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies Richard Purdie
@ 2018-04-10 14:33   ` Denys Dmytriyenko
  2018-04-10 16:36     ` Richard Purdie
  0 siblings, 1 reply; 7+ messages in thread
From: Denys Dmytriyenko @ 2018-04-10 14:33 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

Richard,

Was this patch ever merged? I don't see it in master - were there any problems 
or concerns?


On Thu, Jan 11, 2018 at 05:01:35PM +0000, Richard Purdie wrote:
> This avoids adding flex-native or bison-native to the sysroot without a specific
> dependency in the recipe and means indirect dependencies (e.g. X -> Y -> binutils-cross -> flex-native)
> no longer met the dependency incidentally. This improves determinism and avoid
> build failures when people switch to external toolchains.
> 
> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
> ---
>  meta/classes/sstate.bbclass | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass
> index 6808942..7509561 100644
> --- a/meta/classes/sstate.bbclass
> +++ b/meta/classes/sstate.bbclass
> @@ -921,6 +921,13 @@ def setscene_depvalid(task, taskdependees, notneeded, d, log=None):
>      if taskdependees[task][1] == "do_stash_locale" or taskdependees[task][1] == "do_gcc_stash_builddir":
>          return True
>  
> +    # Don't pull in flex-native or bison-native without a specific dependency in the recipe
> +    # This improves determinism in the metadata and avoids the dependency being met incidentally,
> +    # e.g. from binutils-cross which doesn't happen in the external toolchain case
> +    if taskdependees[task][1] == 'do_populate_sysroot':
> +        if taskdependees[task][0] == "flex-native" or taskdependees[task][0] == "bison-native":
> +            return True
> +
>      # We only need to trigger packagedata through direct dependencies
>      # but need to preserve packagedata on packagedata links
>      if taskdependees[task][1] == "do_packagedata":
> -- 
> 2.7.4
> 
> -- 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies
  2018-04-10 14:33   ` Denys Dmytriyenko
@ 2018-04-10 16:36     ` Richard Purdie
  2018-04-10 16:48       ` Denys Dmytriyenko
  0 siblings, 1 reply; 7+ messages in thread
From: Richard Purdie @ 2018-04-10 16:36 UTC (permalink / raw)
  To: Denys Dmytriyenko; +Cc: openembedded-core

On Tue, 2018-04-10 at 10:33 -0400, Denys Dmytriyenko wrote:
> Richard,
> 
> Was this patch ever merged? I don't see it in master - were there any
> problems 
> or concerns?

There was some kind of failure in testing on the autobuilder which made
me abandon it, I can't remember what it was though :(

Cheers,

Richard


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies
  2018-04-10 16:36     ` Richard Purdie
@ 2018-04-10 16:48       ` Denys Dmytriyenko
  0 siblings, 0 replies; 7+ messages in thread
From: Denys Dmytriyenko @ 2018-04-10 16:48 UTC (permalink / raw)
  To: Richard Purdie; +Cc: openembedded-core

On Tue, Apr 10, 2018 at 05:36:54PM +0100, Richard Purdie wrote:
> On Tue, 2018-04-10 at 10:33 -0400, Denys Dmytriyenko wrote:
> > Richard,
> > 
> > Was this patch ever merged? I don't see it in master - were there any
> > problems 
> > or concerns?
> 
> There was some kind of failure in testing on the autobuilder which made
> me abandon it, I can't remember what it was though :(

Thanks, do you still want to revisit it at some point or completely drop it?

-- 
Denys


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-04-10 16:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-01-11 17:01 [PATCH 1/4] perf: Add missing bison-native and flex-native dependencies Richard Purdie
2018-01-11 17:01 ` [PATCH 2/4] at: Add missing bison-native dependency Richard Purdie
2018-01-11 17:01 ` [PATCH 3/4] gcc: Add missing flex-native dependency Richard Purdie
2018-01-11 17:01 ` [PATCH 4/4] sstate: Avoid indirect bison/flex-native dependencies Richard Purdie
2018-04-10 14:33   ` Denys Dmytriyenko
2018-04-10 16:36     ` Richard Purdie
2018-04-10 16:48       ` Denys Dmytriyenko

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox