[OE-core] [PATCH 0/1] util-linux: fix register location for rfkill to avoid conflict
The following changes since commit 72867393fe2004ab9f0ee23eb09a975c82938b9e: runqemu: Also specialcase resolution of '.' to the file's location (2017-11-21 17:58:41 +) are available in the git repository at: git://git.pokylinux.org/poky-contrib ChenQi/util-linux-rfkill http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/util-linux-rfkill Chen Qi (1): util-linux: fix register location for rfkill to avoid conflict meta/recipes-core/util-linux/util-linux.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 1.9.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/1] util-linux: fix register location for rfkill to avoid conflict
If we have 'wifi' in distro feature, then busybox would have rfkill enabled. And we would have the following do_rootfs failure if we install both busybox and util-linux-rfkill. Error: cannot register alternative rfkill to /usr/bin/rfkill since it is already registered to /usr/sbin/rfkill. There's another provider of rfkill in OE, that is rfkill recipe in meta-oe. And it also registers rfkill to ${sbindir}/rfkill. So change the register location of rfkill in util-linux to avoid conflict with busybox and rfkill recipes. Signed-off-by: Chen Qi--- meta/recipes-core/util-linux/util-linux.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-core/util-linux/util-linux.inc b/meta/recipes-core/util-linux/util-linux.inc index 03970e9..248e8be 100644 --- a/meta/recipes-core/util-linux/util-linux.inc +++ b/meta/recipes-core/util-linux/util-linux.inc @@ -269,7 +269,7 @@ ALTERNATIVE_util-linux-blkid = "blkid" ALTERNATIVE_LINK_NAME[blkid] = "${base_sbindir}/blkid" ALTERNATIVE_util-linux-rfkill = "rfkill" -ALTERNATIVE_LINK_NAME[rfkill] = "${bindir}/rfkill" +ALTERNATIVE_LINK_NAME[rfkill] = "${sbindir}/rfkill" ALTERNATIVE_TARGET[rfkill] = "${base_bindir}/rfkill" ALTERNATIVE_util-linux-getopt = "getopt" -- 1.9.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [V2][PATCH] glibc: Security fix CVE-2017-15670
From: Armin KusterThe GNU C Library (aka glibc or libc6) before 2.27 contains an off-by-one error leading to a heap-based buffer overflow in the glob function in glob.c, related to the processing of home directories using the ~ operator followed by a long string. Affects: glibc < 2.27 v2] capitlize "signed-off-by" in patch Signed-off-by: Armin Kuster --- meta/recipes-core/glibc/glibc/CVE-2017-15670.patch | 61 ++ meta/recipes-core/glibc/glibc_2.26.bb | 1 + 2 files changed, 62 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15670.patch diff --git a/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch b/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch new file mode 100644 index 000..ae050a5 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch @@ -0,0 +1,61 @@ +From a76376df7c07e577a9515c3faa5dbd50bda5da07 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Fri, 20 Oct 2017 18:41:14 +0200 +Subject: [PATCH] CVE-2017-15670: glob: Fix one-byte overflow [BZ #22320] + +(cherry picked from commit c369d66e5426a30e4725b100d5cd28e372754f90) + +Upstream-Status: Backport +CVE: CVE-2017-15670 +Affects: glibc < 2.27 +Signed-off-by: Armin Kuster + +--- + ChangeLog| 6 ++ + NEWS | 5 + + posix/glob.c | 2 +- + 3 files changed, 12 insertions(+), 1 deletion(-) + +Index: git/NEWS +=== +--- git.orig/NEWS git/NEWS +@@ -206,6 +206,11 @@ Security related changes: + * A use-after-free vulnerability in clntudp_call in the Sun RPC system has been + fixed (CVE-2017-12133). + ++ CVE-2017-15670: The glob function, when invoked with GLOB_TILDE, ++ suffered from a one-byte overflow during ~ operator processing (either ++ on the stack or the heap, depending on the length of the user name). ++ Reported by Tim Rühsen. ++ + The following bugs are resolved with this release: + + [984] network: Respond to changed resolv.conf in gethostbyname +Index: git/posix/glob.c +=== +--- git.orig/posix/glob.c git/posix/glob.c +@@ -843,7 +843,7 @@ glob (const char *pattern, int flags, in + *p = '\0'; + } + else +- *((char *) mempcpy (newp, dirname + 1, end_name - dirname)) ++ *((char *) mempcpy (newp, dirname + 1, end_name - dirname - 1)) + = '\0'; + user_name = newp; + } +Index: git/ChangeLog +=== +--- git.orig/ChangeLog git/ChangeLog +@@ -1,3 +1,9 @@ ++2017-10-20 Paul Eggert ++ ++ [BZ #22320] ++ CVE-2017-15670 ++ * posix/glob.c (__glob): Fix one-byte overflow. ++ + 2017-08-02 Siddhesh Poyarekar + + * version.h (RELEASE): Set to "stable" diff --git a/meta/recipes-core/glibc/glibc_2.26.bb b/meta/recipes-core/glibc/glibc_2.26.bb index 135ec4f..ed4ea4f 100644 --- a/meta/recipes-core/glibc/glibc_2.26.bb +++ b/meta/recipes-core/glibc/glibc_2.26.bb @@ -43,6 +43,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0026-assert-Suppress-pedantic-warning-caused-by-statement.patch \ file://0027-glibc-reset-dl-load-write-lock-after-forking.patch \ file://0028-Bug-4578-add-ld.so-lock-while-fork.patch \ + file://CVE-2017-15670.patch \ " NATIVESDKFIXES ?= "" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] ✗ patchtest: failure for Several Glibc security fixes
== Series Details == Series: Several Glibc security fixes Revision: 1 URL : https://patchwork.openembedded.org/series/9928/ State : failure == Summary == Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures: * Issue A patch file has been added, but does not have a Signed-off-by tag [test_signed_off_by_presence] Suggested fixSign off the added patch file (meta/recipes-core/glibc/glibc/CVE-2017-15670.patch) If you believe any of these test results are incorrect, please reply to the mailing list (openembedded-core@lists.openembedded.org) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...). --- Guidelines: https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/3] glibc: Security fix CVE-2017-15670
From: Armin KusterThe GNU C Library (aka glibc or libc6) before 2.27 contains an off-by-one error leading to a heap-based buffer overflow in the glob function in glob.c, related to the processing of home directories using the ~ operator followed by a long string. Affects: glibc < 2.27 Signed-off-by: Armin Kuster --- meta/recipes-core/glibc/glibc/CVE-2017-15670.patch | 61 ++ meta/recipes-core/glibc/glibc_2.26.bb | 1 + 2 files changed, 62 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15670.patch diff --git a/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch b/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch new file mode 100644 index 000..aeecb92 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/CVE-2017-15670.patch @@ -0,0 +1,61 @@ +From a76376df7c07e577a9515c3faa5dbd50bda5da07 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Fri, 20 Oct 2017 18:41:14 +0200 +Subject: [PATCH] CVE-2017-15670: glob: Fix one-byte overflow [BZ #22320] + +(cherry picked from commit c369d66e5426a30e4725b100d5cd28e372754f90) + +Upstream-Status: Backport +CVE: CVE-2017-15670 +Affects: glibc < 2.27 +signed-off-by: Armin Kuster + +--- + ChangeLog| 6 ++ + NEWS | 5 + + posix/glob.c | 2 +- + 3 files changed, 12 insertions(+), 1 deletion(-) + +Index: git/NEWS +=== +--- git.orig/NEWS git/NEWS +@@ -206,6 +206,11 @@ Security related changes: + * A use-after-free vulnerability in clntudp_call in the Sun RPC system has been + fixed (CVE-2017-12133). + ++ CVE-2017-15670: The glob function, when invoked with GLOB_TILDE, ++ suffered from a one-byte overflow during ~ operator processing (either ++ on the stack or the heap, depending on the length of the user name). ++ Reported by Tim Rühsen. ++ + The following bugs are resolved with this release: + + [984] network: Respond to changed resolv.conf in gethostbyname +Index: git/posix/glob.c +=== +--- git.orig/posix/glob.c git/posix/glob.c +@@ -843,7 +843,7 @@ glob (const char *pattern, int flags, in + *p = '\0'; + } + else +- *((char *) mempcpy (newp, dirname + 1, end_name - dirname)) ++ *((char *) mempcpy (newp, dirname + 1, end_name - dirname - 1)) + = '\0'; + user_name = newp; + } +Index: git/ChangeLog +=== +--- git.orig/ChangeLog git/ChangeLog +@@ -1,3 +1,9 @@ ++2017-10-20 Paul Eggert ++ ++ [BZ #22320] ++ CVE-2017-15670 ++ * posix/glob.c (__glob): Fix one-byte overflow. ++ + 2017-08-02 Siddhesh Poyarekar + + * version.h (RELEASE): Set to "stable" diff --git a/meta/recipes-core/glibc/glibc_2.26.bb b/meta/recipes-core/glibc/glibc_2.26.bb index 135ec4f..ed4ea4f 100644 --- a/meta/recipes-core/glibc/glibc_2.26.bb +++ b/meta/recipes-core/glibc/glibc_2.26.bb @@ -43,6 +43,7 @@ SRC_URI = "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \ file://0026-assert-Suppress-pedantic-warning-caused-by-statement.patch \ file://0027-glibc-reset-dl-load-write-lock-after-forking.patch \ file://0028-Bug-4578-add-ld.so-lock-while-fork.patch \ + file://CVE-2017-15670.patch \ " NATIVESDKFIXES ?= "" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 0/3] Several Glibc security fixes
The pending 2.27 update does not need these. Only apply if that update is delayed too long. affects glibc < 2.27 This will hit stable/Rocko-next shortly Armin Kuster (3): glibc: Security fix CVE-2017-15670 glibc: Security fix CVE-2017-15671 glibc: Security fix for CVE-2017-15804 meta/recipes-core/glibc/glibc/CVE-2017-15670.patch | 61 ++ meta/recipes-core/glibc/glibc/CVE-2017-15671.patch | 215 + meta/recipes-core/glibc/glibc/CVE-2017-15804.patch | 111 +++ meta/recipes-core/glibc/glibc_2.26.bb | 3 + 4 files changed, 390 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15670.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15671.patch create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15804.patch -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 3/3] glibc: Security fix for CVE-2017-15804
From: Armin KusterThe glob function in glob.c in the GNU C Library (aka glibc or libc6) before 2.27 contains a buffer overflow during unescaping of user names with the ~ operator. Affects: glibx < 2.27 Signed-off-by: Armin Kuster --- meta/recipes-core/glibc/glibc/CVE-2017-15804.patch | 111 + meta/recipes-core/glibc/glibc_2.26.bb | 1 + 2 files changed, 112 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15804.patch diff --git a/meta/recipes-core/glibc/glibc/CVE-2017-15804.patch b/meta/recipes-core/glibc/glibc/CVE-2017-15804.patch new file mode 100644 index 000..b0dada3 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/CVE-2017-15804.patch @@ -0,0 +1,111 @@ +From 2fac6a6cd50c22ac28c97d0864306594807ade3e Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Thu, 2 Nov 2017 11:06:45 +0100 +Subject: [PATCH] posix/tst-glob-tilde.c: Add test for bug 22332 + +Upstream-Status: Backport +CVE: CVE-2017-15804 +Affects: glibx < 2.27 +Signed-off-by: Armin Kuster + +--- + ChangeLog | 7 +++ + posix/tst-glob-tilde.c | 53 -- + 2 files changed, 37 insertions(+), 23 deletions(-) + +Index: git/posix/tst-glob-tilde.c +=== +--- git.orig/posix/tst-glob-tilde.c git/posix/tst-glob-tilde.c +@@ -1,4 +1,4 @@ +-/* Check for GLOB_TIDLE heap allocation issues (bug 22320, bug 22325). ++/* Check for GLOB_TIDLE heap allocation issues (bugs 22320, 22325, 22332). +Copyright (C) 2017 Free Software Foundation, Inc. +This file is part of the GNU C Library. + +@@ -34,6 +34,9 @@ static int do_nocheck; + /* Flag which indicates whether to pass the GLOB_MARK flag. */ + static int do_mark; + ++/* Flag which indicates whether to pass the GLOB_NOESCAPE flag. */ ++static int do_noescape; ++ + static void + one_test (const char *prefix, const char *middle, const char *suffix) + { +@@ -45,6 +48,8 @@ one_test (const char *prefix, const char + flags |= GLOB_NOCHECK; + if (do_mark) + flags |= GLOB_MARK; ++ if (do_noescape) ++flags |= GLOB_NOESCAPE; + glob_t gl; + /* This glob call might result in crashes or memory leaks. */ + if (glob (pattern, flags, NULL, ) == 0) +@@ -105,28 +110,30 @@ do_test (void) + for (do_onlydir = 0; do_onlydir < 2; ++do_onlydir) + for (do_nocheck = 0; do_nocheck < 2; ++do_nocheck) + for (do_mark = 0; do_mark < 2; ++do_mark) +-for (int base_idx = 0; base_sizes[base_idx] >= 0; ++base_idx) +- { +-for (int size_skew = -max_size_skew; size_skew <= max_size_skew; +- ++size_skew) +- { +-int size = base_sizes[base_idx] + size_skew; +-if (size < 0) +- continue; +- +-const char *user_name = repeating_string (size); +-one_test ("~", user_name, "/a/b"); +- } +- +-const char *user_name = repeating_string (base_sizes[base_idx]); +-one_test ("~", user_name, ""); +-one_test ("~", user_name, "/"); +-one_test ("~", user_name, "/a"); +-one_test ("~", user_name, "/*/*"); +-one_test ("~", user_name, "\\/"); +-one_test ("/~", user_name, ""); +-one_test ("*/~", user_name, "/a/b"); +- } ++ for (do_noescape = 0; do_noescape < 2; ++do_noescape) ++for (int base_idx = 0; base_sizes[base_idx] >= 0; ++base_idx) ++ { ++for (int size_skew = -max_size_skew; size_skew <= max_size_skew; ++ ++size_skew) ++ { ++int size = base_sizes[base_idx] + size_skew; ++if (size < 0) ++ continue; ++ ++const char *user_name = repeating_string (size); ++one_test ("~", user_name, "/a/b"); ++one_test ("~", user_name, "x\\x\\xx\\a"); ++ } ++ ++const char *user_name = repeating_string (base_sizes[base_idx]); ++one_test ("~", user_name, ""); ++one_test ("~", user_name, "/"); ++one_test ("~", user_name, "/a"); ++one_test ("~", user_name, "/*/*"); ++one_test ("~", user_name, "\\/"); ++one_test ("/~", user_name, ""); ++one_test ("*/~", user_name, "/a/b"); ++ } + + free (repeat); + +Index: git/ChangeLog +=== +--- git.orig/ChangeLog git/ChangeLog +@@ -1,3 +1,9 @@ ++2017-10-22 Paul Eggert ++ ++ [BZ #22332] ++ * posix/glob.c (__glob): Fix buffer overflow during GLOB_TILDE ++ unescaping. ++ + 2017-10-21 Florian Weimer + + * posix/Makefile (tests): Add tst-glob-tilde. diff --git
[OE-core] [PATCH 2/3] glibc: Security fix CVE-2017-15671
From: Armin KusterThe glob function in glob.c in the GNU C Library (aka glibc or libc6) before 2.27, when invoked with GLOB_TILDE, could skip freeing allocated memory when processing the ~ operator with a long user name, potentially leading to a denial of service (memory leak). Affects: glibc < 2.27 Signed-off-by: Armin Kuster --- meta/recipes-core/glibc/glibc/CVE-2017-15671.patch | 215 + meta/recipes-core/glibc/glibc_2.26.bb | 1 + 2 files changed, 216 insertions(+) create mode 100644 meta/recipes-core/glibc/glibc/CVE-2017-15671.patch diff --git a/meta/recipes-core/glibc/glibc/CVE-2017-15671.patch b/meta/recipes-core/glibc/glibc/CVE-2017-15671.patch new file mode 100644 index 000..425aaa7 --- /dev/null +++ b/meta/recipes-core/glibc/glibc/CVE-2017-15671.patch @@ -0,0 +1,215 @@ +From 6182b3708b7af316454c81467538a8c20c1b046d Mon Sep 17 00:00:00 2001 +From: Florian Weimer +Date: Sat, 21 Oct 2017 18:03:30 +0200 +Subject: [PATCH] glob: Add new test tst-glob-tilde + +The new test checks for memory leaks (see bug 22325) and attempts +to trigger the buffer overflow in bug 22320. + +(cherry picked from commit e80fc1fc98bf614eb01cf8325503df3a1451a99c) + +Upstream-Status: Backport +CVE: CVE-2017-15671 +Affects: glibx < 2.27 +Signed-off-by: Armin Kuster + +--- + ChangeLog | 8 +++ + posix/Makefile | 11 +++- + posix/tst-glob-tilde.c | 136 + + 3 files changed, 153 insertions(+), 2 deletions(-) + create mode 100644 posix/tst-glob-tilde.c + +Index: git/ChangeLog +=== +--- git.orig/ChangeLog git/ChangeLog +@@ -1,3 +1,11 @@ ++2017-10-21 Florian Weimer ++ ++ * posix/Makefile (tests): Add tst-glob-tilde. ++ (tests-special): Add tst-glob-tilde-mem.out ++ (tst-glob-tilde-ENV): Set MALLOC_TRACE. ++ (tst-glob-tilde-mem.out): Add mtrace check. ++ * posix/tst-glob-tilde.c: New file. ++ + 2017-10-20 Paul Eggert + +[BZ #22320] +Index: git/posix/Makefile +=== +--- git.orig/posix/Makefile git/posix/Makefile +@@ -93,7 +93,7 @@ tests:= test-errno tstgetopt testfnm r + tst-fnmatch3 bug-regex36 tst-getaddrinfo5 \ + tst-posix_spawn-fd tst-posix_spawn-setsid \ + tst-posix_fadvise tst-posix_fadvise64 \ +- tst-sysconf-empty-chroot ++ tst-sysconf-empty-chroot tst-glob-tilde + tests-internal:= bug-regex5 bug-regex20 bug-regex33 \ + tst-rfc3484 tst-rfc3484-2 tst-rfc3484-3 + xtests:= bug-ga2 +@@ -141,7 +141,8 @@ tests-special += $(objpfx)bug-regex2-mem +$(objpfx)tst-rxspencer-no-utf8-mem.out $(objpfx)tst-pcre-mem.out \ +$(objpfx)tst-boost-mem.out $(objpfx)tst-getconf.out \ +$(objpfx)bug-glob2-mem.out $(objpfx)tst-vfork3-mem.out \ +- $(objpfx)tst-fnmatch-mem.out $(objpfx)bug-regex36-mem.out ++ $(objpfx)tst-fnmatch-mem.out $(objpfx)bug-regex36-mem.out \ ++ $(objpfx)tst-glob-tilde-mem.out + xtests-special += $(objpfx)bug-ga2-mem.out + endif + +@@ -350,6 +351,12 @@ $(objpfx)bug-glob2-mem.out: $(objpfx)bug + $(common-objpfx)malloc/mtrace $(objpfx)bug-glob2.mtrace > $@; \ + $(evaluate-test) + ++tst-glob-tilde-ENV = MALLOC_TRACE=$(objpfx)tst-glob-tilde.mtrace ++ ++$(objpfx)tst-glob-tilde-mem.out: $(objpfx)tst-glob-tilde.out ++ $(common-objpfx)malloc/mtrace $(objpfx)tst-glob-tilde.mtrace > $@; \ ++ $(evaluate-test) ++ + $(inst_libexecdir)/getconf: $(inst_bindir)/getconf \ + $(objpfx)getconf.speclist FORCE + $(addprefix $(..)./scripts/mkinstalldirs ,\ +Index: git/posix/tst-glob-tilde.c +=== +--- /dev/null git/posix/tst-glob-tilde.c +@@ -0,0 +1,136 @@ ++/* Check for GLOB_TIDLE heap allocation issues (bug 22320, bug 22325). ++ Copyright (C) 2017 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, see ++
Re: [OE-core] [PATCH 3/3] oeqa/selftest/runtime_test: simplify postinst testing
On 23/11/2017 00:04, Ross Burton wrote: Update the packages and file names to reflect the new postinst recipe. Fix a sh syntax error in the run_serial file exists test which was hidden by a logic problem in the status code. Remove the older test_verify_postinst as it's effectively a subset of test_postinst_rootfs_and_boot, and doesn't work: when booting under systemd the strings it searches for are not output to the console, but the test still passes. Signed-off-by: Ross Burton--- meta/lib/oeqa/selftest/cases/runtime_test.py | 82 +++- 1 file changed, 19 insertions(+), 63 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/runtime_test.py b/meta/lib/oeqa/selftest/cases/runtime_test.py index 25270b7535b..1c69255b568 100644 --- a/meta/lib/oeqa/selftest/cases/runtime_test.py +++ b/meta/lib/oeqa/selftest/cases/runtime_test.py @@ -167,55 +167,6 @@ class TestImage(OESelftestTestCase): class Postinst(OESelftestTestCase): @OETestID(1540) We're effectively stating that test ID 1540 and test ID 1545 are both covered by the same test method, right? Perhaps we don't need to maintain both test cases in Testopia, as we'll only ever see both tests pass or fail? -def test_verify_postinst(self): -""" -Summary: The purpose of this test is to verify the execution order of postinst Bugzilla ID: [5319] -Expected : -1. Compile a minimal image. -2. The compiled image will add the created layer with the recipes postinst[ abdpt] -3. Run qemux86 -4. Validate the task execution order -Author: Francisco Pedraza -""" -features = 'INHERIT += "testimage"\n' -features += 'CORE_IMAGE_EXTRA_INSTALL += "postinst-at-rootfs \ -postinst-delayed-a \ -postinst-delayed-b \ -postinst-delayed-d \ -postinst-delayed-p \ -postinst-delayed-t \ -"\n' -self.write_config(features) - -bitbake('core-image-minimal -f ') - -postinst_list = ['100-postinst-at-rootfs', - '101-postinst-delayed-a', - '102-postinst-delayed-b', - '103-postinst-delayed-d', - '104-postinst-delayed-p', - '105-postinst-delayed-t'] -path_workdir = get_bb_var('WORKDIR','core-image-minimal') -workspacedir = 'testimage/qemu_boot_log' -workspacedir = os.path.join(path_workdir, workspacedir) -rexp = re.compile("^Running postinst .*/(?P.*)\.\.\.$") -with runqemu('core-image-minimal') as qemu: -with open(workspacedir) as f: -found = False -idx = 0 -for line in f.readlines(): -line = line.strip().replace("^M","") -if not line: # To avoid empty lines -continue -m = rexp.search(line) -if m: -self.assertEqual(postinst_list[idx], m.group('postinst'), "Fail") -idx = idx+1 -found = True -elif found: -self.assertEqual(idx, len(postinst_list), "Not found all postinsts") -break - @OETestID(1545) def test_postinst_rootfs_and_boot(self): """ @@ -234,16 +185,22 @@ postinst-delayed-t \ for initialization managers: sysvinit and systemd. """ -file_rootfs_name = "this-was-created-at-rootfstime" -fileboot_name = "this-was-created-at-first-boot" -rootfs_pkg = 'postinst-at-rootfs' -boot_pkg = 'postinst-delayed-a' + +import oe.path + +vars = get_bb_vars(("IMAGE_ROOTFS", "sysconfdir"), "core-image-minimal") +rootfs = vars["IMAGE_ROOTFS"] +self.assertIsNotNone(rootfs) +sysconfdir = vars["sysconfdir"] +self.assertIsNotNone(sysconfdir) +# Need to use oe.path here as sysconfdir starts with / +hosttestdir = oe.path.join(rootfs, sysconfdir, "postinst-test") +targettestdir = os.path.join(sysconfdir, "postinst-test") for init_manager in ("sysvinit", "systemd"): for classes in ("package_rpm", "package_deb", "package_ipk"): with self.subTest(init_manager=init_manager, package_class=classes): -features = 'MACHINE = "qemux86"\n' -features += 'CORE_IMAGE_EXTRA_INSTALL += "%s %s "\n'% (rootfs_pkg, boot_pkg) +features = 'CORE_IMAGE_EXTRA_INSTALL = "postinst-delayed-b"\n' features += 'IMAGE_FEATURES += "package-management empty-root-password"\n' The indentation doesn't look right here? features += 'PACKAGE_CLASSES = "%s"\n' % classes if init_manager == "systemd": @@ -255,13 +212,12 @@
Re: [OE-core] [PATCH] initramfs-live-boot-tiny: Create the initramfs-live-boot-tiny recipe
Certainly, I can set that up as one of my ToDo features for this release. On 11/22/2017 02:42 PM, Otavio Salvador wrote: On Wed, Nov 22, 2017 at 3:09 PM, Alejandro Hernandezwrote: The original initramfs-live-boot recipe RDEPENDS on udev, which is ok since the init script relies some of its functionality on udevadm and such, but on core-image-tiny-initramfs the init script simply drops to shell after a basic setup, so udev is not needed. This patch splits up an initramfs-live-boot-tiny recipe which does not use udev, but uses busybox-mdev instead, eudev installed about 600 extra Kilobytes to core-image-tiny-initramfs userspace, by avoiding to install eudev we achieve an even smaller footprint (almost 40% smaller). Signed-off-by: Alejandro Hernandez It'd be nice if you could migrate to initramfs-framework as it provides mdev module and has part of this already done. -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] recipes-multimedia/gstreamer: Add gst-validate recipe
Patchtest already told you about the SUMMARY typo. I've been meaning to look at this for automated gstreamer QA, would you say this would be simple enough and there would be value in integrating this into oe-selftest? Ross On 22 November 2017 at 21:31, Aníbal Limónwrote: > From: Aníbal Limón > > The gst-validate is a tool to run integration tests of Gstreamer > components [1]. > > [1] > https://blogs.gnome.org/tsaunier/2014/04/21/gst- > validate-a-suite-of-tools-to-run-integration-tests-for-gstreamer-2/ > > Signed-off-by: Aníbal Limón > --- > .../recipes-multimedia/gstreamer/gst-validate_1.12.3.bb | 17 > + > 1 file changed, 17 insertions(+) > create mode 100644 meta/recipes-multimedia/gstreamer/gst-validate_1.12.3. > bb > > diff --git a/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb > b/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb > new file mode 100644 > index 00..7477bf7a4e > --- /dev/null > +++ b/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb > @@ -0,0 +1,17 @@ > +SUMARRY = "Gstreamer validation tool" > +DESCRIPTION = "A Tool to test GStreamer components" > +HOMEPAGE = "https://gstreamer.freedesktop.org/releases/gst- > validate/1.12.3.html" > +SECTION = "multimedia" > + > +LICENSE = "LGPLv2.1" > +LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" > + > +SRC_URI = "https://gstreamer.freedesktop.org/src/${PN}/${PN}-${PV}.tar.xz > " > +SRC_URI[md5sum] = "623edc479a1e5c1e76bd7e1cf8393253" > +SRC_URI[sha256sum] = "5139949d20274fdd702492438eeab2 > c9e55aa82f60aca17db27ebd3faf08489e" > + > +DEPENDS = "json-glib glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base" > + > +FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* > ${libdir}/gstreamer-1.0/*" > + > +inherit pkgconfig gettext autotools gobject-introspection gtk-doc > -- > 2.11.0 > > -- > ___ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] ✗ patchtest: failure for recipes-multimedia/gstreamer: Add gst-validate recipe
== Series Details == Series: recipes-multimedia/gstreamer: Add gst-validate recipe Revision: 1 URL : https://patchwork.openembedded.org/series/9926/ State : failure == Summary == Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures: * Issue SUMMARY is missing in newly added recipe [test_summary_presence] Suggested fixSpecify the variable SUMMARY in gst-validate If you believe any of these test results are incorrect, please reply to the mailing list (openembedded-core@lists.openembedded.org) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...). --- Guidelines: https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] ltp: improve reproducibility
ltp package contains several gzipped files. Improve reproducibility of the build by ensuring the gzipped files do not contain timestamps in their headers. https://wiki.debian.org/ReproducibleBuilds/TimestampsInGzipHeaders Signed-off-by: Juro Bystricky--- .../ltp/ltp/0038-generate-reproducible-gzip.patch| 20 meta/recipes-extended/ltp/ltp_20170929.bb| 1 + 2 files changed, 21 insertions(+) create mode 100644 meta/recipes-extended/ltp/ltp/0038-generate-reproducible-gzip.patch diff --git a/meta/recipes-extended/ltp/ltp/0038-generate-reproducible-gzip.patch b/meta/recipes-extended/ltp/ltp/0038-generate-reproducible-gzip.patch new file mode 100644 index 000..0153ace --- /dev/null +++ b/meta/recipes-extended/ltp/ltp/0038-generate-reproducible-gzip.patch @@ -0,0 +1,20 @@ +Do not generate timestamps in gzipped file headers. +The timestamps prevent reproducible build. + +Upstream-Status: Submitted [https://github.com/linux-test-project/ltp/pull/233] + +Signed-off-by: Juro Bystricky + +diff --git a/testcases/network/generate.sh b/testcases/network/generate.sh +index 00216a6..939f792 100755 +--- a/testcases/network/generate.sh b/testcases/network/generate.sh +@@ -55,7 +55,7 @@ fi + if [ ! -e "bin.sm" ] ; then + cnt=0 + while [ $cnt -lt 5 ] ; do +- gzip -1 -c ascii.sm >> "bin.sm" ++ gzip -1 -c -n ascii.sm >> "bin.sm" + cnt=$(($cnt + 1)) + done + fi diff --git a/meta/recipes-extended/ltp/ltp_20170929.bb b/meta/recipes-extended/ltp/ltp_20170929.bb index 93a59b3..8a870b3 100644 --- a/meta/recipes-extended/ltp/ltp_20170929.bb +++ b/meta/recipes-extended/ltp/ltp_20170929.bb @@ -49,6 +49,7 @@ SRC_URI = "git://github.com/linux-test-project/ltp.git \ file://0035-fix-test_proc_kill-hang.patch \ file://0036-testcases-network-nfsv4-acl-acl1.c-Security-fix-on-s.patch \ file://0037-ltp-fix-format-security-error.patch \ + file://0038-generate-reproducible-gzip.patch \ " S = "${WORKDIR}/git" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] recipes-multimedia/gstreamer: Add gst-validate recipe
From: Aníbal LimónThe gst-validate is a tool to run integration tests of Gstreamer components [1]. [1] https://blogs.gnome.org/tsaunier/2014/04/21/gst-validate-a-suite-of-tools-to-run-integration-tests-for-gstreamer-2/ Signed-off-by: Aníbal Limón --- .../recipes-multimedia/gstreamer/gst-validate_1.12.3.bb | 17 + 1 file changed, 17 insertions(+) create mode 100644 meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb diff --git a/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb b/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb new file mode 100644 index 00..7477bf7a4e --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gst-validate_1.12.3.bb @@ -0,0 +1,17 @@ +SUMARRY = "Gstreamer validation tool" +DESCRIPTION = "A Tool to test GStreamer components" +HOMEPAGE = "https://gstreamer.freedesktop.org/releases/gst-validate/1.12.3.html; +SECTION = "multimedia" + +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343" + +SRC_URI = "https://gstreamer.freedesktop.org/src/${PN}/${PN}-${PV}.tar.xz; +SRC_URI[md5sum] = "623edc479a1e5c1e76bd7e1cf8393253" +SRC_URI[sha256sum] = "5139949d20274fdd702492438eeab2c9e55aa82f60aca17db27ebd3faf08489e" + +DEPENDS = "json-glib glib-2.0 gstreamer1.0 gstreamer1.0-plugins-base" + +FILES_${PN} += "${datadir}/gstreamer-1.0/* ${libdir}/gst-validate-launcher/* ${libdir}/gstreamer-1.0/*" + +inherit pkgconfig gettext autotools gobject-introspection gtk-doc -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH v2] go: ensure use of BUILD_CC when building bootstrap tools
Yes, just marked it. Thanks for the reminder. Ross On 22 November 2017 at 20:58, Matt Madisonwrote: > On Fri, Nov 17, 2017 at 8:02 AM, Burton, Ross > wrote: > > I had a hunch that was the problem this morning after looking again at > the > > patch set. Thanks for confirming. > > Ross, > > Can the BUILD_CC patch go back into your queue again? > > Thanks, > -Matt > > > > > Ross > > > > On 17 November 2017 at 15:49, Matt Madison wrote: > >> > >> On Thu, Nov 16, 2017 at 3:29 PM, Matt Madison > >> wrote: > >> > On Thu, Nov 16, 2017 at 12:29 PM, Burton, Ross > > >> > wrote: > >> >> Looks like this is failing on some of our autobuilders, such as > >> >> > >> >> https://autobuilder.yocto.io/builders/nightly-musl-x86-64/ > builds/58/steps/BuildImages/logs/stdio > >> > > >> > I'm looking into it. > >> > >> OK, from my testing, it's not this patch that's causing the build > >> failures, it's Khem's "go: Fix build with PIE on musl" patch. > >> > >> The added patch there that changes the default buildmode to 'pie' is > >> causing the external linker to be used for building go_bootstrap and > >> target Go compiler and forcing inclusion of the cgo runtime. It will > >> take some recipe modifications and another patch to Go's make.bash to > >> deal with this, but I'm not sure that this particular patch is even a > >> good idea. Making PIE builds work with musl is OK, but the additional > >> buildmode default change is too much. > >> > >> -Matt > >> > >> > > >> > Thanks, > >> > -Matt > >> > > >> >> > >> >> | cmd/go/internal/vet > >> >> | # cmd/api > >> >> | > >> >> > >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/ > nightly-musl-x86-64/build/build/tmp/work/core2-64-poky- > linux-musl/go/1.9-r0/go/src/host-tools/link: > >> >> running x86_64-poky-linux-musl-gcc failed: exit status 1 > >> >> | > >> >> > >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/ > nightly-musl-x86-64/build/build/tmp/work/core2-64-poky- > linux-musl/go/1.9-r0/build-tmp/go-link-213113620/00.o: > >> >> In function `vfprintf': > >> >> | /usr/include/x86_64-linux-gnu/bits/stdio2.h:127: undefined > reference > >> >> to > >> >> `__vfprintf_chk' > >> >> | > >> >> > >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/ > nightly-musl-x86-64/build/build/tmp/work/core2-64-poky- > linux-musl/go/1.9-r0/build-tmp/go-link-213113620/00.o: > >> >> In function `fprintf': > >> >> | /usr/include/x86_64-linux-gnu/bits/stdio2.h:97: undefined > reference > >> >> to > >> >> `__fprintf_chk' > >> >> | collect2: error: ld returned 1 exit status > >> >> > >> >> It's running x86-64-poky-linux-musl-gcc but using headers from /usr, > >> >> which > >> >> looks wrong. > >> >> > >> >> Ross > >> >> > >> >> > >> >> On 14 November 2017 at 17:21, Matt Madison > >> >> wrote: > >> >>> > >> >>> Yes, drat it, v3 should fix that. > >> >>> > >> >>> Thanks, > >> >>> -Matt > >> >>> > >> >>> On Tue, Nov 14, 2017 at 9:20 AM, Otavio Salvador > >> >>> wrote: > >> >>> > Hello Matt, > >> >>> > > >> >>> > A minor thing: > >> >>> > > >> >>> > Upstream-Status: Pending > >> >>> > > >> >>> > On Tue, Nov 14, 2017 at 3:18 PM, Matt Madison > > >> >>> > wrote: > >> >>> >> For cross-canadian builds, we were accidentally using > >> >>> >> the crosssdk C compiler when building the Go compiler > >> >>> >> bootstrap. Add a patch to the make script to let us > >> >>> >> use BUILD_CC, and prepend do_compile to set it in > >> >>> >> the local environment to ensure that the trailing > >> >>> >> blank gets stripped, since that confuses Go. > >> >>> >> > >> >>> >> [YOCTO #12341] > >> >>> >> > >> >>> >> Signed-off-by: Matt Madison > >> >>> >> --- > >> >>> >> meta/recipes-devtools/go/go-1.9.inc| 1 + > >> >>> >> ...verride-CC-when-building-dist-and-go_boot.patch | 43 > >> >>> >> ++ > >> >>> >> meta/recipes-devtools/go/go-common.inc | 4 ++ > >> >>> >> 3 files changed, 48 insertions(+) > >> >>> >> create mode 100644 > >> >>> >> > >> >>> >> meta/recipes-devtools/go/go-1.9/0010-make.bash-override-CC- > when-building-dist-and-go_boot.patch > >> >>> >> > >> >>> >> diff --git a/meta/recipes-devtools/go/go-1.9.inc > >> >>> >> b/meta/recipes-devtools/go/go-1.9.inc > >> >>> >> index 65adaa8..1dbb5ef 100644 > >> >>> >> --- a/meta/recipes-devtools/go/go-1.9.inc > >> >>> >> +++ b/meta/recipes-devtools/go/go-1.9.inc > >> >>> >> @@ -15,6 +15,7 @@ SRC_URI += "\ > >> >>> >> file://0007-ld-add-soname-to-shareable-objects.patch \ > >> >>> >> > >> >>> >> > >> >>> >> file://0008-make.bash-add-GOHOSTxx-indirection-for-cross-canadia.patch > \ > >> >>> >> > >> >>> >> > >> >>> >> file://0009-cmd-go-buildmode-pie-forces-external-linking-mode-on.patch > \ > >> >>> >> + > >> >>> >> > >> >>> >>
Re: [OE-core] [PATCH v2] go: ensure use of BUILD_CC when building bootstrap tools
On Fri, Nov 17, 2017 at 8:02 AM, Burton, Rosswrote: > I had a hunch that was the problem this morning after looking again at the > patch set. Thanks for confirming. Ross, Can the BUILD_CC patch go back into your queue again? Thanks, -Matt > > Ross > > On 17 November 2017 at 15:49, Matt Madison wrote: >> >> On Thu, Nov 16, 2017 at 3:29 PM, Matt Madison >> wrote: >> > On Thu, Nov 16, 2017 at 12:29 PM, Burton, Ross >> > wrote: >> >> Looks like this is failing on some of our autobuilders, such as >> >> >> >> https://autobuilder.yocto.io/builders/nightly-musl-x86-64/builds/58/steps/BuildImages/logs/stdio >> > >> > I'm looking into it. >> >> OK, from my testing, it's not this patch that's causing the build >> failures, it's Khem's "go: Fix build with PIE on musl" patch. >> >> The added patch there that changes the default buildmode to 'pie' is >> causing the external linker to be used for building go_bootstrap and >> target Go compiler and forcing inclusion of the cgo runtime. It will >> take some recipe modifications and another patch to Go's make.bash to >> deal with this, but I'm not sure that this particular patch is even a >> good idea. Making PIE builds work with musl is OK, but the additional >> buildmode default change is too much. >> >> -Matt >> >> > >> > Thanks, >> > -Matt >> > >> >> >> >> | cmd/go/internal/vet >> >> | # cmd/api >> >> | >> >> >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/go/1.9-r0/go/src/host-tools/link: >> >> running x86_64-poky-linux-musl-gcc failed: exit status 1 >> >> | >> >> >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/go/1.9-r0/build-tmp/go-link-213113620/00.o: >> >> In function `vfprintf': >> >> | /usr/include/x86_64-linux-gnu/bits/stdio2.h:127: undefined reference >> >> to >> >> `__vfprintf_chk' >> >> | >> >> >> >> /home/pokybuild/yocto-autobuilder/yocto-worker/nightly-musl-x86-64/build/build/tmp/work/core2-64-poky-linux-musl/go/1.9-r0/build-tmp/go-link-213113620/00.o: >> >> In function `fprintf': >> >> | /usr/include/x86_64-linux-gnu/bits/stdio2.h:97: undefined reference >> >> to >> >> `__fprintf_chk' >> >> | collect2: error: ld returned 1 exit status >> >> >> >> It's running x86-64-poky-linux-musl-gcc but using headers from /usr, >> >> which >> >> looks wrong. >> >> >> >> Ross >> >> >> >> >> >> On 14 November 2017 at 17:21, Matt Madison >> >> wrote: >> >>> >> >>> Yes, drat it, v3 should fix that. >> >>> >> >>> Thanks, >> >>> -Matt >> >>> >> >>> On Tue, Nov 14, 2017 at 9:20 AM, Otavio Salvador >> >>> wrote: >> >>> > Hello Matt, >> >>> > >> >>> > A minor thing: >> >>> > >> >>> > Upstream-Status: Pending >> >>> > >> >>> > On Tue, Nov 14, 2017 at 3:18 PM, Matt Madison >> >>> > wrote: >> >>> >> For cross-canadian builds, we were accidentally using >> >>> >> the crosssdk C compiler when building the Go compiler >> >>> >> bootstrap. Add a patch to the make script to let us >> >>> >> use BUILD_CC, and prepend do_compile to set it in >> >>> >> the local environment to ensure that the trailing >> >>> >> blank gets stripped, since that confuses Go. >> >>> >> >> >>> >> [YOCTO #12341] >> >>> >> >> >>> >> Signed-off-by: Matt Madison >> >>> >> --- >> >>> >> meta/recipes-devtools/go/go-1.9.inc| 1 + >> >>> >> ...verride-CC-when-building-dist-and-go_boot.patch | 43 >> >>> >> ++ >> >>> >> meta/recipes-devtools/go/go-common.inc | 4 ++ >> >>> >> 3 files changed, 48 insertions(+) >> >>> >> create mode 100644 >> >>> >> >> >>> >> meta/recipes-devtools/go/go-1.9/0010-make.bash-override-CC-when-building-dist-and-go_boot.patch >> >>> >> >> >>> >> diff --git a/meta/recipes-devtools/go/go-1.9.inc >> >>> >> b/meta/recipes-devtools/go/go-1.9.inc >> >>> >> index 65adaa8..1dbb5ef 100644 >> >>> >> --- a/meta/recipes-devtools/go/go-1.9.inc >> >>> >> +++ b/meta/recipes-devtools/go/go-1.9.inc >> >>> >> @@ -15,6 +15,7 @@ SRC_URI += "\ >> >>> >> file://0007-ld-add-soname-to-shareable-objects.patch \ >> >>> >> >> >>> >> >> >>> >> file://0008-make.bash-add-GOHOSTxx-indirection-for-cross-canadia.patch >> >>> >> \ >> >>> >> >> >>> >> >> >>> >> file://0009-cmd-go-buildmode-pie-forces-external-linking-mode-on.patch >> >>> >> \ >> >>> >> + >> >>> >> >> >>> >> file://0010-make.bash-override-CC-when-building-dist-and-go_boot.patch >> >>> >> \ >> >>> >> " >> >>> >> SRC_URI[main.md5sum] = "da2d44ea384076efec43ee1f8b7d45d2" >> >>> >> SRC_URI[main.sha256sum] = >> >>> >> "a4ab229028ed167ba1986825751463605264e44868362ca8e7accc8be057e993" >> >>> >> diff --git >> >>> >> >> >>> >> a/meta/recipes-devtools/go/go-1.9/0010-make.bash-override-CC-when-building-dist-and-go_boot.patch >> >>> >> >> >>> >>
Re: [OE-core] [PATCH] kernel.bbclass: Add cleandirs for do_shared_workdir
On 2017-11-22 1:47 PM, Saul Wold wrote: Ensure we have a clean and empty STAGING_KERNEL_BUILDDIR (kernel-build-artifacts) before creating it, otherwise there might be older artifacts from a prior kernel build. What's the actual error that this triggers ? It would be nice to log it here in the commit message .. or at least a description of the symptoms. [YOCTO #11880] Signed-off-by: Saul Wold--- meta/classes/kernel.bbclass | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 756707a3c25..2a0a7707a14 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -400,6 +400,7 @@ emit_depmod_pkgdata() { PACKAGEFUNCS += "emit_depmod_pkgdata" +do_shared_workdir[cleandirs] += " ${STAGING_KERNEL_BUILDDIR}" do_shared_workdir () { cd ${B} @@ -655,8 +656,6 @@ kernel_do_deploy() { fi done } -do_deploy[cleandirs] = "${DEPLOYDIR}" -do_deploy[dirs] = "${DEPLOYDIR} ${B}" This isn't clear to me. Why does cleaning the STAGING_KERNEL_BUILDDIR as part of the do_shared_workdir mean that we no longer need the clean before the deploy (as well as the deploy dir). Bruce do_deploy[prefuncs] += "package_get_auto_pr" addtask deploy after do_populate_sysroot do_packagedata -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] initramfs-live-boot-tiny: Create the initramfs-live-boot-tiny recipe
On Wed, Nov 22, 2017 at 3:09 PM, Alejandro Hernandezwrote: > The original initramfs-live-boot recipe RDEPENDS on udev, which is ok since > the init script relies some of its functionality on udevadm and such, > but on core-image-tiny-initramfs the init script simply drops to shell > after a basic setup, so udev is not needed. > > This patch splits up an initramfs-live-boot-tiny recipe which does not > use udev, but uses busybox-mdev instead, eudev installed about 600 > extra Kilobytes to core-image-tiny-initramfs userspace, by avoiding to > install eudev we achieve an even smaller footprint (almost 40% smaller). > > Signed-off-by: Alejandro Hernandez It'd be nice if you could migrate to initramfs-framework as it provides mdev module and has part of this already done. -- Otavio Salvador O.S. Systems http://www.ossystems.com.brhttp://code.ossystems.com.br Mobile: +55 (53) 9981-7854Mobile: +1 (347) 903-9750 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] systemd: create wheel sysuser group offline
On Mon, Nov 13, 2017 at 12:59 PM, Andre McCurdywrote: > On Mon, Nov 13, 2017 at 12:26 PM, Patrick Ohly wrote: >> On Mon, 2017-11-13 at 12:18 -0800, Andre McCurdy wrote: >>> On Mon, Nov 13, 2017 at 6:48 AM, Patrick Ohly >> > wrote: >>> > On Thu, 2017-11-09 at 21:54 -0800, Andre McCurdy wrote: >>> > > The default systemd-tmpfiles config file expects to be able to >>> > > create >>> > > files etc belonging to the wheel system group. Currently the >>> > > wheel >>> > > group is created at run time by systemd-sysusers, but that >>> > > doesn't >>> > > happen if systemd-sysusers is disabled (as it currently is by >>> > > default >>> > > when building with musl libc). >>> > >>> > Isn't this something that the systemd_create_users rootfs >>> > postprocess >>> > command in rootfs-postcommands.bbclass already takes care of? >>> >>> systemd_create_users() does a build time pass over the >>> systemd-sysusers config files, but those files are not installed if >>> systemd is configured without sysusers support. >> >> I didn't know that this is optional. To me it sounds like an invalid >> (or let's say, unexpected) configuration to install tmpfiles config >> files but not the sysusers files, because as you said, the tmpfiles may >> depend on the sysusers. > > In the current recipe, there's no control of tmpfiles (so it will > always be enabled) and sysusers is controlled by PACKAGECONFIG > (enabled by default - but only when building with glibc), so the > recipe does allow that combination. > >> Anyway, I just wanted to know because I was wondering whether it is >> really necessary to duplicate the user creation information in the >> systemd recipe. >> Ping. Ross, it looks like you've started to stage the later systemd + musl cleanups in mut. This fix is needed too. -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH][morty] python3: do not hardcode "lib" into site-packages search path
From: Alexander KanavinThis was not working in multilib or x32 setups and amazingly, was not noticed until now. The actual modification is in Lib/site.py, the rest is just devtool moving things around in the patch. Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- .../python/python3/python-3.3-multilib.patch | 290 - 1 file changed, 165 insertions(+), 125 deletions(-) diff --git a/meta/recipes-devtools/python/python3/python-3.3-multilib.patch b/meta/recipes-devtools/python/python3/python-3.3-multilib.patch index 860190340e..08c4403cbf 100644 --- a/meta/recipes-devtools/python/python3/python-3.3-multilib.patch +++ b/meta/recipes-devtools/python/python3/python-3.3-multilib.patch @@ -1,16 +1,34 @@ -Upstream-Status: Pending - -get the sys.lib from python itself and do not use hardcoded value of 'lib' +From 51fe6f22d0ba113674fb358bd11d75fe659bd26e Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 14 May 2013 15:00:26 -0700 +Subject: [PATCH 01/13] get the sys.lib from python itself and do not use + hardcoded value of 'lib' 02/2015 Rebased for 3.4.2 +Upstream-Status: Pending Signed-off-by: Khem Raj Signed-off-by: Alejandro Hernandez -Index: Python-3.5.2/Include/pythonrun.h -=== Python-3.5.2.orig/Include/pythonrun.h -+++ Python-3.5.2/Include/pythonrun.h +--- + Include/pythonrun.h | 3 +++ + Lib/distutils/command/install.py | 4 +++- + Lib/pydoc.py | 2 +- + Lib/site.py | 4 ++-- + Lib/sysconfig.py | 18 +- + Lib/trace.py | 4 ++-- + Makefile.pre.in | 7 +-- + Modules/getpath.c| 10 +- + Python/getplatform.c | 20 + Python/sysmodule.c | 4 + configure.ac | 35 +++ + setup.py | 9 - + 12 files changed, 97 insertions(+), 23 deletions(-) + +diff --git a/Include/pythonrun.h b/Include/pythonrun.h +index 9c2e813..2f79cb6 100644 +--- a/Include/pythonrun.h b/Include/pythonrun.h @@ -23,6 +23,9 @@ typedef struct { } PyCompilerFlags; #endif @@ -21,10 +39,10 @@ Index: Python-3.5.2/Include/pythonrun.h #ifndef Py_LIMITED_API PyAPI_FUNC(int) PyRun_SimpleStringFlags(const char *, PyCompilerFlags *); PyAPI_FUNC(int) PyRun_AnyFileFlags(FILE *, const char *, PyCompilerFlags *); -Index: Python-3.5.2/Lib/distutils/command/install.py -=== Python-3.5.2.orig/Lib/distutils/command/install.py -+++ Python-3.5.2/Lib/distutils/command/install.py +diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py +index 67db007..b46b45b 100644 +--- a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py @@ -19,6 +19,8 @@ from site import USER_BASE from site import USER_SITE HAS_USER_SITE = True @@ -43,10 +61,10 @@ Index: Python-3.5.2/Lib/distutils/command/install.py 'headers': '$base/include/python$py_version_short$abiflags/$dist_name', 'scripts': '$base/bin', 'data' : '$base', -Index: Python-3.5.2/Lib/pydoc.py -=== Python-3.5.2.orig/Lib/pydoc.py -+++ Python-3.5.2/Lib/pydoc.py +diff --git a/Lib/pydoc.py b/Lib/pydoc.py +index 3ca08c9..6528730 100755 +--- a/Lib/pydoc.py b/Lib/pydoc.py @@ -384,7 +384,7 @@ class Doc: docmodule = docclass = docroutine = docother = docproperty = docdata = fail @@ -56,10 +74,75 @@ Index: Python-3.5.2/Lib/pydoc.py "python%d.%d" % sys.version_info[:2])): """Return the location of module docs or None""" -Index: Python-3.5.2/Lib/trace.py -=== Python-3.5.2.orig/Lib/trace.py -+++ Python-3.5.2/Lib/trace.py +diff --git a/Lib/site.py b/Lib/site.py +index 3f78ef5..511931e 100644 +--- a/Lib/site.py b/Lib/site.py +@@ -303,12 +303,12 @@ def getsitepackages(prefixes=None): + seen.add(prefix) + + if os.sep == '/': +-sitepackages.append(os.path.join(prefix, "lib", ++sitepackages.append(os.path.join(prefix, sys.lib, + "python" + sys.version[:3], + "site-packages")) + else: + sitepackages.append(prefix) +-sitepackages.append(os.path.join(prefix, "lib", "site-packages")) ++sitepackages.append(os.path.join(prefix, sys.lib, "site-packages")) + if sys.platform == "darwin": + # for framework builds
[OE-core] [PATCH] kernel.bbclass: Add cleandirs for do_shared_workdir
Ensure we have a clean and empty STAGING_KERNEL_BUILDDIR (kernel-build-artifacts) before creating it, otherwise there might be older artifacts from a prior kernel build. [YOCTO #11880] Signed-off-by: Saul Wold--- meta/classes/kernel.bbclass | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 756707a3c25..2a0a7707a14 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -400,6 +400,7 @@ emit_depmod_pkgdata() { PACKAGEFUNCS += "emit_depmod_pkgdata" +do_shared_workdir[cleandirs] += " ${STAGING_KERNEL_BUILDDIR}" do_shared_workdir () { cd ${B} @@ -655,8 +656,6 @@ kernel_do_deploy() { fi done } -do_deploy[cleandirs] = "${DEPLOYDIR}" -do_deploy[dirs] = "${DEPLOYDIR} ${B}" do_deploy[prefuncs] += "package_get_auto_pr" addtask deploy after do_populate_sysroot do_packagedata -- 2.13.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] ✗ patchtest: failure for fontconfig: Fix namespace conflicts with glibc (rev3)
== Series Details == Series: fontconfig: Fix namespace conflicts with glibc (rev3) Revision: 3 URL : https://patchwork.openembedded.org/series/4342/ State : failure == Summary == Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures: * Issue Upstream-Status is Submitted, but it is not mentioned where [test_upstream_status_presence_format] Suggested fixInclude where 0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch was submitted Current Upstream-Status: Submitted Standard format Upstream-Status: Submitted [where] If you believe any of these test results are incorrect, please reply to the mailing list (openembedded-core@lists.openembedded.org) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...). --- Guidelines: https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH][morty] fontconfig: Fix namespace conflicts with glibc
On 11/22/2017 09:51 AM, Ross Burton wrote: > From: Khem Raj> > glibc 2.25 will come with TS 18661-1 macro definitions in limits.h which ends > with following errors > > | ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error: > 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function) > | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, > PRI_##NAME##_STRONG, PRI_##NAME##_WEAK }, > |^ > | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro > 'FC_OBJECT' > | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) > | ^ > | ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error: 'PRI_CHAR_WIDTH_WEAK' > undeclared here (not in a function) > | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, > PRI_##NAME##_STRONG, PRI_##NAME##_WEAK }, > | > ^ > | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro > 'FC_OBJECT' > | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) > | ^ > | make[3]: *** [Makefile:632: fcmatch.lo] Error 1 > > (From OE-Core rev: 3575826752e7140da493c7f560fb5fcf483fc9b4) > > Signed-off-by: Khem Raj > Signed-off-by: Ross Burton > Signed-off-by: Richard Purdie merged. thanks - armin > --- > ...icts-with-integer-width-macros-from-TS-18.patch | 72 > ++ > .../fontconfig/fontconfig_2.12.1.bb| 1 + > 2 files changed, 73 insertions(+) > create mode 100644 > meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch > > diff --git > a/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch > > b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch > new file mode 100644 > index 000..cad71707adc > --- /dev/null > +++ > b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch > @@ -0,0 +1,72 @@ > +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001 > +From: Khem Raj > +Date: Sun, 11 Dec 2016 14:32:00 -0800 > +Subject: [PATCH] Avoid conflicts with integer width macros from TS > + 18661-1:2014 > + > +glibc 2.25+ has now defined these macros in > +https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a > + > +Signed-off-by: Khem Raj > +--- > +Upstream-Status: Submitted > + > + fontconfig/fontconfig.h | 2 +- > + src/fcobjs.h| 2 +- > + src/fcobjshash.gperf| 2 +- > + src/fcobjshash.h| 2 +- > + 4 files changed, 4 insertions(+), 4 deletions(-) > + > +Index: fontconfig-2.12.1/fontconfig/fontconfig.h > +=== > +--- fontconfig-2.12.1.orig/fontconfig/fontconfig.h > fontconfig-2.12.1/fontconfig/fontconfig.h > +@@ -128,7 +128,8 @@ typedef int FcBool; > + #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION > + > + /* Adjust outline rasterizer */ > +-#define FC_CHAR_WIDTH "charwidth" /* Int */ > ++#define FC_CHARWIDTH"charwidth" /* Int */ > ++#define FC_CHAR_WIDTH FC_CHARWIDTH > + #define FC_CHAR_HEIGHT "charheight"/* Int */ > + #define FC_MATRIX "matrix"/* FcMatrix */ > + > +Index: fontconfig-2.12.1/src/fcobjs.h > +=== > +--- fontconfig-2.12.1.orig/src/fcobjs.h > fontconfig-2.12.1/src/fcobjs.h > +@@ -51,7 +51,7 @@ FC_OBJECT (DPI,FcTypeDouble, NULL) > + FC_OBJECT (RGBA,FcTypeInteger, NULL) > + FC_OBJECT (SCALE, FcTypeDouble, NULL) > + FC_OBJECT (MINSPACE,FcTypeBool, NULL) > +-FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) > ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL) > + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL) > + FC_OBJECT (MATRIX, FcTypeMatrix, NULL) > + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet) > +Index: fontconfig-2.12.1/src/fcobjshash.gperf > +=== > +--- fontconfig-2.12.1.orig/src/fcobjshash.gperf > fontconfig-2.12.1/src/fcobjshash.gperf > +@@ -44,7 +44,7 @@ int id; > + "rgba",FC_RGBA_OBJECT > + "scale",FC_SCALE_OBJECT > + "minspace",FC_MINSPACE_OBJECT > +-"charwidth",FC_CHAR_WIDTH_OBJECT > ++"charwidth",FC_CHARWIDTH_OBJECT > + "charheight",FC_CHAR_HEIGHT_OBJECT > + "matrix",FC_MATRIX_OBJECT > + "charset",FC_CHARSET_OBJECT > +Index: fontconfig-2.12.1/src/fcobjshash.h > +=== > +--- fontconfig-2.12.1.orig/src/fcobjshash.h >
[OE-core] [PATCH][morty] fontconfig: Fix namespace conflicts with glibc
From: Khem Rajglibc 2.25 will come with TS 18661-1 macro definitions in limits.h which ends with following errors | ../../fontconfig-2.12.1/src/fcmatch.c:324:63: error: 'PRI_CHAR_WIDTH_STRONG' undeclared here (not in a function) | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK }, |^ | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT' | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) | ^ | ../../fontconfig-2.12.1/src/fcmatch.c:324:84: error: 'PRI_CHAR_WIDTH_WEAK' undeclared here (not in a function) | #define FC_OBJECT(NAME, Type, Cmp) { FC_##NAME##_OBJECT, Cmp, PRI_##NAME##_STRONG, PRI_##NAME##_WEAK }, | ^ | ../../fontconfig-2.12.1/src/fcobjs.h:54:1: note: in expansion of macro 'FC_OBJECT' | FC_OBJECT (CHAR_WIDTH, FcTypeInteger, NULL) | ^ | make[3]: *** [Makefile:632: fcmatch.lo] Error 1 (From OE-Core rev: 3575826752e7140da493c7f560fb5fcf483fc9b4) Signed-off-by: Khem Raj Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- ...icts-with-integer-width-macros-from-TS-18.patch | 72 ++ .../fontconfig/fontconfig_2.12.1.bb| 1 + 2 files changed, 73 insertions(+) create mode 100644 meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch diff --git a/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch new file mode 100644 index 000..cad71707adc --- /dev/null +++ b/meta/recipes-graphics/fontconfig/fontconfig/0001-Avoid-conflicts-with-integer-width-macros-from-TS-18.patch @@ -0,0 +1,72 @@ +From 20cddc824c6501c2082cac41b162c34cd5fcc530 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Sun, 11 Dec 2016 14:32:00 -0800 +Subject: [PATCH] Avoid conflicts with integer width macros from TS + 18661-1:2014 + +glibc 2.25+ has now defined these macros in +https://sourceware.org/git/?p=glibc.git;a=commit;h=5b17fd0da62bf923cb61d1bb7b08cf2e1f1f9c1a + +Signed-off-by: Khem Raj +--- +Upstream-Status: Submitted + + fontconfig/fontconfig.h | 2 +- + src/fcobjs.h| 2 +- + src/fcobjshash.gperf| 2 +- + src/fcobjshash.h| 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +Index: fontconfig-2.12.1/fontconfig/fontconfig.h +=== +--- fontconfig-2.12.1.orig/fontconfig/fontconfig.h fontconfig-2.12.1/fontconfig/fontconfig.h +@@ -128,7 +128,8 @@ typedef intFcBool; + #define FC_USER_CACHE_FILE".fonts.cache-" FC_CACHE_VERSION + + /* Adjust outline rasterizer */ +-#define FC_CHAR_WIDTH "charwidth" /* Int */ ++#define FC_CHARWIDTH "charwidth" /* Int */ ++#define FC_CHAR_WIDTH FC_CHARWIDTH + #define FC_CHAR_HEIGHT"charheight"/* Int */ + #define FC_MATRIX "matrix"/* FcMatrix */ + +Index: fontconfig-2.12.1/src/fcobjs.h +=== +--- fontconfig-2.12.1.orig/src/fcobjs.h fontconfig-2.12.1/src/fcobjs.h +@@ -51,7 +51,7 @@ FC_OBJECT (DPI, FcTypeDouble, NULL) + FC_OBJECT (RGBA, FcTypeInteger, NULL) + FC_OBJECT (SCALE, FcTypeDouble, NULL) + FC_OBJECT (MINSPACE, FcTypeBool, NULL) +-FC_OBJECT (CHAR_WIDTH,FcTypeInteger, NULL) ++FC_OBJECT (CHARWIDTH, FcTypeInteger, NULL) + FC_OBJECT (CHAR_HEIGHT, FcTypeInteger, NULL) + FC_OBJECT (MATRIX,FcTypeMatrix, NULL) + FC_OBJECT (CHARSET, FcTypeCharSet, FcCompareCharSet) +Index: fontconfig-2.12.1/src/fcobjshash.gperf +=== +--- fontconfig-2.12.1.orig/src/fcobjshash.gperf fontconfig-2.12.1/src/fcobjshash.gperf +@@ -44,7 +44,7 @@ int id; + "rgba",FC_RGBA_OBJECT + "scale",FC_SCALE_OBJECT + "minspace",FC_MINSPACE_OBJECT +-"charwidth",FC_CHAR_WIDTH_OBJECT ++"charwidth",FC_CHARWIDTH_OBJECT + "charheight",FC_CHAR_HEIGHT_OBJECT + "matrix",FC_MATRIX_OBJECT + "charset",FC_CHARSET_OBJECT +Index: fontconfig-2.12.1/src/fcobjshash.h +=== +--- fontconfig-2.12.1.orig/src/fcobjshash.h fontconfig-2.12.1/src/fcobjshash.h +@@ -284,7 +284,7 @@ FcObjectTypeLookup (register const char + {(int)(long)&((struct FcObjectTypeNamePool_t *)0)->FcObjectTypeNamePool_str43,FC_CHARSET_OBJECT}, + {-1}, + #line 47 "fcobjshash.gperf" +- {(int)(long)&((struct FcObjectTypeNamePool_t
[OE-core] [PATCH] initramfs-live-boot-tiny: Create the initramfs-live-boot-tiny recipe
The original initramfs-live-boot recipe RDEPENDS on udev, which is ok since the init script relies some of its functionality on udevadm and such, but on core-image-tiny-initramfs the init script simply drops to shell after a basic setup, so udev is not needed. This patch splits up an initramfs-live-boot-tiny recipe which does not use udev, but uses busybox-mdev instead, eudev installed about 600 extra Kilobytes to core-image-tiny-initramfs userspace, by avoiding to install eudev we achieve an even smaller footprint (almost 40% smaller). Signed-off-by: Alejandro Hernandez--- .../images/core-image-tiny-initramfs.bb | 2 +- .../initrdscripts/initramfs-live-boot-tiny_1.0.bb | 21 + 2 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb diff --git a/meta/recipes-core/images/core-image-tiny-initramfs.bb b/meta/recipes-core/images/core-image-tiny-initramfs.bb index 16995e6580a..51d08a0cd1c 100644 --- a/meta/recipes-core/images/core-image-tiny-initramfs.bb +++ b/meta/recipes-core/images/core-image-tiny-initramfs.bb @@ -5,7 +5,7 @@ first 'init' program more efficiently. core-image-tiny-initramfs doesn't \ actually generate an image but rather generates boot and rootfs artifacts \ that can subsequently be picked up by external image generation tools such as wic." -PACKAGE_INSTALL = "initramfs-live-boot packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} udev base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" +PACKAGE_INSTALL = "initramfs-live-boot-tiny packagegroup-core-boot dropbear ${VIRTUAL-RUNTIME_base-utils} ${VIRTUAL-RUNTIME_dev_manager} base-passwd ${ROOTFS_BOOTSTRAP_INSTALL}" # Do not pollute the initrd image with rootfs features IMAGE_FEATURES = "" diff --git a/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb new file mode 100644 index 000..7a9a8ecae26 --- /dev/null +++ b/meta/recipes-core/initrdscripts/initramfs-live-boot-tiny_1.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "Live image init script" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" +DEPENDS = "virtual/kernel" +RDEPENDS_${PN} = "busybox-mdev" +SRC_URI = "file://init-live.sh" + +PR = "r12" + +S = "${WORKDIR}" + +do_install() { +install -m 0755 ${WORKDIR}/init-live.sh ${D}/init +install -d ${D}/dev +mknod -m 622 ${D}/dev/console c 5 1 +} + +FILES_${PN} += " /init /dev " + +# Due to kernel dependency +PACKAGE_ARCH = "${MACHINE_ARCH}" -- 2.12.3 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 5/6] kern-tools-native: fix upstream version check
Signed-off-by: Alexander Kanavin--- meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb index 3a3992a2927..8ccd8cee146 100644 --- a/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +++ b/meta/recipes-kernel/kern-tools/kern-tools-native_git.bb @@ -12,6 +12,7 @@ inherit native SRC_URI = "git://git.yoctoproject.org/yocto-kernel-tools.git" S = "${WORKDIR}" +UPSTREAM_CHECK_COMMITS = "1" do_compile() { : -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 6/6] neon: remove the recipe
For these reasons: 1) Upstream website has been dead for quite a while now; 2) Nothing is actually using neon in oe-core, except one gstreamer plugin in gst-plugins-bad (and I couldn't find evidence of that plugin being used anywhere) However, the recipe is still required by libmusicbrainz in meta-oe and so it will be moved there (with the tarball taken from debian). Signed-off-by: Alexander Kanavin--- .../packagegroups/packagegroup-self-hosted.bb | 1 - .../packagegroups/packagegroup-core-lsb.bb | 1 - .../gstreamer/gstreamer1.0-plugins-bad.inc | 2 +- meta/recipes-support/neon/neon/pkgconfig.patch | 15 - meta/recipes-support/neon/neon_0.30.2.bb | 38 -- 5 files changed, 1 insertion(+), 56 deletions(-) delete mode 100644 meta/recipes-support/neon/neon/pkgconfig.patch delete mode 100644 meta/recipes-support/neon/neon_0.30.2.bb diff --git a/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb b/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb index ff42866e327..adb0c56c3a5 100644 --- a/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb +++ b/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb @@ -136,7 +136,6 @@ RDEPENDS_packagegroup-self-hosted-extended = "\ mtools \ ncurses \ ncurses-terminfo-base \ -neon \ nfs-utils \ nfs-utils-client \ openssl \ diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb b/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb index 5baaf351e18..e1f34d5af11 100644 --- a/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb +++ b/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb @@ -68,7 +68,6 @@ RDEPENDS_packagegroup-core-sys-extended = "\ mc-helpers-perl \ mdadm \ minicom \ -neon \ parted \ quota \ screen \ diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc index 7be15d99731..ca2ea9e963a 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad.inc @@ -22,7 +22,7 @@ PACKAGECONFIG ??= " \ ${@bb.utils.contains('DISTRO_FEATURES', 'bluetooth', 'bluez', '', d)} \ ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \ ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland egl', '', d)} \ -bz2 curl dash dtls hls neon rsvg sbc smoothstreaming sndfile uvch264 webp \ +bz2 curl dash dtls hls rsvg sbc smoothstreaming sndfile uvch264 webp \ " PACKAGECONFIG[assrender] = "--enable-assrender,--disable-assrender,libass" diff --git a/meta/recipes-support/neon/neon/pkgconfig.patch b/meta/recipes-support/neon/neon/pkgconfig.patch deleted file mode 100644 index 239dba8e255..000 --- a/meta/recipes-support/neon/neon/pkgconfig.patch +++ /dev/null @@ -1,15 +0,0 @@ -Upstream-Status: Inappropriate [configuration] - - neon.pc.in |2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - neon-0.30.1.orig/neon.pc.in -+++ neon-0.30.1/neon.pc.in -@@ -7,5 +7,5 @@ Name: neon - Description: HTTP/WebDAV client library - Version: @NEON_VERSION@ - Libs: -L${libdir} -lneon @NEON_PC_LIBS@ --Libs.private: @NEON_LIBS@ -+Libs.private: -L${libdir} -lz -lgcrypt -lgpg-error -lexpat -lgnutls - Cflags: -I${includedir}/neon @NEON_CFLAGS@ diff --git a/meta/recipes-support/neon/neon_0.30.2.bb b/meta/recipes-support/neon/neon_0.30.2.bb deleted file mode 100644 index 5792c56f3aa..000 --- a/meta/recipes-support/neon/neon_0.30.2.bb +++ /dev/null @@ -1,38 +0,0 @@ -SUMMARY = "An HTTP and WebDAV client library with a C interface" -HOMEPAGE = "http://www.webdav.org/neon/; -SECTION = "libs" -LICENSE = "LGPLv2+" -LIC_FILES_CHKSUM = "file://src/COPYING.LIB;md5=f30a9716ef3762e3467a2f62bf790f0a \ - file://src/ne_utils.h;beginline=1;endline=20;md5=2caca609538eddaa6f6adf120a218037" - -SRC_URI = "http://www.webdav.org/${BPN}/${BPN}-${PV}.tar.gz \ - file://pkgconfig.patch \ - " - -SRC_URI[md5sum] = "e28d77bf14032d7f5046b3930704ef41" -SRC_URI[sha256sum] = "db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca" - -inherit autotools binconfig-disabled lib_package pkgconfig - -# Enable gnutls or openssl, not both -PACKAGECONFIG ?= "expat gnutls libproxy webdav zlib" -PACKAGECONFIG_class-native = "expat gnutls webdav zlib" - -PACKAGECONFIG[expat] = "--with-expat,--without-expat,expat" -PACKAGECONFIG[gnutls] = "--with-ssl=gnutls,,gnutls" -PACKAGECONFIG[gssapi] = "--with-gssapi,--without-gssapi,krb5" -PACKAGECONFIG[libproxy] = "--with-libproxy,--without-libproxy,libproxy" -PACKAGECONFIG[libxml2] = "--with-libxml2,--without-libxml2,libxml2" -PACKAGECONFIG[openssl] = "--with-ssl=openssl,,openssl" -PACKAGECONFIG[webdav] = "--enable-webdav,--disable-webdav," -PACKAGECONFIG[zlib] =
[OE-core] [PATCH 1/6] meta-selftest: fix upstream version checks for devtool test recipes
So that they're reported correctly when checking 'universe' for latest upstream versions. Signed-off-by: Alexander Kanavin--- meta-selftest/recipes-test/devtool/devtool-test-patch-gz.bb | 1 + meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb | 2 ++ meta-selftest/recipes-test/devtool/devtool-upgrade-test2_git.bb | 2 ++ 3 files changed, 5 insertions(+) diff --git a/meta-selftest/recipes-test/devtool/devtool-test-patch-gz.bb b/meta-selftest/recipes-test/devtool/devtool-test-patch-gz.bb index e45ee9f60a0..fc3799590cc 100644 --- a/meta-selftest/recipes-test/devtool/devtool-test-patch-gz.bb +++ b/meta-selftest/recipes-test/devtool/devtool-test-patch-gz.bb @@ -6,6 +6,7 @@ DEPENDS = "libxres libxext virtual/libx11 ncurses" SRC_URI = "http://downloads.yoctoproject.org/releases/xrestop/xrestop-0.4.tar.gz \ file://readme.patch.gz \ " +UPSTREAM_VERSION_UNKNOWN = "1" S = "${WORKDIR}/xrestop-0.4" diff --git a/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb b/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb index 4049be292b4..333ecac7ed8 100644 --- a/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb +++ b/meta-selftest/recipes-test/devtool/devtool-upgrade-test1_1.5.3.bb @@ -4,6 +4,8 @@ LIC_FILES_CHKSUM = "file://doc/COPYING;md5=9c50db2589ee3ef10a9b7b2e50ce1d02" SRC_URI = "http://www.ivarch.com/programs/sources/pv-${PV}.tar.gz \ file://0001-Add-a-note-line-to-the-quick-reference.patch" +UPSTREAM_CHECK_URI = "http://www.ivarch.com/programs/pv.shtml; +RECIPE_NO_UPDATE_REASON = "This recipe is used to test devtool upgrade feature" SRC_URI[md5sum] = "9365d86bd884222b4bf1039b5a9ed1bd" SRC_URI[sha256sum] = "681bcca9784bf3cb2207e68236d1f68e2aa7b80f999b5750dc77dcd756e81fbc" diff --git a/meta-selftest/recipes-test/devtool/devtool-upgrade-test2_git.bb b/meta-selftest/recipes-test/devtool/devtool-upgrade-test2_git.bb index 450636ef182..07b83276fb9 100644 --- a/meta-selftest/recipes-test/devtool/devtool-upgrade-test2_git.bb +++ b/meta-selftest/recipes-test/devtool/devtool-upgrade-test2_git.bb @@ -12,6 +12,8 @@ PV = "0.1+git${SRCPV}" PR = "r2" SRC_URI = "git://git.yoctoproject.org/dbus-wait" +UPSTREAM_CHECK_COMMITS = "1" +RECIPE_NO_UPDATE_REASON = "This recipe is used to test devtool upgrade feature" S = "${WORKDIR}/git" -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 4/6] opkg-utils: fix upstream version check
Signed-off-by: Alexander Kanavin--- meta/recipes-devtools/opkg-utils/opkg-utils_0.3.5.bb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.5.bb b/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.5.bb index 646cc8ff9a8..514ba7912a3 100644 --- a/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.5.bb +++ b/meta/recipes-devtools/opkg-utils/opkg-utils_0.3.5.bb @@ -11,6 +11,8 @@ SRC_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/${BPN}/snapshot/${BPN}-${PV file://0001-Switch-all-scripts-to-use-Python-3.x.patch \ " SRC_URI_append_class-native = " file://tar_ignore_error.patch" +UPSTREAM_CHECK_URI = "http://git.yoctoproject.org/cgit/cgit.cgi/opkg-utils/refs/; + SRC_URI[md5sum] = "a19e09c79bf1152aac62e8a120d679ff" SRC_URI[sha256sum] = "7f4b08912e26a3f4f6f423f3b4e7157a73b1f3a7483fc59b216d1a80b50b0c38" -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 3/6] m4-native: fix upstream version check
Signed-off-by: Alexander Kanavin--- meta/recipes-devtools/m4/m4-native_1.4.18.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-devtools/m4/m4-native_1.4.18.bb b/meta/recipes-devtools/m4/m4-native_1.4.18.bb index 06d8aa244e5..407ad89330e 100644 --- a/meta/recipes-devtools/m4/m4-native_1.4.18.bb +++ b/meta/recipes-devtools/m4/m4-native_1.4.18.bb @@ -11,3 +11,4 @@ do_configure() { oe_runconf } +UPSTREAM_CHECK_URI = "${GNU_MIRROR}/m4/" -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 2/6] cdrtools-native: fix upstream version check
Signed-off-by: Alexander Kanavin--- meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb index 0e0be627108..78e1565e474 100644 --- a/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb +++ b/meta/recipes-devtools/cdrtools/cdrtools-native_3.01.bb @@ -8,6 +8,7 @@ LICENSE = "GPLv2 & CDDL-1.0 & LGPLv2.1+" LIC_FILES_CHKSUM = "file://COPYING;md5=32f68170be424c2cd64804337726b312" SRC_URI = "${SOURCEFORGE_MIRROR}/project/cdrtools/cdrtools-${REALPV}.tar.bz2" +UPSTREAM_VERSION_UNKNOWN = "1" SRC_URI[md5sum] = "7d45c5b7e1f78d85d1583b361aee6e8b" SRC_URI[sha256sum] = "ed282eb6276c4154ce6a0b5dee0bdb81940d0cbbfc7d03f769c4735ef5f5860f" -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/3] postinst: fix and simplify the postinst test recipe
On 11/22/2017 06:09 PM, Burton, Ross wrote: + if [ -n "$D" ]; then + echo "Delaying ${PN}-delayed-b until first boot" exit 1 - fi I still think this 'exit 1' madness should be fixed. But maybe some other time. Yes, agreed totally. In the meantime, I'll rebase my patchset that does it to these changes you made to the test :) https://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/commit/?h=akanavin/dnf-rpm4-postinst-fix=a7f61bc88e5dd1668e0f8adee8ed5e06d2b4989c from https://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=akanavin/dnf-rpm4-postinst-fix Alex -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/3] postinst: fix and simplify the postinst test recipe
On 22 November 2017 at 16:09, Alexander Kanavin < alexander.kana...@linux.intel.com> wrote: > On 11/22/2017 06:04 PM, Ross Burton wrote: > > +if [ -n "$D" ]; then >> +echo "Delaying ${PN}-delayed-b until first boot" >> exit 1 >> - fi >> > > I still think this 'exit 1' madness should be fixed. But maybe some other > time. > Yes, agreed totally. Ross -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 2/3] postinst: fix and simplify the postinst test recipe
On 11/22/2017 06:04 PM, Ross Burton wrote: +if [ -n "$D" ]; then +echo "Delaying ${PN}-delayed-b until first boot" exit 1 - fi I still think this 'exit 1' madness should be fixed. But maybe some other time. Alex -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 3/3] oeqa/selftest/runtime_test: simplify postinst testing
Update the packages and file names to reflect the new postinst recipe. Fix a sh syntax error in the run_serial file exists test which was hidden by a logic problem in the status code. Remove the older test_verify_postinst as it's effectively a subset of test_postinst_rootfs_and_boot, and doesn't work: when booting under systemd the strings it searches for are not output to the console, but the test still passes. Signed-off-by: Ross Burton--- meta/lib/oeqa/selftest/cases/runtime_test.py | 82 +++- 1 file changed, 19 insertions(+), 63 deletions(-) diff --git a/meta/lib/oeqa/selftest/cases/runtime_test.py b/meta/lib/oeqa/selftest/cases/runtime_test.py index 25270b7535b..1c69255b568 100644 --- a/meta/lib/oeqa/selftest/cases/runtime_test.py +++ b/meta/lib/oeqa/selftest/cases/runtime_test.py @@ -167,55 +167,6 @@ class TestImage(OESelftestTestCase): class Postinst(OESelftestTestCase): @OETestID(1540) -def test_verify_postinst(self): -""" -Summary: The purpose of this test is to verify the execution order of postinst Bugzilla ID: [5319] -Expected : -1. Compile a minimal image. -2. The compiled image will add the created layer with the recipes postinst[ abdpt] -3. Run qemux86 -4. Validate the task execution order -Author: Francisco Pedraza -""" -features = 'INHERIT += "testimage"\n' -features += 'CORE_IMAGE_EXTRA_INSTALL += "postinst-at-rootfs \ -postinst-delayed-a \ -postinst-delayed-b \ -postinst-delayed-d \ -postinst-delayed-p \ -postinst-delayed-t \ -"\n' -self.write_config(features) - -bitbake('core-image-minimal -f ') - -postinst_list = ['100-postinst-at-rootfs', - '101-postinst-delayed-a', - '102-postinst-delayed-b', - '103-postinst-delayed-d', - '104-postinst-delayed-p', - '105-postinst-delayed-t'] -path_workdir = get_bb_var('WORKDIR','core-image-minimal') -workspacedir = 'testimage/qemu_boot_log' -workspacedir = os.path.join(path_workdir, workspacedir) -rexp = re.compile("^Running postinst .*/(?P.*)\.\.\.$") -with runqemu('core-image-minimal') as qemu: -with open(workspacedir) as f: -found = False -idx = 0 -for line in f.readlines(): -line = line.strip().replace("^M","") -if not line: # To avoid empty lines -continue -m = rexp.search(line) -if m: -self.assertEqual(postinst_list[idx], m.group('postinst'), "Fail") -idx = idx+1 -found = True -elif found: -self.assertEqual(idx, len(postinst_list), "Not found all postinsts") -break - @OETestID(1545) def test_postinst_rootfs_and_boot(self): """ @@ -234,16 +185,22 @@ postinst-delayed-t \ for initialization managers: sysvinit and systemd. """ -file_rootfs_name = "this-was-created-at-rootfstime" -fileboot_name = "this-was-created-at-first-boot" -rootfs_pkg = 'postinst-at-rootfs' -boot_pkg = 'postinst-delayed-a' + +import oe.path + +vars = get_bb_vars(("IMAGE_ROOTFS", "sysconfdir"), "core-image-minimal") +rootfs = vars["IMAGE_ROOTFS"] +self.assertIsNotNone(rootfs) +sysconfdir = vars["sysconfdir"] +self.assertIsNotNone(sysconfdir) +# Need to use oe.path here as sysconfdir starts with / +hosttestdir = oe.path.join(rootfs, sysconfdir, "postinst-test") +targettestdir = os.path.join(sysconfdir, "postinst-test") for init_manager in ("sysvinit", "systemd"): for classes in ("package_rpm", "package_deb", "package_ipk"): with self.subTest(init_manager=init_manager, package_class=classes): -features = 'MACHINE = "qemux86"\n' -features += 'CORE_IMAGE_EXTRA_INSTALL += "%s %s "\n'% (rootfs_pkg, boot_pkg) +features = 'CORE_IMAGE_EXTRA_INSTALL = "postinst-delayed-b"\n' features += 'IMAGE_FEATURES += "package-management empty-root-password"\n' features += 'PACKAGE_CLASSES = "%s"\n' % classes if init_manager == "systemd": @@ -255,13 +212,12 @@ postinst-delayed-t \ bitbake('core-image-minimal') -file_rootfs_created = os.path.join(get_bb_var('IMAGE_ROOTFS', "core-image-minimal"), - file_rootfs_name) -found = os.path.isfile(file_rootfs_created) -
[OE-core] [PATCH 2/3] postinst: fix and simplify the postinst test recipe
Reduce the number of packages, and fix some syntax and logic errors in the scripts. Signed-off-by: Ross Burton--- .../recipes-test/postinst/postinst_1.0.bb | 158 +++-- 1 file changed, 51 insertions(+), 107 deletions(-) diff --git a/meta-selftest/recipes-test/postinst/postinst_1.0.bb b/meta-selftest/recipes-test/postinst/postinst_1.0.bb index 6d497342779..112aa08c80f 100644 --- a/meta-selftest/recipes-test/postinst/postinst_1.0.bb +++ b/meta-selftest/recipes-test/postinst/postinst_1.0.bb @@ -1,126 +1,70 @@ +SUMMARY = "Packages to exercise postinstall functions" LICENSE = "MIT" -ALLOW_EMPTY_${PN}-at-rootfs = "1" + +inherit allarch + +PACKAGES = "${PN}-rootfs ${PN}-delayed-a ${PN}-delayed-b" + +ALLOW_EMPTY_${PN}-rootfs = "1" ALLOW_EMPTY_${PN}-delayed-a = "1" ALLOW_EMPTY_${PN}-delayed-b = "1" -ALLOW_EMPTY_${PN}-delayed-d = "1" -ALLOW_EMPTY_${PN}-delayed-p = "1" -ALLOW_EMPTY_${PN}-delayed-t = "1" - -PACKAGES += "${PN}-at-rootfs ${PN}-delayed-a ${PN}-delayed-b ${PN}-delayed-d ${PN}-delayed-p ${PN}-delayed-t" -PROVIDES += "${PN}-at-rootfs ${PN}-delayed-a ${PN}-delayed-b ${PN}-delayed-d ${PN}-delayed-p ${PN}-delayed-t" -FILES_${PN}-delayed-a = "" -FILES_${PN}-delayed-b = "" -FILES_${PN}-delayed-d = "" -FILES_${PN}-delayed-p = "" -FILES_${PN}-delayed-t = "" - -# Runtime dependencies -RDEPENDS_${PN}-delayed-a = "${PN}-at-rootfs" + +RDEPENDS_${PN}-delayed-a = "${PN}-rootfs" RDEPENDS_${PN}-delayed-b = "${PN}-delayed-a" -RDEPENDS_${PN}-delayed-d = "${PN}-delayed-b" -RDEPENDS_${PN}-delayed-p = "${PN}-delayed-d" -RDEPENDS_${PN}-delayed-t = "${PN}-delayed-p" - -# Main recipe post-install -pkg_postinst_${PN}-at-rootfs () { -tfile="/etc/postinsta-test" -touch "$D"/this-was-created-at-rootfstime -if test "x$D" != "x" then -# Need to run on first boot + +TESTDIR = "${sysconfdir}/postinst-test" + +# At rootfs time touch $TESTDIR/rootfs. Errors if the file already exists, or +# if the function runs on first boot. +pkg_postinst_${PN}-rootfs () { +set -e + +if [ -z "$D" ]; then +echo "${PN}-rootfs should have finished at rootfs time" +exit 1 +fi + +if [ -e $D${TESTDIR}/rootfs ]; then +echo "$D${TESTDIR}/rootfs exists, but should not" exit 1 -else -echo "lets write postinst" > $tfile fi + +mkdir -p $D${TESTDIR} +touch $D${TESTDIR}/rootfs } -# Dependency recipes post-installs +# Depends on rootfs, delays until first boot, verifies that the rootfs file was +# written. pkg_postinst_${PN}-delayed-a () { -efile="/etc/postinst-test" -tfile="/etc/postinsta-test" -rdeps="postinst" - -if test "x$D" != "x"; then - # Need to run on first boot - exit 1 -else - touch /etc/this-was-created-at-first-boot - if test -e $efile ; then -echo 'success' > $tfile - else -echo 'fail to install $rdeps first!' >&2 +set -e + +if [ -n "$D" ]; then +echo "Delaying ${PN}-delayed-a until first boot" exit 1 - fi - fi -} +fi -pkg_postinst_${PN}-delayed-b () { -efile="/etc/postinsta-test" -tfile="/etc/postinstb-test" -rdeps="postinsta" - -if test "x$D" != "x"; then - # Need to run on first boot - exit 1 -else - if test -e $efile ; then -echo 'success' > $tfile - else -echo 'fail to install $rdeps first!' >&2 +if [ ! -e ${TESTDIR}/rootfs ]; then +echo "${PN}-delayed-a: ${TESTDIR}/rootfs not found" exit 1 - fi - fi +fi + +touch ${TESTDIR}/delayed-a } -pkg_postinst_${PN}-delayed-d () { -efile="/etc/postinstb-test" -tfile="/etc/postinstd-test" -rdeps="postinstb" - -if test "x$D" != "x"; then - # Need to run on first boot - exit 1 -else - if test -e $efile ; then -echo 'success' > $tfile - else -echo 'fail to install $rdeps first!' >&2 +# Depends on delayed-a, delays until first boot, verifies that the delayed-a file was +# written. This verifies the ordering between delayed postinsts. +pkg_postinst_${PN}-delayed-b () { +set -e + +if [ -n "$D" ]; then +echo "Delaying ${PN}-delayed-b until first boot" exit 1 - fi - fi -} +fi -pkg_postinst_${PN}-delayed-p () { -efile="/etc/postinstd-test" -tfile="/etc/postinstp-test" -rdeps="postinstd" - -if test "x$D" != "x"; then - # Need to run on first boot - exit 1 -else - if test -e $efile ; then -echo 'success' > $tfile - else -echo 'fail to install $rdeps first!' >&2 +if [ ! -e ${TESTDIR}/delayed-a ]; then +echo "${PN}-delayed-b: ${TESTDIR}/delayed-a not found" exit 1 - fi - fi -} +fi -pkg_postinst_${PN}-delayed-t () { -efile="/etc/postinstp-test" -tfile="/etc/postinstt-test" -rdeps="postinstp" - -if test "x$D" != "x"; then - # Need to run on first boot - exit 1 -else -
[OE-core] [PATCH 1/3] oeqa/commands: don't break if get_bb_vars is passed a tuple
get_bb_vars was using variables.copy() to duplicate the list of variables passed but this function only exists in lists [1,2] and not tuples (1,2). Instead of throwing an exception if the variables are in a tuple, simply construct a new list using the passed sequence-like object. Signed-off-by: Ross Burton--- meta/lib/oeqa/utils/commands.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/lib/oeqa/utils/commands.py b/meta/lib/oeqa/utils/commands.py index 0bb90028dc6..cad0bea0be9 100644 --- a/meta/lib/oeqa/utils/commands.py +++ b/meta/lib/oeqa/utils/commands.py @@ -227,7 +227,7 @@ def get_bb_vars(variables=None, target=None, postconfig=None): bbenv = get_bb_env(target, postconfig=postconfig) if variables is not None: -variables = variables.copy() +variables = list(variables) var_re = re.compile(r'^(export )?(?P\w+(_.*)?)="(?P.*)"$') unset_re = re.compile(r'^unset (?P\w+)$') lastline = None -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] bin_package: fail if ${S} doesn't actually contain anything
On Tue, Nov 21, 2017 at 4:53 PM, Ross Burtonwrote: > If the user is trying to use bin_package but the SRC_URI hasn't extracted > anything into ${S}, which is easily done when writing a recipe by hand, > instead > of silently shippping an empty package abort the build. > I was thinking about this the other day, as it’s a long standing annoyance, I think we should add a new pwd or cwd flag which is used in preference to the last entry in `dirs` if it’s set, and which errors if the dir doesn’t exist and isn’t listed in `dirs`, then drop `${S}` from dirs. Thoughts? -- Christopher Larson kergoth at gmail dot com Founder - BitBake, OpenEmbedded, OpenZaurus Senior Software Engineer, Mentor Graphics -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 1/3] systemd: fix formatting IDE storage does not trigger "change" uevents
If you send a change for the kernel configuration, I can merge it, but not activate it (i.e. I won't send SRCREV bumps), so as long as the autobuilder can build a branch, we can queue this part of the change for testing. Got it, thanks //Hongxu Bruce 3. Most importantly, how to test, when find a way, the ideally is to add the test case to oe-core's meta-selftest I should do some investigation on the storage test. So I think I should do 3 first, and then 1/2 later //Hongxu Ross -- "Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end" -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH 1/3] systemd: fix formatting IDE storage does not trigger "change" uevents
On Tue, Nov 21, 2017 at 10:36 PM, Hongxu Jiawrote: > On 2017年11月21日 19:31, Burton, Ross wrote: > > On 21 November 2017 at 07:00, Hongxu Jia wrote: > >> 1. Tweak kernel-cache to remove CONFIG_IDE for all available bsp. >> It require necessary test to prove it is safe to remove it. >> If the test is OK, I will send patch to yocto mailing list. >> > > I know you have your own huge autobuilder framework inside WR but I'll > happily throw a patch against oe-core at the public autobuilders for extra > testing. > > > No problem, I would like the public autobuilders. > > But there several banners: > > 1. I do not have account on public autobuilder > https://autobuilder.yocto.io/ > > Maybe I should ask Michael or Joshua for help > > 2. The fix is on kernel-cache, not directly on oe-core, > So it is difficult to use autobuilder > >Maybe I should ask Bruce for help > If you send a change for the kernel configuration, I can merge it, but not activate it (i.e. I won't send SRCREV bumps), so as long as the autobuilder can build a branch, we can queue this part of the change for testing. Bruce > > 3. Most importantly, how to test, when find a way, > the ideally is to add the test case to oe-core's > meta-selftest > >I should do some investigation on the storage test. > > So I think I should do 3 first, and then 1/2 later > > //Hongxu > > Ross > > > -- "Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end" -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] wpa-supplicant: add a missing WPA_COMMON_CTRL_IFACE definition
From: Ming LiuThe WPA_COMMON_CTRL_IFACE definition is missing, which leads to obvious problems since there is no way to access the ctrl socket. So add it in. Signed-off-by: Ming Liu --- .../recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa-supplicant.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa-supplicant.sh b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa-supplicant.sh index 5c9e5d3..35a1aa6 100644 --- a/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa-supplicant.sh +++ b/meta/recipes-connectivity/wpa-supplicant/wpa-supplicant/wpa-supplicant.sh @@ -4,6 +4,7 @@ WPA_SUP_BIN="/usr/sbin/wpa_supplicant" WPA_SUP_PNAME="wpa_supplicant" WPA_SUP_PIDFILE="/var/run/wpa_supplicant.$IFACE.pid" +WPA_COMMON_CTRL_IFACE="/var/run/wpa_supplicant" WPA_SUP_OPTIONS="-B -P $WPA_SUP_PIDFILE -i $IFACE" VERBOSITY=0 -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH v6] do_image: Implement IMAGE_ROOTFS_EXCLUDE_PATH feature.
On 22/11/17 14:31, Alexander Kanavin wrote: > On 11/22/2017 03:13 PM, Kristian Amlie wrote: > >>> Bear with the pre-release freeze period please; once rocko is out >>> patches will start flowing to master again. >> >> So now that rocko has been out for a while, can we get this in please? >> Already reviewed, and rebased patch is included. > > Please do pay attention to what the recent Yocto Project Status emails > say. Specifically: > > " Until we resolve these issues patches will continue to be slow to > merge, if at all. This also blocks several core developers from doing > any feature work at this point in time (e.g. layer setup tool is on > hold, again). > > · We can only continue to stress that unless others step up and > help to try and root cause these issues, things will stall with the > project." > > The way things are with the project now, contributors are many, > maintainers are few. If you can balance things out a little bit, that > would be much appreciated. Oh sorry, I missed that, I will keep an eye on the status updates! -- Kristian -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH v6] do_image: Implement IMAGE_ROOTFS_EXCLUDE_PATH feature.
On 11/22/2017 03:13 PM, Kristian Amlie wrote: Bear with the pre-release freeze period please; once rocko is out patches will start flowing to master again. So now that rocko has been out for a while, can we get this in please? Already reviewed, and rebased patch is included. Please do pay attention to what the recent Yocto Project Status emails say. Specifically: " Until we resolve these issues patches will continue to be slow to merge, if at all. This also blocks several core developers from doing any feature work at this point in time (e.g. layer setup tool is on hold, again). ·We can only continue to stress that unless others step up and help to try and root cause these issues, things will stall with the project." The way things are with the project now, contributors are many, maintainers are few. If you can balance things out a little bit, that would be much appreciated. Alex -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v1] systemd: Avoid fsck because time is out of sync on first boot.
By default, systemd uses its build time as the epoch. When systemd is launched on a system without a real time clock, this time will be detected as in the future and an fsck will be done. Setting this to 0 results in an epoch of January 1, 1970 which is detected as an invalid time and the fsck will be skipped. Signed-off-by: Kristian Amlie--- meta/recipes-core/systemd/systemd_234.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-core/systemd/systemd_234.bb b/meta/recipes-core/systemd/systemd_234.bb index 6b8745b..86c04fe 100644 --- a/meta/recipes-core/systemd/systemd_234.bb +++ b/meta/recipes-core/systemd/systemd_234.bb @@ -170,6 +170,7 @@ EXTRA_OECONF = " --with-rootprefix=${rootprefix} \ --without-python \ --with-sysvrcnd-path=${sysconfdir} \ --with-firmware-path=${nonarch_base_libdir}/firmware \ + --with-time-epoch=0 \ " # per the systemd README, define VALGRIND=1 to run under valgrind CFLAGS .= "${@bb.utils.contains('PACKAGECONFIG', 'valgrind', ' -DVALGRIND=1', '', d)}" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] mtd-utils: Fix flash_eraseall installation conflict
override correctly busybox's applet when CONFIG_FLASH_ERASEALL=y is set Error: update-alternatives: not linking /builds/image/1.0-r0/rootfs/usr/ sbin/flash_eraseall to /bin/busybox.nosuid since /builds/image/1.0-r0/ rootfs/usr/sbin/flash_eraseall exists and is not a link Signed-off-by: Andrej Valek--- meta/recipes-devtools/mtd/mtd-utils_git.bb | 6 +- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/mtd/mtd-utils_git.bb b/meta/recipes-devtools/mtd/mtd-utils_git.bb index 4fbc54f..56952b5 100644 --- a/meta/recipes-devtools/mtd/mtd-utils_git.bb +++ b/meta/recipes-devtools/mtd/mtd-utils_git.bb @@ -5,7 +5,7 @@ LICENSE = "GPLv2+" LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \ file://include/common.h;beginline=1;endline=17;md5=ba05b07912a44ea2bf81ce409380049c" -inherit autotools pkgconfig +inherit autotools pkgconfig update-alternatives DEPENDS = "zlib lzo e2fsprogs util-linux" @@ -30,6 +30,10 @@ PACKAGECONFIG[xattr] = ",,acl," EXTRA_OEMAKE = "'CC=${CC}' 'RANLIB=${RANLIB}' 'AR=${AR}' 'CFLAGS=${CFLAGS} ${@bb.utils.contains('PACKAGECONFIG', 'xattr', '', '-DWITHOUT_XATTR', d)} -I${S}/include' 'BUILDDIR=${S}'" +ALTERNATIVE_${PN} = "flash_eraseall" +ALTERNATIVE_LINK_NAME[flash_eraseall] = "/usr/sbin/flash_eraseall" +ALTERNATIVE_PRIORITY[flash_eraseall] = "100" + do_install () { oe_runmake install DESTDIR=${D} SBINDIR=${sbindir} MANDIR=${mandir} INCLUDEDIR=${includedir} } -- 2.1.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v7] do_image: Implement IMAGE_ROOTFS_EXCLUDE_PATH feature.
This is a direct followup from the earlier 6602392db3d39 commit in wic. It works more or less the same way: The variable specifies a list of directories relative to the root of the rootfs, and these directories will be excluded from the resulting rootfs image. If an entry ends with a slash, only the contents are omitted, not the directory itself. Since the intended use of the variable is to exclude certain directories from the rootfs, and then include said directories in other partitions, it is not natural for this variable to be respected for image creators that create multi partition images. These can turn the feature off locally by defining: do_image_myfs[respect_exclude_path] = "0" Specifically, "wic" and "multiubi" come with the feature disabled. Signed-off-by: Kristian Amlie--- meta/classes/image.bbclass | 84 +++- meta/classes/image_types.bbclass | 1 + meta/classes/image_types_wic.bbclass | 1 + 3 files changed, 84 insertions(+), 2 deletions(-) diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index d93de02..d378663 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -117,7 +117,8 @@ def rootfs_variables(d): 'IMAGE_ROOTFS_MAXSIZE','IMAGE_NAME','IMAGE_LINK_NAME','IMAGE_MANIFEST','DEPLOY_DIR_IMAGE','IMAGE_FSTYPES','IMAGE_INSTALL_COMPLEMENTARY','IMAGE_LINGUAS', 'MULTILIBRE_ALLOW_REP','MULTILIB_TEMP_ROOTFS','MULTILIB_VARIANTS','MULTILIBS','ALL_MULTILIB_PACKAGE_ARCHS','MULTILIB_GLOBAL_VARIANTS','BAD_RECOMMENDATIONS','NO_RECOMMENDATIONS', 'PACKAGE_ARCHS','PACKAGE_CLASSES','TARGET_VENDOR','TARGET_ARCH','TARGET_OS','OVERRIDES','BBEXTENDVARIANT','FEED_DEPLOYDIR_BASE_URI','INTERCEPT_DIR','USE_DEVFS', - 'CONVERSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED', 'IMGDEPLOYDIR', 'PACKAGE_EXCLUDE_COMPLEMENTARY', 'REPRODUCIBLE_TIMESTAMP_ROOTFS'] + 'CONVERSIONTYPES', 'IMAGE_GEN_DEBUGFS', 'ROOTFS_RO_UNNEEDED', 'IMGDEPLOYDIR', 'PACKAGE_EXCLUDE_COMPLEMENTARY', 'REPRODUCIBLE_TIMESTAMP_ROOTFS', + 'IMAGE_ROOTFS_EXCLUDE_PATH'] variables.extend(rootfs_command_variables(d)) variables.extend(variable_depends(d)) return " ".join(variables) @@ -506,8 +507,9 @@ python () { d.setVarFlag(task, 'func', '1') d.setVarFlag(task, 'fakeroot', '1') -d.appendVarFlag(task, 'prefuncs', ' ' + debug + ' set_image_size') +d.appendVarFlag(task, 'prefuncs', ' ' + debug + ' set_image_size prepare_excluded_directories') d.prependVarFlag(task, 'postfuncs', ' create_symlinks') +d.appendVarFlag(task, 'postfuncs', ' cleanup_excluded_directories') d.appendVarFlag(task, 'subimages', ' ' + ' '.join(subimages)) d.appendVarFlag(task, 'vardeps', ' ' + ' '.join(vardeps)) d.appendVarFlag(task, 'vardepsexclude', 'DATETIME DATE ' + ' '.join(vardepsexclude)) @@ -516,6 +518,84 @@ python () { bb.build.addtask(task, 'do_image_complete', after, d) } +python prepare_excluded_directories() { +exclude_var = d.getVar('IMAGE_ROOTFS_EXCLUDE_PATH') +if not exclude_var: +return + +taskname = d.getVar("BB_CURRENTTASK") + +if d.getVarFlag('do_%s' % taskname, 'respect_exclude_path') == '0': +bb.debug(1, "'IMAGE_ROOTFS_EXCLUDE_PATH' is set but 'respect_exclude_path' variable flag is 0 for this image type, so ignoring it") +return + +import shutil +from oe.path import copyhardlinktree + +exclude_list = exclude_var.split() + +rootfs_orig = d.getVar('IMAGE_ROOTFS') +# We need a new rootfs directory we can delete files from. Copy to +# workdir. +new_rootfs = os.path.realpath(os.path.join(d.getVar("WORKDIR"), "rootfs.%s" % taskname)) + +if os.path.lexists(new_rootfs): +shutil.rmtree(os.path.join(new_rootfs)) + +copyhardlinktree(rootfs_orig, new_rootfs) + +for orig_path in exclude_list: +path = orig_path +if os.path.isabs(path): +bb.fatal("IMAGE_ROOTFS_EXCLUDE_PATH: Must be relative: %s" % orig_path) + +full_path = os.path.realpath(os.path.join(new_rootfs, path)) + +# Disallow climbing outside of parent directory using '..', +# because doing so could be quite disastrous (we will delete the +# directory). +if not full_path.startswith(new_rootfs): +bb.fatal("'%s' points to a path outside the rootfs" % orig_path) + +if path.endswith(os.sep): +# Delete content only. +for entry in os.listdir(full_path): +full_entry = os.path.join(full_path, entry) +if os.path.isdir(full_entry) and not os.path.islink(full_entry): +shutil.rmtree(full_entry) +else: +os.remove(full_entry) +else: +# Delete whole directory. +
Re: [OE-core] [PATCH v6] do_image: Implement IMAGE_ROOTFS_EXCLUDE_PATH feature.
On 13/10/17 12:37, Alexander Kanavin wrote: >> ... > > Bear with the pre-release freeze period please; once rocko is out > patches will start flowing to master again. So now that rocko has been out for a while, can we get this in please? Already reviewed, and rebased patch is included. -- Kristian -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] relocate_sdk.py: remove hardcoded SDK path
This patch removes hardcodes added to relocate_sdk.py during SDK build, making it flexible and reusable. Now default SDK path is passed to the script as parameter rather then harcoded inside it. This allows to reuse this script for multiple relocations, and adds possibility to relocate SDK multiple times Signed-off-by: Ruslan Bilovol--- meta/classes/populate_sdk_base.bbclass | 5 - meta/files/toolchain-shar-relocate.sh | 2 +- scripts/relocate_sdk.py| 17 + 3 files changed, 10 insertions(+), 14 deletions(-) diff --git a/meta/classes/populate_sdk_base.bbclass b/meta/classes/populate_sdk_base.bbclass index 424c63c..e7aa5a8 100644 --- a/meta/classes/populate_sdk_base.bbclass +++ b/meta/classes/populate_sdk_base.bbclass @@ -152,11 +152,6 @@ do_populate_sdk[stamp-extra-info] = "${MACHINE}${SDKMACHINE}" fakeroot create_sdk_files() { cp ${COREBASE}/scripts/relocate_sdk.py ${SDK_OUTPUT}/${SDKPATH}/ - - # Replace the ##DEFAULT_INSTALL_DIR## with the correct pattern. - # Escape special characters like '+' and '.' in the SDKPATH - escaped_sdkpath=$(echo ${SDKPATH} |sed -e "s:[\+\.]:\0:g") - sed -i -e "s:##DEFAULT_INSTALL_DIR##:$escaped_sdkpath:" ${SDK_OUTPUT}/${SDKPATH}/relocate_sdk.py } python check_sdk_sysroots() { diff --git a/meta/files/toolchain-shar-relocate.sh b/meta/files/toolchain-shar-relocate.sh index e3c1001..f82ff2b 100644 --- a/meta/files/toolchain-shar-relocate.sh +++ b/meta/files/toolchain-shar-relocate.sh @@ -36,7 +36,7 @@ if [ x\${PYTHON} = "x" ]; then echo "SDK could not be relocated. No python found." exit 1 fi -\${PYTHON} ${env_setup_script%/*}/relocate_sdk.py $target_sdk_dir $dl_path $executable_files +\${PYTHON} ${env_setup_script%/*}/relocate_sdk.py $DEFAULT_INSTALL_DIR $target_sdk_dir $dl_path $executable_files EOF $SUDO_EXEC mv $tdir/relocate_sdk.sh ${env_setup_script%/*}/relocate_sdk.sh diff --git a/scripts/relocate_sdk.py b/scripts/relocate_sdk.py index c752fa2..0d5a6f5 100755 --- a/scripts/relocate_sdk.py +++ b/scripts/relocate_sdk.py @@ -38,8 +38,6 @@ else: def b(x): return x.encode(sys.getfilesystemencoding()) -old_prefix = re.compile(b("##DEFAULT_INSTALL_DIR##")) - def get_arch(): f.seek(0) e_ident =f.read(16) @@ -212,19 +210,22 @@ def change_dl_sysdirs(elf_file_name): f.write(sysdirslen) # MAIN -if len(sys.argv) < 4: +if len(sys.argv) < 5: sys.exit(-1) # In python > 3, strings may also contain Unicode characters. So, convert # them to bytes if sys.version_info < (3,): -new_prefix = sys.argv[1] -new_dl_path = sys.argv[2] +new_prefix = sys.argv[2] +new_dl_path = sys.argv[3] else: -new_prefix = sys.argv[1].encode() -new_dl_path = sys.argv[2].encode() +new_prefix = sys.argv[2].encode() +new_dl_path = sys.argv[3].encode() + +executables_list = sys.argv[4:] -executables_list = sys.argv[3:] +old_prefix_ne = b(sys.argv[1]) +old_prefix = re.compile(re.escape(old_prefix_ne)); for e in executables_list: perms = os.stat(e)[stat.ST_MODE] -- 1.9.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCHv2 0/4] wic: Further enhance UUID / fstab support
Hi Tom, Thank you for the great patchset! +1 On Fri, Nov 17, 2017 at 11:08:16AM -0500, Tom Rini wrote: > Hey all, > > So, per Ed's feedback on my first series, I went and spent some time > trying to figure out how to have wic know what the UUID would be when > updating the fstab. It turns out the easiest answer here is to have WIC > make the UUID. Per Otavio's concern last time, I also make sure that > the filesystem UUID can be passed in, for reproducibility. One thing to > keep in mind here is that FAT filesystem UUIDs are a bit funny to deal > with as mkfs.vfat / mkdosfs / etc want to be given a 32bit hexadecimal > value. But when we talk mount, it must be split and it must be in > uppercase. To make the rest of the code easier I'm encoding the '0x' > portion into part.fsuuid rather than doing "-i 0x%s" in a bunch of > places. > > While preparing all of this, I found a few minor things such as we did > not test for squashfs and --use-uuid (not supported) and an incorrect > comment around the btrfs support. > > Since v1, I've added a testcase into wic.Wic.test_qemu for a UUID mount > and the UUID that we've given. I think this is cleaner than adding a > python function to make a wks file just for this task. > > -- > Tom -- -- Regards, Ed -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] wic: fallback to dd, if sparse_copy does not work
On Thu, Nov 16, 2017 at 02:49:43PM +0300, Dogukan Ergun wrote: > Docker's aufs filesystem doesn't support file ioctl operations like FIGETBSZ > or FIEMAP. > Sparse_copy operation will fail if those ioctls are not supported. > If sparse_copy fails while generating wic images, fallback to dd for copying > filesystems on final image. > You can make sparse_copy to use SEEK_HOLE / SEEK_DATA instead of FIEMAP. This can be done by using 'api' parameter. If AUFS supports it this there is no need to fall back to using dd. > Signed-off-by: Dogukan Ergun> --- > scripts/lib/wic/plugins/imager/direct.py | 10 -- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/scripts/lib/wic/plugins/imager/direct.py > b/scripts/lib/wic/plugins/imager/direct.py > index da1c061..70f93ee 100644 > --- a/scripts/lib/wic/plugins/imager/direct.py > +++ b/scripts/lib/wic/plugins/imager/direct.py > @@ -577,8 +577,14 @@ class PartitionedImage(): > for part in self.partitions: > source = part.source_file > if source: > -# install source_file contents into a partition > -sparse_copy(source, self.path, seek=part.start * > self.sector_size) > +try: > +# install source_file contents into a partition > +sparse_copy(source, self.path, seek=part.start * > self.sector_size) > +except: sparse_copy raises ErrorNotSupp if some ioctl is not supported. Please, catch this particular exception instead of any exception. > +# Sparse_copy failed, fallback to dd method > +dd_cmd = "dd if=%s of=%s bs=%d seek=%d count=%d > conv=notrunc" % \ > +(source, self.path, self.sector_size, part.start, > part.size_sec) > +exec_cmd(dd_cmd) > > logger.debug("Installed %s in partition %d, sectors %d-%d, " > "size %d sectors", source, part.num, part.start, > -- > 2.7.4 > > -- > ___ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- -- Regards, Ed -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core