[OE-core] [warrior][PATCH 7/7] curl: fix CVE-2019-5435 CVE-2019-5436
Signed-off-by: Anuj Mittal --- meta/recipes-support/curl/curl/CVE-2019-5435.patch | 266 + meta/recipes-support/curl/curl/CVE-2019-5436.patch | 30 +++ meta/recipes-support/curl/curl_7.64.1.bb | 2 + 3 files changed, 298 insertions(+) create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5435.patch create mode 100644 meta/recipes-support/curl/curl/CVE-2019-5436.patch diff --git a/meta/recipes-support/curl/curl/CVE-2019-5435.patch b/meta/recipes-support/curl/curl/CVE-2019-5435.patch new file mode 100644 index 000..f72435f --- /dev/null +++ b/meta/recipes-support/curl/curl/CVE-2019-5435.patch @@ -0,0 +1,266 @@ +From 756380f74d58d5a877b26dc21be7b1316b617213 Mon Sep 17 00:00:00 2001 +From: Daniel Stenberg +Date: Mon, 29 Apr 2019 08:00:49 +0200 +Subject: [PATCH] CURL_MAX_INPUT_LENGTH: largest acceptable string input size + +This limits all accepted input strings passed to libcurl to be less than +CURL_MAX_INPUT_LENGTH (800) bytes, for these API calls: +curl_easy_setopt() and curl_url_set(). + +The 800 number is arbitrary picked and is meant to detect mistakes +or abuse, not to limit actual practical use cases. By limiting the +acceptable string lengths we also reduce the risk of integer overflows +all over. + +NOTE: This does not apply to `CURLOPT_POSTFIELDS`. + +Test 1559 verifies. + +Closes #3805 + +Upstream-Status: Backport +CVE: CVE-2019-5435 +Signed-off-by: Anuj Mittal + +--- + lib/setopt.c | 7 + + lib/urlapi.c | 8 + + lib/urldata.h | 4 +++ + tests/data/Makefile.inc| 2 +- + tests/data/test1559| 44 ++ + tests/libtest/Makefile.inc | 6 ++-- + tests/libtest/lib1559.c| 78 ++ + 7 files changed, 146 insertions(+), 3 deletions(-) + create mode 100644 tests/data/test1559 + create mode 100644 tests/libtest/lib1559.c + +diff --git a/lib/setopt.c b/lib/setopt.c +index b5f74a9..edf7165 100644 +--- a/lib/setopt.c b/lib/setopt.c +@@ -61,6 +61,13 @@ CURLcode Curl_setstropt(char **charp, const char *s) + if(s) { + char *str = strdup(s); + ++if(str) { ++ size_t len = strlen(str); ++ if(len > CURL_MAX_INPUT_LENGTH) { ++free(str); ++return CURLE_BAD_FUNCTION_ARGUMENT; ++ } ++} + if(!str) + return CURLE_OUT_OF_MEMORY; + +diff --git a/lib/urlapi.c b/lib/urlapi.c +index a19867e..822e4b3 100644 +--- a/lib/urlapi.c b/lib/urlapi.c +@@ -642,6 +642,10 @@ static CURLUcode seturl(const char *url, CURLU *u, unsigned int flags) +/ + /* allocate scratch area */ + urllen = strlen(url); ++ if(urllen > CURL_MAX_INPUT_LENGTH) ++/* excessive input length */ ++return CURLUE_MALFORMED_INPUT; ++ + path = u->scratch = malloc(urllen * 2 + 2); + if(!path) + return CURLUE_OUT_OF_MEMORY; +@@ -1272,6 +1276,10 @@ CURLUcode curl_url_set(CURLU *u, CURLUPart what, + const char *newp = part; + size_t nalloc = strlen(part); + ++if(nalloc > CURL_MAX_INPUT_LENGTH) ++ /* excessive input length */ ++ return CURLUE_MALFORMED_INPUT; ++ + if(urlencode) { + const char *i; + char *o; +diff --git a/lib/urldata.h b/lib/urldata.h +index 24187a4..049a34d 100644 +--- a/lib/urldata.h b/lib/urldata.h +@@ -79,6 +79,10 @@ + */ + #define RESP_TIMEOUT (120*1000) + ++/* Max string intput length is a precaution against abuse and to detect junk ++ input easier and better. */ ++#define CURL_MAX_INPUT_LENGTH 800 ++ + #include "cookie.h" + #include "psl.h" + #include "formdata.h" +diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc +index 2eca9c6..3dd234f 100644 +--- a/tests/data/Makefile.inc b/tests/data/Makefile.inc +@@ -176,7 +176,7 @@ test1525 test1526 test1527 test1528 test1529 test1530 test1531 test1532 \ + test1533 test1534 test1535 test1536 test1537 test1538 \ + test1540 test1541 \ + test1550 test1551 test1552 test1553 test1554 test1555 test1556 test1557 \ +-test1558 test1560 test1561 test1562 \ ++test1558 test1559 test1560 test1561 test1562 \ + \ + test1590 test1591 test1592 \ + \ +diff --git a/tests/data/test1559 b/tests/data/test1559 +new file mode 100644 +index 000..cbed6fb +--- /dev/null b/tests/data/test1559 +@@ -0,0 +1,44 @@ ++ ++ ++ ++CURLOPT_URL ++ ++ ++ ++ ++ ++ ++ ++ ++none ++ ++ ++# require HTTP so that CURLOPT_POSTFIELDS works as assumed ++ ++http ++ ++ ++lib1559 ++ ++ ++ ++Set excessive URL lengths ++ ++ ++ ++# ++# Verify that the test runs to completion without crashing ++ ++ ++0 ++ ++ ++CURLOPT_URL 1000 bytes URL == 43 ++CURLOPT_POSTFIELDS 1000 bytes data == 0 ++CURLUPART_URL 1000 bytes URL == 3 ++CURLUPART_SCHEME 1000 bytes scheme == 3 ++CURLUPART_USER 1000 bytes user == 3 ++ ++ ++ ++ +diff --git a/tests/libtest/Makefile.inc b/tests/libtest/Makefile.inc +index e38f481..52b51c5 100644 +---
[OE-core] [warrior][PATCH 5/7] bzip2: fix CVE-2019-12900
Also include a patch to fix regression caused by it. See: https://gitlab.com/federicomenaquintero/bzip2/issues/24 Signed-off-by: Anuj Mittal --- .../bzip2/bzip2-1.0.6/CVE-2019-12900.patch | 33 + .../fix-regression-CVE-2019-12900.patch| 82 ++ meta/recipes-extended/bzip2/bzip2_1.0.6.bb | 2 + 3 files changed, 117 insertions(+) create mode 100644 meta/recipes-extended/bzip2/bzip2-1.0.6/CVE-2019-12900.patch create mode 100644 meta/recipes-extended/bzip2/bzip2-1.0.6/fix-regression-CVE-2019-12900.patch diff --git a/meta/recipes-extended/bzip2/bzip2-1.0.6/CVE-2019-12900.patch b/meta/recipes-extended/bzip2/bzip2-1.0.6/CVE-2019-12900.patch new file mode 100644 index 000..9841644 --- /dev/null +++ b/meta/recipes-extended/bzip2/bzip2-1.0.6/CVE-2019-12900.patch @@ -0,0 +1,33 @@ +From 11e1fac27eb8a3076382200736874c78e09b75d6 Mon Sep 17 00:00:00 2001 +From: Albert Astals Cid +Date: Tue, 28 May 2019 19:35:18 +0200 +Subject: [PATCH] Make sure nSelectors is not out of range + +nSelectors is used in a loop from 0 to nSelectors to access selectorMtf +which is + UCharselectorMtf[BZ_MAX_SELECTORS]; +so if nSelectors is bigger than BZ_MAX_SELECTORS it'll do an invalid memory +access + +Fixes out of bounds access discovered while fuzzying karchive +CVE: CVE-2019-12900 +Upstream-Status: Backport +Signed-off-by: Anuj Mittal + +--- + decompress.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/decompress.c b/decompress.c +index 311f566..b6e0a29 100644 +--- a/decompress.c b/decompress.c +@@ -287,7 +287,7 @@ Int32 BZ2_decompress ( DState* s ) + GET_BITS(BZ_X_SELECTOR_1, nGroups, 3); + if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR); + GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15); +- if (nSelectors < 1) RETURN(BZ_DATA_ERROR); ++ if (nSelectors < 1 || nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR); + for (i = 0; i < nSelectors; i++) { + j = 0; + while (True) { diff --git a/meta/recipes-extended/bzip2/bzip2-1.0.6/fix-regression-CVE-2019-12900.patch b/meta/recipes-extended/bzip2/bzip2-1.0.6/fix-regression-CVE-2019-12900.patch new file mode 100644 index 000..362e6cf --- /dev/null +++ b/meta/recipes-extended/bzip2/bzip2-1.0.6/fix-regression-CVE-2019-12900.patch @@ -0,0 +1,82 @@ +From 212f3ed7ac3931c9e0e9167a0bdc16eeb3c76af4 Mon Sep 17 00:00:00 2001 +From: Mark Wielaard +Date: Wed, 3 Jul 2019 01:28:11 +0200 +Subject: [PATCH] Accept as many selectors as the file format allows. + +But ignore any larger than the theoretical maximum, BZ_MAX_SELECTORS. + +The theoretical maximum number of selectors depends on the maximum +blocksize (90 bytes) and the number of symbols (50) that can be +encoded with a different Huffman tree. BZ_MAX_SELECTORS is 18002. + +But the bzip2 file format allows the number of selectors to be encoded +with 15 bits (because 18002 isn't a factor of 2 and doesn't fit in +14 bits). So the file format maximum is 32767 selectors. + +Some bzip2 encoders might actually have written out more selectors +than the theoretical maximum because they rounded up the number of +selectors to some convenient factor of 8. + +The extra 14766 selectors can never be validly used by the decompression +algorithm. So we can read them, but then discard them. + +This is effectively what was done (by accident) before we added a +check for nSelectors to be at most BZ_MAX_SELECTORS to mitigate +CVE-2019-12900. + +The extra selectors were written out after the array inside the +EState struct. But the struct has extra space allocated after the +selector arrays of 18060 bytes (which is larger than 14766). +All of which will be initialized later (so the overwrite of that +space with extra selector values would have been harmless). + +Upstream-Status: Backport +Signed-off-by: Anuj Mittal + +--- + compress.c | 2 +- + decompress.c | 10 -- + 2 files changed, 9 insertions(+), 3 deletions(-) + +diff --git a/compress.c b/compress.c +index caf7696..19b662b 100644 +--- a/compress.c b/compress.c +@@ -454,7 +454,7 @@ void sendMTFValues ( EState* s ) + +AssertH( nGroups < 8, 3002 ); +AssertH( nSelectors < 32768 && +-nSelectors <= (2 + (90 / BZ_G_SIZE)), ++nSelectors <= BZ_MAX_SELECTORS, + 3003 ); + + +diff --git a/decompress.c b/decompress.c +index b6e0a29..78060c9 100644 +--- a/decompress.c b/decompress.c +@@ -287,7 +287,7 @@ Int32 BZ2_decompress ( DState* s ) + GET_BITS(BZ_X_SELECTOR_1, nGroups, 3); + if (nGroups < 2 || nGroups > 6) RETURN(BZ_DATA_ERROR); + GET_BITS(BZ_X_SELECTOR_2, nSelectors, 15); +- if (nSelectors < 1 || nSelectors > BZ_MAX_SELECTORS) RETURN(BZ_DATA_ERROR); ++ if (nSelectors < 1) RETURN(BZ_DATA_ERROR); + for (i = 0; i < nSelectors; i++) { + j = 0; + while (True) { +@@ -296,8 +296,14 @@ Int32 BZ2_decompress ( DState* s ) + j++; +
[OE-core] [warrior][PATCH 2/7] vim: fix CVE-2019-12735
Signed-off-by: Anuj Mittal --- .../recipes-support/vim/files/CVE-2019-12735.patch | 64 ++ meta/recipes-support/vim/vim_8.1.1017.bb | 1 + 2 files changed, 65 insertions(+) create mode 100644 meta/recipes-support/vim/files/CVE-2019-12735.patch diff --git a/meta/recipes-support/vim/files/CVE-2019-12735.patch b/meta/recipes-support/vim/files/CVE-2019-12735.patch new file mode 100644 index 000..d8afa18 --- /dev/null +++ b/meta/recipes-support/vim/files/CVE-2019-12735.patch @@ -0,0 +1,64 @@ +From e8197acdd091881fdbf9ed6ca8318f3c96465f0a Mon Sep 17 00:00:00 2001 +From: Bram Moolenaar +Date: Wed, 22 May 2019 22:38:25 +0200 +Subject: [PATCH] patch 8.1.1365: source command doesn't check for the sandbox + +Problem:Source command doesn't check for the sandbox. (Armin Razmjou) +Solution: Check for the sandbox when sourcing a file. + +Upstream-Status: Backport +CVE: CVE-2019-12735 +Signed-off-by: Anuj Mittal +--- + src/getchar.c | 6 ++ + src/testdir/test_source.vim | 9 + + src/version.c | 2 ++ + 3 files changed, 17 insertions(+) + +diff --git a/src/getchar.c b/src/getchar.c +index 0e9942b..475f644 100644 +--- a/src/getchar.c b/src/getchar.c +@@ -1407,6 +1407,12 @@ openscript( + emsg(_(e_nesting)); + return; + } ++ ++// Disallow sourcing a file in the sandbox, the commands would be executed ++// later, possibly outside of the sandbox. ++if (check_secure()) ++ return; ++ + #ifdef FEAT_EVAL + if (ignore_script) + /* Not reading from script, also don't open one. Warning message? */ +diff --git a/src/testdir/test_source.vim b/src/testdir/test_source.vim +index a33d286..5166baf 100644 +--- a/src/testdir/test_source.vim b/src/testdir/test_source.vim +@@ -36,3 +36,12 @@ func Test_source_cmd() + au! SourcePre + au! SourcePost + endfunc ++ ++func Test_source_sandbox() ++ new ++ call writefile(["Ohello\"], 'Xsourcehello') ++ source! Xsourcehello | echo ++ call assert_equal('hello', getline(1)) ++ call assert_fails('sandbox source! Xsourcehello', 'E48:') ++ bwipe! ++endfunc +diff --git a/src/version.c b/src/version.c +index a49f6fb..e4f74be 100644 +--- a/src/version.c b/src/version.c +@@ -780,6 +780,8 @@ static char *(features[]) = + static int included_patches[] = + { /* Add new patch number below this line */ + /**/ ++1365, ++/**/ + 1017, + /**/ + 1016, diff --git a/meta/recipes-support/vim/vim_8.1.1017.bb b/meta/recipes-support/vim/vim_8.1.1017.bb index 7627d28..e161e12 100644 --- a/meta/recipes-support/vim/vim_8.1.1017.bb +++ b/meta/recipes-support/vim/vim_8.1.1017.bb @@ -12,6 +12,7 @@ SRC_URI = "git://github.com/vim/vim.git \ file://disable_acl_header_check.patch;patchdir=.. \ file://vim-add-knob-whether-elf.h-are-checked.patch;patchdir=.. \ file://0001-src-Makefile-improve-reproducibility.patch;patchdir=.. \ + file://CVE-2019-12735.patch;patchdir=.. \ " SRCREV = "493fbe4abee660d30b4f2aef87b754b0a720213c" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [warrior][PATCH 3/7] gstreamer1.0-plugins-base: fix CVE-2019-9928
Signed-off-by: Anuj Mittal --- .../gstreamer1.0-plugins-base/CVE-2019-9928.patch | 33 ++ .../gstreamer/gstreamer1.0-plugins-base_1.14.4.bb | 1 + 2 files changed, 34 insertions(+) create mode 100644 meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/CVE-2019-9928.patch diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/CVE-2019-9928.patch b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/CVE-2019-9928.patch new file mode 100644 index 000..0ad7245 --- /dev/null +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base/CVE-2019-9928.patch @@ -0,0 +1,33 @@ +From f672277509705c4034bc92a141eefee4524d15aa Mon Sep 17 00:00:00 2001 +From: Tobias Ronge +Date: Thu, 14 Mar 2019 10:12:27 +0100 +Subject: [PATCH] gstrtspconnection: Security loophole making heap overflow + +The former code allowed an attacker to create a heap overflow by +sending a longer than allowed session id in a response and including a +semicolon to change the maximum length. With this change, the parser +will never go beyond 512 bytes. + +Upstream-Status: Backport +CVE: CVE-2019-9928 +Signed-off-by: Anuj Mittal +--- + gst-libs/gst/rtsp/gstrtspconnection.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gst-libs/gst/rtsp/gstrtspconnection.c b/gst-libs/gst/rtsp/gstrtspconnection.c +index a6755bedd..c0429064a 100644 +--- a/gst-libs/gst/rtsp/gstrtspconnection.c b/gst-libs/gst/rtsp/gstrtspconnection.c +@@ -2461,7 +2461,7 @@ build_next (GstRTSPBuilder * builder, GstRTSPMessage * message, + maxlen = sizeof (conn->session_id) - 1; + /* the sessionid can have attributes marked with ; +* Make sure we strip them */ +- for (i = 0; session_id[i] != '\0'; i++) { ++ for (i = 0; i < maxlen && session_id[i] != '\0'; i++) { + if (session_id[i] == ';') { + maxlen = i; + /* parse timeout */ +-- +2.21.0 + diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb index f3e6daf..05d90dc 100644 --- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb +++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-base_1.14.4.bb @@ -20,6 +20,7 @@ SRC_URI = " \ file://0010-gl-Add-switch-for-explicitely-enabling-disabling-GBM.patch \ file://0011-gl-Add-switches-for-explicitely-enabling-disabling-P.patch \ file://link-with-libvchostif.patch \ +file://CVE-2019-9928.patch \ " SRC_URI[md5sum] = "4dbe20c1bf44191c2b8833234df5cb2a" SRC_URI[sha256sum] = "ca6139490e48863e7706d870ff4e8ac9f417b56f3b9e4b3ce490c13b09a77461" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [warrior][PATCH 6/7] python3: fix CVE-2018-20852 CVE-2019-9636
Signed-off-by: Anuj Mittal --- .../python/python3/CVE-2018-20852.patch| 124 + .../python/python3/CVE-2019-9636.patch | 154 + meta/recipes-devtools/python/python3_3.7.2.bb | 2 + 3 files changed, 280 insertions(+) create mode 100644 meta/recipes-devtools/python/python3/CVE-2018-20852.patch create mode 100644 meta/recipes-devtools/python/python3/CVE-2019-9636.patch diff --git a/meta/recipes-devtools/python/python3/CVE-2018-20852.patch b/meta/recipes-devtools/python/python3/CVE-2018-20852.patch new file mode 100644 index 000..ff671d3 --- /dev/null +++ b/meta/recipes-devtools/python/python3/CVE-2018-20852.patch @@ -0,0 +1,124 @@ +From e5123d81ffb3be35a1b2767d6ced1a097aaf77be Mon Sep 17 00:00:00 2001 +From: "Miss Islington (bot)" + <31488909+miss-isling...@users.noreply.github.com> +Date: Sat, 9 Mar 2019 18:58:25 -0800 +Subject: [PATCH] bpo-35121: prefix dot in domain for proper subdomain + validation (GH-10258) (GH-12261) + +Don't send cookies of domain A without Domain attribute to domain B when domain A is a suffix match of domain B while using a cookiejar with `http.cookiejar.DefaultCookiePolicy` policy. Patch by Karthikeyan Singaravelan. +(cherry picked from commit ca7fe5063593958e5efdf90f068582837f07bd14) + +Co-authored-by: Xtreak +Upstream-Status: Backport +CVE: CVE-2018-20852 +Signed-off-by: Anuj Mittal +--- + Lib/http/cookiejar.py | 13 ++-- + Lib/test/test_http_cookiejar.py | 30 +++ + .../2018-10-31-15-39-17.bpo-35121.EgHv9k.rst | 4 +++ + 3 files changed, 45 insertions(+), 2 deletions(-) + create mode 100644 Misc/NEWS.d/next/Security/2018-10-31-15-39-17.bpo-35121.EgHv9k.rst + +diff --git a/Lib/http/cookiejar.py b/Lib/http/cookiejar.py +index e0f1032b2816..00cb1250a07e 100644 +--- a/Lib/http/cookiejar.py b/Lib/http/cookiejar.py +@@ -1145,6 +1145,11 @@ def return_ok_domain(self, cookie, request): + req_host, erhn = eff_request_host(request) + domain = cookie.domain + ++if domain and not domain.startswith("."): ++dotdomain = "." + domain ++else: ++dotdomain = domain ++ + # strict check of non-domain cookies: Mozilla does this, MSIE5 doesn't + if (cookie.version == 0 and + (self.strict_ns_domain & self.DomainStrictNonDomain) and +@@ -1157,7 +1162,7 @@ def return_ok_domain(self, cookie, request): + _debug(" effective request-host name %s does not domain-match " +"RFC 2965 cookie domain %s", erhn, domain) + return False +-if cookie.version == 0 and not ("."+erhn).endswith(domain): ++if cookie.version == 0 and not ("."+erhn).endswith(dotdomain): + _debug(" request-host %s does not match Netscape cookie domain " +"%s", req_host, domain) + return False +@@ -1171,7 +1176,11 @@ def domain_return_ok(self, domain, request): + req_host = "."+req_host + if not erhn.startswith("."): + erhn = "."+erhn +-if not (req_host.endswith(domain) or erhn.endswith(domain)): ++if domain and not domain.startswith("."): ++dotdomain = "." + domain ++else: ++dotdomain = domain ++if not (req_host.endswith(dotdomain) or erhn.endswith(dotdomain)): + #_debug(" request domain %s does not match cookie domain %s", + # req_host, domain) + return False +diff --git a/Lib/test/test_http_cookiejar.py b/Lib/test/test_http_cookiejar.py +index abc625d672a7..6e1b30881310 100644 +--- a/Lib/test/test_http_cookiejar.py b/Lib/test/test_http_cookiejar.py +@@ -415,6 +415,7 @@ def test_domain_return_ok(self): + ("http://foo.bar.com/;, ".foo.bar.com", True), + ("http://foo.bar.com/;, "foo.bar.com", True), + ("http://foo.bar.com/;, ".bar.com", True), ++("http://foo.bar.com/;, "bar.com", True), + ("http://foo.bar.com/;, "com", True), + ("http://foo.com/;, "rhubarb.foo.com", False), + ("http://foo.com/;, ".foo.com", True), +@@ -425,6 +426,8 @@ def test_domain_return_ok(self): + ("http://foo/;, "foo", True), + ("http://foo/;, "foo.local", True), + ("http://foo/;, ".local", True), ++("http://barfoo.com;, ".foo.com", False), ++("http://barfoo.com;, "foo.com", False), + ]: + request = urllib.request.Request(url) + r = pol.domain_return_ok(domain, request) +@@ -959,6 +962,33 @@ def test_domain_block(self): + c.add_cookie_header(req) + self.assertFalse(req.has_header("Cookie")) + ++c.clear() ++ ++pol.set_blocked_domains([]) ++req = urllib.request.Request("http://acme.com/;) ++res = FakeResponse(headers, "http://acme.com/;) ++cookies = c.make_cookies(res, req) ++
[OE-core] [warrior][PATCH 4/7] wget: fix CVE-2019-5953
Signed-off-by: Anuj Mittal --- .../recipes-extended/wget/wget/CVE-2019-5953.patch | 34 ++ meta/recipes-extended/wget/wget_1.20.1.bb | 1 + 2 files changed, 35 insertions(+) create mode 100644 meta/recipes-extended/wget/wget/CVE-2019-5953.patch diff --git a/meta/recipes-extended/wget/wget/CVE-2019-5953.patch b/meta/recipes-extended/wget/wget/CVE-2019-5953.patch new file mode 100644 index 000..00efe20 --- /dev/null +++ b/meta/recipes-extended/wget/wget/CVE-2019-5953.patch @@ -0,0 +1,34 @@ +From 692d5c5215de0db482c252492a92fc424cc6a97c Mon Sep 17 00:00:00 2001 +From: Tim Ruehsen +Date: Fri, 5 Apr 2019 11:50:44 +0200 +Subject: Fix a buffer overflow vulnerability + +* src/iri.c(do_conversion): Reallocate the output buffer to a larger + size if it is already full +Upstream-Status: Backport +CVE: CVE-2019-5953 +Signed-off-by: Anuj Mittal +--- +--- a/src/iri.c b/src/iri.c +@@ -188,11 +191,14 @@ do_conversion (const char *tocode, const char *fromcode, char const *in_org, siz + } + else if (errno == E2BIG) /* Output buffer full */ + { ++ logprintf (LOG_VERBOSE, ++_("Reallocate output buffer len=%d outlen=%d inlen=%d\n"), len, outlen, inlen); + tooshort++; + done = len; +- len = outlen = done + inlen * 2; +- s = xrealloc (s, outlen + 1); +- *out = s + done; ++ len = done + inlen * 2; ++ s = xrealloc (s, len + 1); ++ *out = s + done - outlen; ++ outlen += inlen * 2; + } + else /* Weird, we got an unspecified error */ + { +-- +cgit v1.0-41-gc330 + diff --git a/meta/recipes-extended/wget/wget_1.20.1.bb b/meta/recipes-extended/wget/wget_1.20.1.bb index d176bd0..e852a0c 100644 --- a/meta/recipes-extended/wget/wget_1.20.1.bb +++ b/meta/recipes-extended/wget/wget_1.20.1.bb @@ -1,5 +1,6 @@ SRC_URI = "${GNU_MIRROR}/wget/wget-${PV}.tar.gz \ file://0002-improve-reproducibility.patch \ + file://CVE-2019-5953.patch \ " SRC_URI[md5sum] = "f6ebe9c7b375fc9832fb1b2028271fb7" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [warrior][PATCH 1/7] expat: fix CVE-2018-20843
Signed-off-by: Anuj Mittal --- meta/recipes-core/expat/expat/CVE-2018-20843.patch | 26 ++ meta/recipes-core/expat/expat_2.2.6.bb | 1 + 2 files changed, 27 insertions(+) create mode 100644 meta/recipes-core/expat/expat/CVE-2018-20843.patch diff --git a/meta/recipes-core/expat/expat/CVE-2018-20843.patch b/meta/recipes-core/expat/expat/CVE-2018-20843.patch new file mode 100644 index 000..af6641e --- /dev/null +++ b/meta/recipes-core/expat/expat/CVE-2018-20843.patch @@ -0,0 +1,26 @@ +From 11f8838bf99ea0a6f0b76f9760c43704d00c4ff6 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping +Date: Wed, 12 Jun 2019 15:42:22 +0200 +Subject: [PATCH] xmlparse.c: Fix extraction of namespace prefix from XML name + (#186) + +Upstream-Status: Backport +CVE: CVE-2018-20843 +Signed-off-by: Anuj Mittal +--- + expat/lib/xmlparse.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +index 30d55c5c..737d7cd2 100644 +--- a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +@@ -6071,7 +6071,7 @@ setElementTypePrefix(XML_Parser parser, ELEMENT_TYPE *elementType) + else + poolDiscard(>pool); + elementType->prefix = prefix; +- ++ break; + } + } + return 1; diff --git a/meta/recipes-core/expat/expat_2.2.6.bb b/meta/recipes-core/expat/expat_2.2.6.bb index c9e6081..0cef705 100644 --- a/meta/recipes-core/expat/expat_2.2.6.bb +++ b/meta/recipes-core/expat/expat_2.2.6.bb @@ -9,6 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5b8620d98e49772d95fc1d291c26aa79" SRC_URI = "${SOURCEFORGE_MIRROR}/expat/expat-${PV}.tar.bz2 \ file://autotools.patch \ file://libtool-tag.patch \ + file://CVE-2018-20843.patch;striplevel=2 \ " SRC_URI[md5sum] = "ca047ae951b40020ac831c28859161b2" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH v2] libical: upgrade to 3.0.5
Hi Ross This is causing errors: https://autobuilder.yoctoproject.org/typhoon/#/builders/72/builds/869/steps/8/logs/errors step7b: ERROR: libical-3.0.5-r0 do_package_qa: QA Issue: /usr/lib/libicalss.so.3.0.5 contained in package libical requires libdb-5.3.so()(64bit), but no providers found in RDEPENDS_libical? [file-rdeps] step7b: ERROR: libical-3.0.5-r0 do_package_qa: QA run found fatal errors. Please consider fixing them. step7b: ERROR: libical-3.0.5-r0 do_package_qa: step7b: ERROR: libical-3.0.5-r0 do_package_qa: Function failed: do_package_qa step7b: ERROR: Logfile of failure stored in: /home/pokybuild/yocto- worker/qa-extras2/build/build/tmp/work/core2-64-poky- linux/libical/3.0.5-r0/temp/log.do_package_qa.40458 Thanks, Anuj On Wed, 2019-07-24 at 10:54 +0100, Ross Burton wrote: > Note that this upgrade includes some API breakage. > > Signed-off-by: Ross Burton > --- > ...ibical.pc.in-fix-iculibs-remove-full.patch | 44 --- > > .../{libical_2.0.0.bb => libical_3.0.5.bb}| 20 + > 2 files changed, 12 insertions(+), 52 deletions(-) > delete mode 100644 meta/recipes-support/libical/libical/0001- > CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch > rename meta/recipes-support/libical/{libical_2.0.0.bb => > libical_3.0.5.bb} (53%) > > diff --git a/meta/recipes-support/libical/libical/0001- > CMakeLists.txt-libical.pc.in-fix-iculibs-remove-full.patch > b/meta/recipes-support/libical/libical/0001-CMakeLists.txt- > libical.pc.in-fix-iculibs-remove-full.patch > deleted file mode 100644 > index 6db75f5086c..000 > --- a/meta/recipes-support/libical/libical/0001-CMakeLists.txt- > libical.pc.in-fix-iculibs-remove-full.patch > +++ /dev/null > @@ -1,44 +0,0 @@ > -From 1a41069c0dc054e59cd76fc3d8cf7cc2a78b5e8d Mon Sep 17 00:00:00 > 2001 > -From: Allen Winter > -Date: Sat, 3 Sep 2016 16:56:29 -0400 > -Subject: [PATCH] CMakeLists.txt, libical.pc.in - fix iculibs (remove > full path) ISSUE: 227 > - > -Upstream-Status: Backport > - > -Signed-off-by: Maxin B. John > - > -diff -Naur libical-2.0.0-orig/CMakeLists.txt libical- > 2.0.0/CMakeLists.txt > libical-2.0.0-orig/CMakeLists.txt2016-09-08 > 18:05:06.166049345 +0300 > -+++ libical-2.0.0/CMakeLists.txt 2016-09-08 18:05:45.201561334 > +0300 > -@@ -128,6 +128,7 @@ > - # RSCALE info at http://tools.ietf.org/html/rfc7529 > - find_package(ICU) > - if(ICU_FOUND) > -+ set(ICUUC_LIBS "-licuuc") #for libical.pc > - set(HAVE_LIBICU 1) > - if(ICU_MAJOR_VERSION VERSION_GREATER 50) > - set(HAVE_ICU_DANGI TRUE) > -@@ -137,6 +138,7 @@ > - endif() > - if(ICU_I18N_FOUND) > - set(HAVE_LIBICU_I18N 1) > -+ set(ICUI18N_LIBS "-licui18n") #for libical.pc > - endif() > - > - # MSVC specific definitions > -diff -Naur libical-2.0.0-orig/libical.pc.in libical- > 2.0.0/libical.pc.in > libical-2.0.0-orig/libical.pc.in 2015-12-28 23:44:53.0 > +0200 > -+++ libical-2.0.0/libical.pc.in 2016-09-08 18:09:12.991963597 > +0300 > -@@ -3,10 +3,10 @@ > - libdir=@libdir@ > - includedir=@includedir@ > - threadslib=@PTHREAD_LIBS@ > --iculib=@ICU_LIBRARIES@ @ICU_I18N_LIBRARIES@ > -+iculibs=@ICUUC_LIBS@ @ICUI18N_LIBS@ > - > - Name: libical > - Description: An implementation of basic iCAL protocols > - Version: @VERSION@ > --Libs: -L${libdir} -lical -licalss -licalvcal ${threadslib} > ${iculib} > -+Libs: -L${libdir} -lical -licalss -licalvcal ${threadslib} > ${iculibs} > - Cflags: -I${includedir} > diff --git a/meta/recipes-support/libical/libical_2.0.0.bb > b/meta/recipes-support/libical/libical_3.0.5.bb > similarity index 53% > rename from meta/recipes-support/libical/libical_2.0.0.bb > rename to meta/recipes-support/libical/libical_3.0.5.bb > index 7dffdcfb013..a4238f22633 100644 > --- a/meta/recipes-support/libical/libical_2.0.0.bb > +++ b/meta/recipes-support/libical/libical_3.0.5.bb > @@ -1,18 +1,18 @@ > SUMMARY = "iCal and scheduling (RFC 2445, 2446, 2447) library" > HOMEPAGE = "https://github.com/libical/libical; > BUGTRACKER = "https://github.com/libical/libical/issues; > -LICENSE = "LGPLv2.1 | MPL-1.0" > -LIC_FILES_CHKSUM = > "file://COPYING;md5=d4fc58309d8ed46587ac63bb449d82f8 \ > -file://LICENSE;md5=d1a0891cd3e582b3e2ec8fe63badb > bb6" > +LICENSE = "LGPLv2.1 | MPL-2.0" > +LIC_FILES_CHKSUM = > "file://LICENSE;md5=1910a2a76ddf6a9ba369182494170d87 \ > +file://LICENSE.LGPL21.txt;md5=933adb561f159e7c3d > a079536f0ed871 \ > +file://LICENSE.MPL2.txt;md5=9741c346eef56131163e > 13b9db1241b3" > SECTION = "libs" > > -SRC_URI = " > https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz > \ > - file://0001-CMakeLists.txt-libical.pc.in-fix-iculibs- > remove-full.patch \ > - " > +SRC_URI = " > https://github.com/${BPN}/${BPN}/releases/download/v${PV}/${BP}.tar.gz > " > + > DEPENDS = "icu" > > -SRC_URI[md5sum] = "6bf8e5f5a3ba88baf390d0134e05d76e" > -SRC_URI[sha256sum] = >
[OE-core] [PATCH] mdadm:add mdmonitor.service
-The original mdmonitor.service is wrong, so append new mdmonitor.service. Signed-off-by: Zang Ruochen --- meta/recipes-extended/mdadm/files/mdmonitor.service | 10 ++ meta/recipes-extended/mdadm/mdadm_4.1.bb| 2 ++ 2 files changed, 12 insertions(+) create mode 100644 meta/recipes-extended/mdadm/files/mdmonitor.service diff --git a/meta/recipes-extended/mdadm/files/mdmonitor.service b/meta/recipes-extended/mdadm/files/mdmonitor.service new file mode 100644 index 00..4f07c755ae --- /dev/null +++ b/meta/recipes-extended/mdadm/files/mdmonitor.service @@ -0,0 +1,10 @@ +[Unit] +Description=Software RAID monitoring and management +ConditionPathExists=/etc/mdadm.conf +[Service] +Type=forking +PIDFile=/var/run/mdadm/mdadm.pid +EnvironmentFile=-/etc/sysconfig/mdmonitor +ExecStart=/sbin/mdadm --monitor --scan -f --pid-file=/var/run/mdadm/mdadm.pid +[Install] +WantedBy=multi-user.target diff --git a/meta/recipes-extended/mdadm/mdadm_4.1.bb b/meta/recipes-extended/mdadm/mdadm_4.1.bb index 74c94f6ecb..daa2ed8e2e 100644 --- a/meta/recipes-extended/mdadm/mdadm_4.1.bb +++ b/meta/recipes-extended/mdadm/mdadm_4.1.bb @@ -20,6 +20,7 @@ SRC_URI = "${KERNELORG_MIRROR}/linux/utils/raid/mdadm/${BPN}-${PV}.tar.xz \ file://debian-no-Werror.patch \ file://0001-Revert-tests-wait-for-complete-rebuild-in-integrity-.patch \ file://mdadm.init \ + file://mdmonitor.service \ file://0001-mdadm-add-option-y-for-use-syslog-to-recive-event-re.patch \ file://include_sysmacros.patch \ " @@ -65,6 +66,7 @@ do_install_append() { do_install_append() { oe_runmake install-systemd DESTDIR=${D} +install -m 644 ${WORKDIR}/mdmonitor.service ${D}/lib/systemd/system/mdmonitor.service } do_compile_ptest() { -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH V2] runqemu: add lockfile for port used when slirp enabled
From: Changqing Li There is race condition when multi qemu starting with slirp, add lockfile for each port to avoid problem like: runqemu - ERROR - Failed to run qemu: qemu-system-x86_64: Could not set up host forwarding rule 'tcp::2323-:23' [YOCTO #13364] Signed-off-by: Changqing Li --- scripts/runqemu | 128 1 file changed, 91 insertions(+), 37 deletions(-) diff --git a/scripts/runqemu b/scripts/runqemu index 4079f2b..c6a892d 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -119,19 +119,6 @@ def get_first_file(cmds): return f return '' -def check_free_port(host, port): -""" Check whether the port is free or not """ -import socket -from contextlib import closing - -with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as sock: -if sock.connect_ex((host, port)) == 0: -# Port is open, so not free -return False -else: -# Port is not open, so free -return True - class BaseConfig(object): def __init__(self): # The self.d saved vars from self.set(), part of them are from qemuboot.conf @@ -181,8 +168,9 @@ class BaseConfig(object): self.audio_enabled = False self.tcpserial_portnum = '' self.custombiosdir = '' -self.lock = '' -self.lock_descriptor = None +self.taplock = '' +self.taplock_descriptor = None +self.portlocks = {} self.bitbake_e = '' self.snapshot = False self.wictypes = ('wic', 'wic.vmdk', 'wic.qcow2', 'wic.vdi') @@ -204,30 +192,81 @@ class BaseConfig(object): # avoid cleanup twice self.cleaned = False -def acquire_lock(self, error=True): -logger.debug("Acquiring lockfile %s..." % self.lock) +def acquire_taplock(self, error=True): +logger.debug("Acquiring lockfile %s..." % self.taplock) try: -self.lock_descriptor = open(self.lock, 'w') -fcntl.flock(self.lock_descriptor, fcntl.LOCK_EX|fcntl.LOCK_NB) +self.taplock_descriptor = open(self.taplock, 'w') +fcntl.flock(self.taplock_descriptor, fcntl.LOCK_EX|fcntl.LOCK_NB) except Exception as e: -msg = "Acquiring lockfile %s failed: %s" % (self.lock, e) +msg = "Acquiring lockfile %s failed: %s" % (self.taplock, e) if error: logger.error(msg) else: logger.info(msg) -if self.lock_descriptor: -self.lock_descriptor.close() -self.lock_descriptor = None +if self.taplock_descriptor: +self.taplock_descriptor.close() +self.taplock_descriptor = None return False return True -def release_lock(self): -if self.lock_descriptor: +def release_taplock(self): +if self.taplock_descriptor: logger.debug("Releasing lockfile for tap device '%s'" % self.tap) -fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN) -self.lock_descriptor.close() -os.remove(self.lock) -self.lock_descriptor = None +fcntl.flock(self.taplock_descriptor, fcntl.LOCK_UN) +self.taplock_descriptor.close() +os.remove(self.taplock) +self.taplock_descriptor = None + +def check_free_port(self, host, port, lockdir): +""" Check whether the port is free or not """ +import socket +from contextlib import closing + +lockfile = os.path.join(lockdir, str(port) + '.lock') +if self.acquire_portlock(lockfile): +with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as sock: +if sock.connect_ex((host, port)) == 0: +# Port is open, so not free +self.release_portlock(lockfile) +return False +else: +# Port is not open, so free +return True +else: +return False + +def acquire_portlock(self, lockfile, error=True): +logger.debug("Acquiring lockfile %s..." % lockfile) +try: +portlock_descriptor = open(lockfile, 'w') +self.portlocks.update({lockfile: portlock_descriptor}) +fcntl.flock(self.portlocks[lockfile], fcntl.LOCK_EX|fcntl.LOCK_NB) +except Exception as e: +msg = "Acquiring lockfile %s failed: %s" % (lockfile, e) +if error: +logger.error(msg) +else: +logger.info(msg) +if self.portlocks[lockfile]: +self.portlocks[lockfile].close() +del self.portlocks[lockfile] +return False +return True + +def release_portlock(self, lockfile=None): +if lockfile != None: + logger.debug("Releasing
Re: [OE-core] [oe-core][PATCH 1/1] oeqa: small modification to oe_syslog
I thought of that, but I think the package might be variable and we would have to list all the possibles, which requires monitoring. If "logger" isn't on the path, we could take the position that the test is pointless and not worry about where it might have come from. Joe -Original Message- From: Richard Purdie Sent: Thursday, July 25, 2019 2:45 PM To: Slater, Joseph ; openembedded-core@lists.openembedded.org Subject: Re: [OE-core] [oe-core][PATCH 1/1] oeqa: small modification to oe_syslog On Thu, 2019-07-25 at 13:30 -0700, Joe Slater wrote: > Skip logger test if logger is not a command. > > Signed-off-by: Joe Slater > --- > meta/lib/oeqa/runtime/cases/oe_syslog.py | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/meta/lib/oeqa/runtime/cases/oe_syslog.py > b/meta/lib/oeqa/runtime/cases/oe_syslog.py > index 3a8271a..04f8345 100644 > --- a/meta/lib/oeqa/runtime/cases/oe_syslog.py > +++ b/meta/lib/oeqa/runtime/cases/oe_syslog.py > @@ -83,6 +83,8 @@ class SyslogTestConfig(OERuntimeTestCase): > def test_syslog_logger(self): > status, output = self.target.run('logger foobar') > msg = "Can't log into syslog. Output: %s " % output > +if status == 127: > +self.skipTest("We cannot test logger because it is not > + there.") > self.assertEqual(status, 0, msg=msg) > > # There is no way to flush the logger to disk in all cases Should we not be marking up the test to skip if the appropriate package isn't in the image? Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 2/2] weston: upgrade 6.0.0 -> 6.0.1
From: Denys Dmytriyenko Weston 6.0.1 is released with build system fixes to smooth the transition to Meson. Other miscellaneous bugfixes are also included. https://lists.freedesktop.org/archives/wayland-devel/2019-June/040661.html Signed-off-by: Denys Dmytriyenko --- meta/recipes-graphics/wayland/{weston_6.0.0.bb => weston_6.0.1.bb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename meta/recipes-graphics/wayland/{weston_6.0.0.bb => weston_6.0.1.bb} (97%) diff --git a/meta/recipes-graphics/wayland/weston_6.0.0.bb b/meta/recipes-graphics/wayland/weston_6.0.1.bb similarity index 97% rename from meta/recipes-graphics/wayland/weston_6.0.0.bb rename to meta/recipes-graphics/wayland/weston_6.0.1.bb index fa08dac..95b5403 100644 --- a/meta/recipes-graphics/wayland/weston_6.0.0.bb +++ b/meta/recipes-graphics/wayland/weston_6.0.1.bb @@ -12,8 +12,8 @@ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ file://xwayland.weston-start \ file://0001-weston-launch-Provide-a-default-version-that-doesn-t.patch \ " -SRC_URI[md5sum] = "7c634e262f8a464a076c97fd50ad36b3" -SRC_URI[sha256sum] = "546323a90607b3bd7f48809ea9d76e64cd09718102f2deca6d95aa59a882e612" +SRC_URI[md5sum] = "e7b10710ef1eac82258f97bfd41fe534" +SRC_URI[sha256sum] = "bf2f6d5aae2e11cabb6bd69a76bcf9edb084f8c3e14ca769bea7234a513155b4" UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html; -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/2] wayland-protocols: upgrade 1.17 -> 1.18
From: Denys Dmytriyenko This version comes with documentational clarifications, bug fixes and minor additions to existing protocols. See the commit log for details. https://lists.freedesktop.org/archives/wayland-devel/2019-July/040756.html Signed-off-by: Denys Dmytriyenko --- .../wayland/{wayland-protocols_1.17.bb => wayland-protocols_1.18.bb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename meta/recipes-graphics/wayland/{wayland-protocols_1.17.bb => wayland-protocols_1.18.bb} (86%) diff --git a/meta/recipes-graphics/wayland/wayland-protocols_1.17.bb b/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb similarity index 86% rename from meta/recipes-graphics/wayland/wayland-protocols_1.17.bb rename to meta/recipes-graphics/wayland/wayland-protocols_1.18.bb index ca8f06c..c8bec66 100644 --- a/meta/recipes-graphics/wayland/wayland-protocols_1.17.bb +++ b/meta/recipes-graphics/wayland/wayland-protocols_1.18.bb @@ -11,8 +11,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c7b12b6702da38ca028ace54aae3d484 \ SRC_URI = "https://wayland.freedesktop.org/releases/${BPN}-${PV}.tar.xz \ " -SRC_URI[md5sum] = "55ddd5fdb02b73b9de9559aaec267315" -SRC_URI[sha256sum] = "df1319cf9705643aea9fd16f9056f4e5b2471bd10c0cc3713d4a4cdc23d6812f" +SRC_URI[md5sum] = "af38f22d8e233c2f2e00ddc8dcc94694" +SRC_URI[sha256sum] = "3d73b7e7661763dc09d7d9107678400101ecff2b5b1e531674abfa81e04874b3" UPSTREAM_CHECK_URI = "https://wayland.freedesktop.org/releases.html; -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] Perl5 build issues (meta-cpan only?)
On Thu, 2019-07-25 at 14:52 +0200, Jens Rehsack wrote: > Maybe one or the other has already seen the following message in > connection with modules::Build-based Perl modules: > ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: QA Issue: No > GNU_HASH in the ELF binary /home/sno/gpw-community-bsp/gpw-yocto- > platform/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/hash-fieldhash- > perl/0.15-r0/packages-split/hash-fieldhash- > perl/usr/lib/perl5/vendor_perl/5.30.0/arm- > linux/auto/Hash/FieldHash/FieldHash.so, didn't pass LDFLAGS? > [ldflags] > ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: QA run found fatal > errors. Please consider fixing them. > ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: > ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: Function failed: > do_package_qa > ERROR: Logfile of failure stored in: /home/sno/gpw-community-bsp/gpw- > yocto-platform/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/hash- > fieldhash-perl/0.15-r0/temp/log.do_package_qa.12168 > ERROR: Task (/home/sno/gpw-community-bsp/sources/meta-cpan/recipes- > devel/hash-fieldhash-perl/hash-fieldhash-perl_0.15.bb:do_package_qa) > failed with exit code '1' > > I think the reason is in > https://metacpan.org/source/AMBS/ExtUtils-CBuilder-0.280231/lib/ExtUtils/CBuilder/Base.pm#L319 > where the arguments from ldflags are thrown away. That seems very likely, yes. > When those issues came up somewhere else than in meta-cpan, please > let me know (only open-source ^^). We should develop a fix like > https://github.com/meta-cpan/meta-cpan/commit/52ded0759daa3bff909bf5fac6d31c6bc52d713e > then ... > > For now - I think Alberto should receive a patch to use ldflags, too. > > I cannot decide how critic and important that is to make it into > perl-5.30.1 ... > When ExtUtils::CBuilder is properly fixed, no changed are required to > cpan_build.bbclass, aren't they? I'm not sure I understand exactly what you're asking. I think that if the question is whether we should fix this in the perl recipe itself with a patch, so we don't have to add workarounds all over the metadata, I think the answer is yes, we should. It would obviously be ideal if such a change were a backported on which was accepted upstream so we don't have to carry the patch forever! :) Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] package: Improve determinism
Its possible in cases with multiple shlib providers we were not being deterministic. Add in a couple of sorted() calls to fix the shlibs and pkgconfig cases with this potential issue. Signed-off-by: Richard Purdie --- meta/classes/package.bbclass | 2 +- meta/lib/oe/package.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 8b89fb11290..e67bb5bd97d 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1924,7 +1924,7 @@ python package_do_pkgconfig () { for dir in reversed(shlibs_dirs): if not os.path.exists(dir): continue -for file in os.listdir(dir): +for file in sorted(os.listdir(dir)): m = re.match(r'^(.*)\.pclist$', file) if m: pkg = m.group(1) diff --git a/meta/lib/oe/package.py b/meta/lib/oe/package.py index b59513227ba..b8585d4253f 100644 --- a/meta/lib/oe/package.py +++ b/meta/lib/oe/package.py @@ -265,7 +265,7 @@ def read_shlib_providers(d): bb.debug(2, "Reading shlib providers in %s" % (dir)) if not os.path.exists(dir): continue -for file in os.listdir(dir): +for file in sorted(os.listdir(dir)): m = list_re.match(file) if m: dep_pkg = m.group(1) -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] package.bbclass behaviour with multiple providers of a shared library
On Thu, 2019-07-25 at 14:43 +0200, Daniel Klauer wrote: > Hi oe-core devs, > > looking at package.bbclass and in particular the > read_shlib_providers() > function (although, without having fully understood it): > > For scanning the SHLIBSDIRS, it uses os.listdir() but seemingly > without > sorting. There is a comment saying "the last one found wins". > Couldn't > this cause "undefined" behaviour in case there are multiple providers > of > a shared library? (meaning sometimes one provider wins, sometimes the > others, since they are in separate files in the SHLIBSDIRS) > > Specifically, I saw a build failure, which I can't seem to reproduce > anymore now, with meta-freescale's openssl-qoriq, which packages > libcrypto.so.1.1/libssl.so.1.1 in libcrypto/libssl packages but also > in > a openssl-qoriq-ptest package. > > .../tmp/pkgdata/lx2160ardb/shlibs2$ grep -r > 'libssl\.so\.1\.1\|libcrypto\.so\.1\.1' > openssl-qoriq-ptest.list:libssl.so.1.1:/usr/lib/openssl- > qoriq/ptest:1.1.0g > openssl-qoriq-ptest.list:libcrypto.so.1.1:/usr/lib/openssl- > qoriq/ptest:1.1.0g > libcrypto.list:libcrypto.so.1.1:/usr/lib:1.1.0g > libssl.list:libssl.so.1.1:/usr/lib:1.1.0g We definitely should sort to make things deterministic. Since I don't want to forget this I've added a patch into my testing queue. Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [oe-core][PATCH 1/1] oeqa: small modification to oe_syslog
On Thu, 2019-07-25 at 13:30 -0700, Joe Slater wrote: > Skip logger test if logger is not a command. > > Signed-off-by: Joe Slater > --- > meta/lib/oeqa/runtime/cases/oe_syslog.py | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/meta/lib/oeqa/runtime/cases/oe_syslog.py > b/meta/lib/oeqa/runtime/cases/oe_syslog.py > index 3a8271a..04f8345 100644 > --- a/meta/lib/oeqa/runtime/cases/oe_syslog.py > +++ b/meta/lib/oeqa/runtime/cases/oe_syslog.py > @@ -83,6 +83,8 @@ class SyslogTestConfig(OERuntimeTestCase): > def test_syslog_logger(self): > status, output = self.target.run('logger foobar') > msg = "Can't log into syslog. Output: %s " % output > +if status == 127: > +self.skipTest("We cannot test logger because it is not there.") > self.assertEqual(status, 0, msg=msg) > > # There is no way to flush the logger to disk in all cases Should we not be marking up the test to skip if the appropriate package isn't in the image? Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [oe-core][PATCH 1/1] oeqa: small modification to oe_syslog
Skip logger test if logger is not a command. Signed-off-by: Joe Slater --- meta/lib/oeqa/runtime/cases/oe_syslog.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/lib/oeqa/runtime/cases/oe_syslog.py b/meta/lib/oeqa/runtime/cases/oe_syslog.py index 3a8271a..04f8345 100644 --- a/meta/lib/oeqa/runtime/cases/oe_syslog.py +++ b/meta/lib/oeqa/runtime/cases/oe_syslog.py @@ -83,6 +83,8 @@ class SyslogTestConfig(OERuntimeTestCase): def test_syslog_logger(self): status, output = self.target.run('logger foobar') msg = "Can't log into syslog. Output: %s " % output +if status == 127: +self.skipTest("We cannot test logger because it is not there.") self.assertEqual(status, 0, msg=msg) # There is no way to flush the logger to disk in all cases -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2] systemd: Add partial support of drop-in configuration files to systemd-systemctl-native
Support for serive-name.service.d/ folders containing .conf files It don't support all the partial folder names See https://www.freedesktop.org/software/systemd/man/systemd.unit.html Signed-off-by: Frederic Ouellet --- meta/recipes-core/systemd/systemd-systemctl/systemctl | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl b/meta/recipes-core/systemd/systemd-systemctl/systemctl index 8d7b3ba..8837f54 100755 --- a/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl @@ -28,6 +28,10 @@ class SystemdFile(): def __init__(self, root, path): self.sections = dict() self._parse(root, path) +dirname = os.path.basename(path.name) + ".d" +for location in locations: +for path2 in sorted((root / location / "system" / dirname).glob("*.conf")): +self._parse(root, path2) def _parse(self, root, path): """Parse a systemd syntax configuration file @@ -56,8 +60,11 @@ class SystemdFile(): line = line.rstrip("\n") m = section_re.match(line) if m: -section = dict() -self.sections[m.group('section')] = section +if m.group('section') not in self.sections: +section = dict() +self.sections[m.group('section')] = section +else: +section = self.sections[m.group('section')] continue while line.endswith("\\"): -- 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 systemd: Add partial support of drop-in configuration files to systemd-systemctl-native script
== Series Details == Series: systemd: Add partial support of drop-in configuration files to systemd-systemctl-native script Revision: 1 URL : https://patchwork.openembedded.org/series/18897/ 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: * Patchsystemd: Add partial support of drop-in configuration files to systemd-systemctl-native script Issue Commit shortlog is too long [test_shortlog_length] Suggested fixEdit shortlog so that it is 90 characters or less (currently 94 characters) 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] systemd: Add partial support of drop-in configuration files to systemd-systemctl-native script
Support for serive-name.service.d/ folders containing .conf files It don't support all the partial folder names See https://www.freedesktop.org/software/systemd/man/systemd.unit.html Signed-off-by: Frederic Ouellet --- meta/recipes-core/systemd/systemd-systemctl/systemctl | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl b/meta/recipes-core/systemd/systemd-systemctl/systemctl index 8d7b3ba..8837f54 100755 --- a/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl @@ -28,6 +28,10 @@ class SystemdFile(): def __init__(self, root, path): self.sections = dict() self._parse(root, path) +dirname = os.path.basename(path.name) + ".d" +for location in locations: +for path2 in sorted((root / location / "system" / dirname).glob("*.conf")): +self._parse(root, path2) def _parse(self, root, path): """Parse a systemd syntax configuration file @@ -56,8 +60,11 @@ class SystemdFile(): line = line.rstrip("\n") m = section_re.match(line) if m: -section = dict() -self.sections[m.group('section')] = section +if m.group('section') not in self.sections: +section = dict() +self.sections[m.group('section')] = section +else: +section = self.sections[m.group('section')] continue while line.endswith("\\"): -- 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 Add partial support of drop-in configuration files to systemd-systemctl-native script
== Series Details == Series: Add partial support of drop-in configuration files to systemd-systemctl-native script Revision: 1 URL : https://patchwork.openembedded.org/series/18895/ 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: * PatchAdd partial support of drop-in configuration files to systemd-systemctl-native script Issue Shortlog does not follow expected format [test_shortlog_format] Suggested fixCommit shortlog (first line of commit message) should follow the format ": " 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] Add partial support of drop-in configuration files to systemd-systemctl-native script
Support for serive-name.service.d/ folders containing .conf files It don't support all the partial folder names See https://www.freedesktop.org/software/systemd/man/systemd.unit.html Signed-off-by: Frederic Ouellet --- meta/recipes-core/systemd/systemd-systemctl/systemctl | 11 +-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/meta/recipes-core/systemd/systemd-systemctl/systemctl b/meta/recipes-core/systemd/systemd-systemctl/systemctl index 8d7b3ba..8837f54 100755 --- a/meta/recipes-core/systemd/systemd-systemctl/systemctl +++ b/meta/recipes-core/systemd/systemd-systemctl/systemctl @@ -28,6 +28,10 @@ class SystemdFile(): def __init__(self, root, path): self.sections = dict() self._parse(root, path) +dirname = os.path.basename(path.name) + ".d" +for location in locations: +for path2 in sorted((root / location / "system" / dirname).glob("*.conf")): +self._parse(root, path2) def _parse(self, root, path): """Parse a systemd syntax configuration file @@ -56,8 +60,11 @@ class SystemdFile(): line = line.rstrip("\n") m = section_re.match(line) if m: -section = dict() -self.sections[m.group('section')] = section +if m.group('section') not in self.sections: +section = dict() +self.sections[m.group('section')] = section +else: +section = self.sections[m.group('section')] continue while line.endswith("\\"): -- 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 "libidn2: remove build paths fr..." and 1 more
== Series Details == Series: "libidn2: remove build paths fr..." and 1 more Revision: 1 URL : https://patchwork.openembedded.org/series/18894/ 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 Inappropriate, but no reason was provided [test_upstream_status_presence_format] Suggested fixInclude a brief reason why posix-shell.patch is inappropriate Current Upstream-Status: Inappropriate Standard format Upstream-Status: Inappropriate [reason] 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 2/2] gnutls: don't use HOSTTOOLS_DIR/bash as a shell on target
The libopts configure script looks for a shell on the build host and assumes it's good for the target. However in our builds it find $HOSTTOOLS_DIR/bash which isn't useful, so patch out the detection and force $base_bindir/sh. Signed-off-by: Ross Burton --- .../gnutls/gnutls/posix-shell.patch | 39 +++ meta/recipes-support/gnutls/gnutls_3.6.8.bb | 4 ++ 2 files changed, 43 insertions(+) create mode 100644 meta/recipes-support/gnutls/gnutls/posix-shell.patch diff --git a/meta/recipes-support/gnutls/gnutls/posix-shell.patch b/meta/recipes-support/gnutls/gnutls/posix-shell.patch new file mode 100644 index 000..938e2d1e18f --- /dev/null +++ b/meta/recipes-support/gnutls/gnutls/posix-shell.patch @@ -0,0 +1,39 @@ +Don't embed the path to the build-time POSIX shell as this will be +$TMPDIR/hosttools/bash, which is no good on the target. + +Instead default to /bin/sh but allow it to be set in the environment. + +This isn't really upstreamable but I filed a bug at +https://gitlab.com/gnutls/gnutls/issues/807 and hope a proper fix will be +integrated. + +Upstream-Status: Inappropriate +Signed-off-by: Ross Burton + +diff --git a/src/libopts/m4/libopts.m4 b/src/libopts/m4/libopts.m4 +index c6ad738..a62faca 100644 +--- a/src/libopts/m4/libopts.m4 b/src/libopts/m4/libopts.m4 +@@ -112,21 +112,7 @@ AC_DEFUN([INVOKE_LIBOPTS_MACROS_FIRST],[ + AC_CHECK_FUNCS([mmap canonicalize_file_name snprintf strdup strchr \ + strrchr strsignal fchmod fstat chmod]) + AC_PROG_SED +- [while : +- do +- POSIX_SHELL=`which bash` +- test -x "$POSIX_SHELL" && break +- POSIX_SHELL=`which dash` +- test -x "$POSIX_SHELL" && break +- POSIX_SHELL=/usr/xpg4/bin/sh +- test -x "$POSIX_SHELL" && break +- POSIX_SHELL=`/bin/sh -c ' +- exec 2>/dev/null +- if ! true ; then exit 1 ; fi +- echo /bin/sh'` +- test -x "$POSIX_SHELL" && break +- ]AC_MSG_ERROR([cannot locate a working POSIX shell])[ +- done] ++ POSIX_SHELL="${POSIX_SHELL:-/bin/sh}" + AC_DEFINE_UNQUOTED([POSIX_SHELL], ["${POSIX_SHELL}"], +[define to a working POSIX compliant shell]) + AC_SUBST([POSIX_SHELL]) diff --git a/meta/recipes-support/gnutls/gnutls_3.6.8.bb b/meta/recipes-support/gnutls/gnutls_3.6.8.bb index 6c6c520e8ce..c927063f0a3 100644 --- a/meta/recipes-support/gnutls/gnutls_3.6.8.bb +++ b/meta/recipes-support/gnutls/gnutls_3.6.8.bb @@ -19,6 +19,7 @@ SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" SRC_URI = "https://www.gnupg.org/ftp/gcrypt/gnutls/v${SHRT_VER}/gnutls-${PV}.tar.xz \ file://arm_eabi.patch \ + file://posix-shell.patch \ " SRC_URI[md5sum] = "9dcf0aa45d1a42e1b3ca5d39ec7c61a8" @@ -47,6 +48,9 @@ EXTRA_OECONF = " \ --with-default-trust-store-file=${sysconfdir}/ssl/certs/ca-certificates.crt \ " +# Otherwise the tools try and use HOSTTOOLS_DIR/bash as a shell. +export POSIX_SHELL="${base_bindir}/sh" + LDFLAGS_append_libc-musl = " -largp" do_configure_prepend() { -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/2] libidn2: remove build paths from libidn2.pc
The libunistring m4 macros end up putting the full build-time library path into the .pc file, which is no good on target. Sed it out to stop build paths leaking onto the target. [ YOCTO #13403 ] Signed-off-by: Ross Burton --- meta/recipes-extended/libidn/libidn2_2.2.0.bb | 4 1 file changed, 4 insertions(+) diff --git a/meta/recipes-extended/libidn/libidn2_2.2.0.bb b/meta/recipes-extended/libidn/libidn2_2.2.0.bb index d7fec89fba2..bcbfdd85b91 100644 --- a/meta/recipes-extended/libidn/libidn2_2.2.0.bb +++ b/meta/recipes-extended/libidn/libidn2_2.2.0.bb @@ -21,6 +21,10 @@ EXTRA_OECONF += "--disable-rpath \ --with-libunistring-prefix=${STAGING_EXECPREFIXDIR} \ " +do_install_append() { + sed -i -e 's|-L${STAGING_LIBDIR}||' ${D}${libdir}/pkgconfig/libidn2.pc +} + LICENSE_${PN} = "(GPLv2+ | LGPLv3)" LICENSE_${PN}-bin = "GPLv3+" -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] python3-pip: update to 19.2.1
Signed-off-by: Oleksandr Kravchuk --- .../python/{python3-pip_19.1.1.bb => python3-pip_19.2.1.bb} | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) rename meta/recipes-devtools/python/{python3-pip_19.1.1.bb => python3-pip_19.2.1.bb} (81%) diff --git a/meta/recipes-devtools/python/python3-pip_19.1.1.bb b/meta/recipes-devtools/python/python3-pip_19.2.1.bb similarity index 81% rename from meta/recipes-devtools/python/python3-pip_19.1.1.bb rename to meta/recipes-devtools/python/python3-pip_19.2.1.bb index baf32f4724..ebf1f25c16 100644 --- a/meta/recipes-devtools/python/python3-pip_19.1.1.bb +++ b/meta/recipes-devtools/python/python3-pip_19.2.1.bb @@ -6,8 +6,8 @@ LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=8ba06d529c955048e5ddd7c45459eb2e" DEPENDS += "python3 python3-setuptools-native" -SRC_URI[md5sum] = "4fb98a060f21c731d6743b90a714fc73" -SRC_URI[sha256sum] = "44d3d7d3d30a1eb65c7e5ff1173cdf8f7467850605ac7cc3707b6064bddd0958" +SRC_URI[md5sum] = "e9ac3e030e88b6c076a20ab371a30742" +SRC_URI[sha256sum] = "258d702483dd749400aec59c23d638a5b2249ae28a0f478b6cab12ad45681a80" inherit pypi distutils3 -- 2.17.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] weston: change to use meson build system
Sorry, I did not describe it correctly, as Stefan said, it’s not a build issue with meson, but we need explicitly set the remoting option on or off , or else we will have a gstreamer dependency missing issue. I will change the commit message here in V2. //Ming Liu On Thu, 25 Jul 2019 at 12:42, wrote: > > - Introduce remoting package config, without it meson would run into a > > build error. > > Did you tell upstream about this? > > Ross > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] weston: change to use meson build system
Thanks for the review, will send a V2 as you suggested. //Ming Liu Hi Ming, > > Thanks for working on that! > > On 2019-07-25 13:41, liu.min...@gmail.com wrote: > > From: Ming Liu > > > > The changes include: > > - Drop all autotools related patches. > > - Move weston-launch setuid-install to do_install task since it's not > > supported yet by meson build. > > - Drop cairo-glesv2 package config, it's not supported by meson build, > > it is hardcoded to cairo-image for now in weston source. > > It seem that upstream recommends cairo image anyway (see README.md). I > am not exactly sure why, but this bug seems to indicate that using the > image backend is more efficient? > https://gitlab.freedesktop.org/wayland/weston/issues/46 > > I actually realized that meta-freescale uses the cairo-glesv2 package > config. > > [added Tom to CC who added the package config a while ago] > > I guess we should send a patch to remove that. > > Otherwise the patch looks good to me. I like the fact that this patch > mostly migrates 1:1 to Meson without changing anything else. > > -- > Stefan > > > > - Introduce remoting package config, without it meson would run into a > > build error. > > > > Signed-off-by: Stefan Agner > > Signed-off-by: Ming Liu > > --- > > .../wayland/weston/0001-make-error-portable.patch | 34 > > ...ch-Provide-a-default-version-that-doesn-t.patch | 93 > ++ > > meta/recipes-graphics/wayland/weston_6.0.0.bb | 48 +-- > > 3 files changed, 101 insertions(+), 74 deletions(-) > > > > diff --git > > a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > > b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > > index 0eb3d95..acea9db 100644 > > --- a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > > +++ b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > > @@ -9,27 +9,14 @@ kind of systemsi e.g. musl. > > Upstream-Status: Submitted > > > > Signed-off-by: Khem Raj > > - > > +Signed-off-by: Ming Liu > > --- > > - configure.ac | 2 ++ > > libweston/weston-error.h | 20 > > libweston/weston-launch.c | 2 +- > > - 3 files changed, 23 insertions(+), 1 deletion(-) > > + meson.build | 1 + > > + 3 files changed, 22 insertions(+), 1 deletion(-) > > create mode 100644 libweston/weston-error.h > > > > -diff --git a/configure.ac b/configure.ac > > -index c05ad01..6da6e04 100644 > > a/configure.ac > > -+++ b/configure.ac > > -@@ -126,6 +126,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], > > - [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile > weston")], > > - [[#include ]]) > > - > > -+AC_CHECK_HEADERS([error.h]) > > -+ > > - AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) > > - > > - # check for libdrm as a build-time dependency only > > diff --git a/libweston/weston-error.h b/libweston/weston-error.h > > new file mode 100644 > > index 000..2089d02 > > @@ -76,3 +63,18 @@ index bf73e0d..9064439 100644 > > > > #define DRM_MAJOR 226 > > > > +diff --git a/meson.build b/meson.build > > +index 2155b7b..baa52d9 100644 > > +--- a/meson.build > > b/meson.build > > +@@ -94,6 +94,7 @@ foreach func : optional_libc_funcs > > + endforeach > > + > > + optional_system_headers = [ > > ++'error.h', > > + 'linux/sync_file.h' > > + ] > > + foreach hdr : optional_system_headers > > +-- > > +2.7.4 > > + > > diff --git > > > a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > > > b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > > index a2f61bf..81cc025 100644 > > --- > > > a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > > +++ > > > b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > > @@ -15,44 +15,46 @@ Upstream-Status: Pending > > Signed-off-by: Tom Hochstein > > Signed-off-by: Jussi Kukkonen > > Signed-off-by: Denys Dmytriyenko > > - > > +Signed-off-by: Ming Liu > > --- > > - configure.ac | 9 +++-- > > + libweston/meson.build | 16 > > libweston/weston-launch.c | 20 > > - 2 files changed, 27 insertions(+), 2 deletions(-) > > + meson_options.txt | 7 +++ > > + 3 files changed, 39 insertions(+), 4 deletions(-) > > > > -diff --git a/configure.ac b/configure.ac > > -index 6da6e04..681f7c8 100644 > > a/configure.ac > > -+++ b/configure.ac > > -@@ -515,13 +515,17 @@ AC_ARG_ENABLE(resize-optimization, > > - AS_IF([test "x$enable_resize_optimization" = "xyes"], > > - [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as > > a performance optimization])]) > > - > > -+AC_ARG_WITH(pam, > > -+AS_HELP_STRING([--with-pam], [Use PAM]), > > -+[use_pam=$withval], [use_pam=yes])
Re: [OE-core] [PATCH] weston: change to use meson build system
Hi Ming, Thanks for working on that! On 2019-07-25 13:41, liu.min...@gmail.com wrote: > From: Ming Liu > > The changes include: > - Drop all autotools related patches. > - Move weston-launch setuid-install to do_install task since it's not > supported yet by meson build. > - Drop cairo-glesv2 package config, it's not supported by meson build, > it is hardcoded to cairo-image for now in weston source. It seem that upstream recommends cairo image anyway (see README.md). I am not exactly sure why, but this bug seems to indicate that using the image backend is more efficient? https://gitlab.freedesktop.org/wayland/weston/issues/46 I actually realized that meta-freescale uses the cairo-glesv2 package config. [added Tom to CC who added the package config a while ago] I guess we should send a patch to remove that. Otherwise the patch looks good to me. I like the fact that this patch mostly migrates 1:1 to Meson without changing anything else. -- Stefan > - Introduce remoting package config, without it meson would run into a > build error. > > Signed-off-by: Stefan Agner > Signed-off-by: Ming Liu > --- > .../wayland/weston/0001-make-error-portable.patch | 34 > ...ch-Provide-a-default-version-that-doesn-t.patch | 93 > ++ > meta/recipes-graphics/wayland/weston_6.0.0.bb | 48 +-- > 3 files changed, 101 insertions(+), 74 deletions(-) > > diff --git > a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > index 0eb3d95..acea9db 100644 > --- a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > +++ b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch > @@ -9,27 +9,14 @@ kind of systemsi e.g. musl. > Upstream-Status: Submitted > > Signed-off-by: Khem Raj > - > +Signed-off-by: Ming Liu > --- > - configure.ac | 2 ++ > libweston/weston-error.h | 20 > libweston/weston-launch.c | 2 +- > - 3 files changed, 23 insertions(+), 1 deletion(-) > + meson.build | 1 + > + 3 files changed, 22 insertions(+), 1 deletion(-) > create mode 100644 libweston/weston-error.h > > -diff --git a/configure.ac b/configure.ac > -index c05ad01..6da6e04 100644 > a/configure.ac > -+++ b/configure.ac > -@@ -126,6 +126,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], > - [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile weston")], > - [[#include ]]) > - > -+AC_CHECK_HEADERS([error.h]) > -+ > - AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) > - > - # check for libdrm as a build-time dependency only > diff --git a/libweston/weston-error.h b/libweston/weston-error.h > new file mode 100644 > index 000..2089d02 > @@ -76,3 +63,18 @@ index bf73e0d..9064439 100644 > > #define DRM_MAJOR 226 > > +diff --git a/meson.build b/meson.build > +index 2155b7b..baa52d9 100644 > +--- a/meson.build > b/meson.build > +@@ -94,6 +94,7 @@ foreach func : optional_libc_funcs > + endforeach > + > + optional_system_headers = [ > ++'error.h', > + 'linux/sync_file.h' > + ] > + foreach hdr : optional_system_headers > +-- > +2.7.4 > + > diff --git > a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > index a2f61bf..81cc025 100644 > --- > a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > +++ > b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch > @@ -15,44 +15,46 @@ Upstream-Status: Pending > Signed-off-by: Tom Hochstein > Signed-off-by: Jussi Kukkonen > Signed-off-by: Denys Dmytriyenko > - > +Signed-off-by: Ming Liu > --- > - configure.ac | 9 +++-- > + libweston/meson.build | 16 > libweston/weston-launch.c | 20 > - 2 files changed, 27 insertions(+), 2 deletions(-) > + meson_options.txt | 7 +++ > + 3 files changed, 39 insertions(+), 4 deletions(-) > > -diff --git a/configure.ac b/configure.ac > -index 6da6e04..681f7c8 100644 > a/configure.ac > -+++ b/configure.ac > -@@ -515,13 +515,17 @@ AC_ARG_ENABLE(resize-optimization, > - AS_IF([test "x$enable_resize_optimization" = "xyes"], > - [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as > a performance optimization])]) > - > -+AC_ARG_WITH(pam, > -+AS_HELP_STRING([--with-pam], [Use PAM]), > -+[use_pam=$withval], [use_pam=yes]) > - AC_ARG_ENABLE(weston-launch, [ --enable-weston-launch],, > enable_weston_launch=yes) > - AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch = xyes) > --if test x$enable_weston_launch = xyes; then > -+if test x$enable_weston_launch = xyes -a x$use_pam = xyes; then > - WESTON_SEARCH_LIBS([PAM],
[OE-core] package.bbclass behaviour with multiple providers of a shared library
Hi oe-core devs, looking at package.bbclass and in particular the read_shlib_providers() function (although, without having fully understood it): For scanning the SHLIBSDIRS, it uses os.listdir() but seemingly without sorting. There is a comment saying "the last one found wins". Couldn't this cause "undefined" behaviour in case there are multiple providers of a shared library? (meaning sometimes one provider wins, sometimes the others, since they are in separate files in the SHLIBSDIRS) Specifically, I saw a build failure, which I can't seem to reproduce anymore now, with meta-freescale's openssl-qoriq, which packages libcrypto.so.1.1/libssl.so.1.1 in libcrypto/libssl packages but also in a openssl-qoriq-ptest package. .../tmp/pkgdata/lx2160ardb/shlibs2$ grep -r 'libssl\.so\.1\.1\|libcrypto\.so\.1\.1' openssl-qoriq-ptest.list:libssl.so.1.1:/usr/lib/openssl-qoriq/ptest:1.1.0g openssl-qoriq-ptest.list:libcrypto.so.1.1:/usr/lib/openssl-qoriq/ptest:1.1.0g libcrypto.list:libcrypto.so.1.1:/usr/lib:1.1.0g libssl.list:libssl.so.1.1:/usr/lib:1.1.0g Kind regards, Daniel pEpkey.asc Description: application/pgp-keys -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] Perl5 build issues (meta-cpan only?)
Hi all, please apologize that I didn't act earlier after Alexanders update of perl. Too many weddings ... you know very well. The problem with the conflicts with the dual-life modules we should perhaps discuss separately - as far as I know, there were more fundamental problems with -native. Then we might not only need a technical solution for ... I try to come to Lyon. Maybe one or the other has already seen the following message in connection with modules::Build-based Perl modules: ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: QA Issue: No GNU_HASH in the ELF binary /home/sno/gpw-community-bsp/gpw-yocto-platform/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/hash-fieldhash-perl/0.15-r0/packages-split/hash-fieldhash-perl/usr/lib/perl5/vendor_perl/5.30.0/arm-linux/auto/Hash/FieldHash/FieldHash.so, didn't pass LDFLAGS? [ldflags] ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: QA run found fatal errors. Please consider fixing them. ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: ERROR: hash-fieldhash-perl-0.15-r0 do_package_qa: Function failed: do_package_qa ERROR: Logfile of failure stored in: /home/sno/gpw-community-bsp/gpw-yocto-platform/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/hash-fieldhash-perl/0.15-r0/temp/log.do_package_qa.12168 ERROR: Task (/home/sno/gpw-community-bsp/sources/meta-cpan/recipes-devel/hash-fieldhash-perl/hash-fieldhash-perl_0.15.bb:do_package_qa) failed with exit code '1' I think the reason is in https://metacpan.org/source/AMBS/ExtUtils-CBuilder-0.280231/lib/ExtUtils/CBuilder/Base.pm#L319 where the arguments from ldflags are thrown away. When those issues came up somewhere else than in meta-cpan, please let me know (only open-source ^^). We should develop a fix like https://github.com/meta-cpan/meta-cpan/commit/52ded0759daa3bff909bf5fac6d31c6bc52d713e then ... For now - I think Alberto should receive a patch to use ldflags, too. I cannot decide how critic and important that is to make it into perl-5.30.1 ... When ExtUtils::CBuilder is properly fixed, no changed are required to cpan_build.bbclass, aren't they? Cheers -- Jens Rehsack - rehs...@gmail.com signature.asc Description: Message signed with OpenPGP -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] weston: change to use meson build system
On 2019-07-25 14:21, Burton, Ross wrote: > On Thu, 25 Jul 2019 at 12:42, wrote: >> - Introduce remoting package config, without it meson would run into a >> build error. What do you mean by that exactly, I guess it does build at all with remoting, and by introducing a packaging config you disable it for now? > > Did you tell upstream about this? There is actually Weston 6.0.1 with some Meson related fixed, also remoting: https://gitlab.freedesktop.org/wayland/weston/commits/6.0.1 We probably should upgrade to 6.0.1 too. -- Stefan -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] weston: change to use meson build system
On Thu, 25 Jul 2019 at 12:42, wrote: > - Introduce remoting package config, without it meson would run into a > build error. Did you tell upstream about this? Ross -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] weston: change to use meson build system
From: Ming Liu The changes include: - Drop all autotools related patches. - Move weston-launch setuid-install to do_install task since it's not supported yet by meson build. - Drop cairo-glesv2 package config, it's not supported by meson build, it is hardcoded to cairo-image for now in weston source. - Introduce remoting package config, without it meson would run into a build error. Signed-off-by: Stefan Agner Signed-off-by: Ming Liu --- .../wayland/weston/0001-make-error-portable.patch | 34 ...ch-Provide-a-default-version-that-doesn-t.patch | 93 ++ meta/recipes-graphics/wayland/weston_6.0.0.bb | 48 +-- 3 files changed, 101 insertions(+), 74 deletions(-) diff --git a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch index 0eb3d95..acea9db 100644 --- a/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch +++ b/meta/recipes-graphics/wayland/weston/0001-make-error-portable.patch @@ -9,27 +9,14 @@ kind of systemsi e.g. musl. Upstream-Status: Submitted Signed-off-by: Khem Raj - +Signed-off-by: Ming Liu --- - configure.ac | 2 ++ libweston/weston-error.h | 20 libweston/weston-launch.c | 2 +- - 3 files changed, 23 insertions(+), 1 deletion(-) + meson.build | 1 + + 3 files changed, 22 insertions(+), 1 deletion(-) create mode 100644 libweston/weston-error.h -diff --git a/configure.ac b/configure.ac -index c05ad01..6da6e04 100644 a/configure.ac -+++ b/configure.ac -@@ -126,6 +126,8 @@ AC_CHECK_DECL(CLOCK_MONOTONIC,[], - [AC_MSG_ERROR("CLOCK_MONOTONIC is needed to compile weston")], - [[#include ]]) - -+AC_CHECK_HEADERS([error.h]) -+ - AC_CHECK_FUNCS([mkostemp strchrnul initgroups posix_fallocate]) - - # check for libdrm as a build-time dependency only diff --git a/libweston/weston-error.h b/libweston/weston-error.h new file mode 100644 index 000..2089d02 @@ -76,3 +63,18 @@ index bf73e0d..9064439 100644 #define DRM_MAJOR 226 +diff --git a/meson.build b/meson.build +index 2155b7b..baa52d9 100644 +--- a/meson.build b/meson.build +@@ -94,6 +94,7 @@ foreach func : optional_libc_funcs + endforeach + + optional_system_headers = [ ++ 'error.h', + 'linux/sync_file.h' + ] + foreach hdr : optional_system_headers +-- +2.7.4 + diff --git a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch index a2f61bf..81cc025 100644 --- a/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch +++ b/meta/recipes-graphics/wayland/weston/0001-weston-launch-Provide-a-default-version-that-doesn-t.patch @@ -15,44 +15,46 @@ Upstream-Status: Pending Signed-off-by: Tom Hochstein Signed-off-by: Jussi Kukkonen Signed-off-by: Denys Dmytriyenko - +Signed-off-by: Ming Liu --- - configure.ac | 9 +++-- + libweston/meson.build | 16 libweston/weston-launch.c | 20 - 2 files changed, 27 insertions(+), 2 deletions(-) + meson_options.txt | 7 +++ + 3 files changed, 39 insertions(+), 4 deletions(-) -diff --git a/configure.ac b/configure.ac -index 6da6e04..681f7c8 100644 a/configure.ac -+++ b/configure.ac -@@ -515,13 +515,17 @@ AC_ARG_ENABLE(resize-optimization, - AS_IF([test "x$enable_resize_optimization" = "xyes"], - [AC_DEFINE([USE_RESIZE_POOL], [1], [Use resize memory pool as a performance optimization])]) - -+AC_ARG_WITH(pam, -+AS_HELP_STRING([--with-pam], [Use PAM]), -+[use_pam=$withval], [use_pam=yes]) - AC_ARG_ENABLE(weston-launch, [ --enable-weston-launch],, enable_weston_launch=yes) - AM_CONDITIONAL(BUILD_WESTON_LAUNCH, test x$enable_weston_launch = xyes) --if test x$enable_weston_launch = xyes; then -+if test x$enable_weston_launch = xyes -a x$use_pam = xyes; then - WESTON_SEARCH_LIBS([PAM], [pam], [pam_open_session], [have_pam=yes], [have_pam=no]) - if test x$have_pam = xno; then --AC_ERROR([weston-launch requires pam]) -+AC_ERROR([PAM support is explicitly requested, but libpam couldn't be found]) - fi -+ AC_DEFINE([HAVE_PAM], [1], [Define if PAM is available]) - fi - - AM_CONDITIONAL(HAVE_PANGO, test "x$have_pango" = "xyes") -@@ -767,6 +771,7 @@ AC_MSG_RESULT([ - Enable developer documentation ${enable_devdocs} - - weston-launch utility ${enable_weston_launch} -+ PAM support ${use_pam} - systemd-login support ${have_systemd_login} - systemd notify support ${enable_systemd_notify} - +diff --git a/libweston/meson.build b/libweston/meson.build +index 33ab970..32f495a 100644 +--- a/libweston/meson.build b/libweston/meson.build +@@ -472,16
Re: [OE-core] [oe-core][PATCH 1/2] defaultsetup.conf: enable select init manager
On 2019/7/24 上午3:30, richard.pur...@linuxfoundation.org wrote: On Mon, 2019-07-22 at 23:26 +, Mittal, Anuj wrote: On Mon, 2019-07-22 at 09:37 +0800, Kang Kai wrote: I just run oe-selftest -a with this patch after you updated the patch in oe-core. But I met some (>15) errors ERROR: Unable to start bitbake server (None) But I think it should not be related with init manager changes and will change a build machine to test. Do you have test it again in autobuilder and any failure found? Thanks. Not sure if these have been reported but there are some failures in runtime tests which look related to this change: https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/855/steps/8/logs/step1c https://autobuilder.yoctoproject.org/typhoon/#/builders/50/builds/852/steps/8/logs/step1c https://autobuilder.yoctoproject.org/typhoon/#/builders/76/builds/856/steps/8/logs/step2c I did a back to back build comparision with and without the init system change. Basically every failure in: https://autobuilder.yoctoproject.org/typhoon/#/builders/83/builds/297 It fails with $ bitbake core-image-sato-sdk -c testimage RESULTS - systemd.SystemdBasicTests.test_systemd_failed: FAILED (0.56s) It checks failed systemd services and got one: UNIT LOAD ACTIVE SUB DESCRIPTION ● nfs-statd.service loaded failed failed NFS status monitor for NFSv2/3 locking. But when boot the qemu image or only run systemd testcases( with its dependenies), no such failure. I doubt it may be affected by other test cases. Regards, Kai seems to be due to the init system default change so we have some issues in there to resolve before we can change the default. Cheers, Richard -- Kai Kang -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] ✗ patchtest: failure for runqemu: add lockfile for port used when slirp enabled
== Series Details == Series: runqemu: add lockfile for port used when slirp enabled Revision: 1 URL : https://patchwork.openembedded.org/series/18890/ 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: * Patchrunqemu: add lockfile for port used when slirp enabled Issue Yocto Project bugzilla tag is not correctly formatted [test_bugzilla_entry_format] Suggested fixSpecify bugzilla ID in commit description with format: "[YOCTO #]" 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] runqemu: add lockfile for port used when slirp enabled
From: Changqing Li There is race condition when multi qemu starting with slirp, add lockfile for each port to avoid problem like: runqemu - ERROR - Failed to run qemu: qemu-system-x86_64: Could not set up host forwarding rule 'tcp::2323-:23' [YOCTO: #13364] Signed-off-by: Changqing Li --- scripts/runqemu | 128 1 file changed, 91 insertions(+), 37 deletions(-) diff --git a/scripts/runqemu b/scripts/runqemu index 4079f2b..c6a892d 100755 --- a/scripts/runqemu +++ b/scripts/runqemu @@ -119,19 +119,6 @@ def get_first_file(cmds): return f return '' -def check_free_port(host, port): -""" Check whether the port is free or not """ -import socket -from contextlib import closing - -with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as sock: -if sock.connect_ex((host, port)) == 0: -# Port is open, so not free -return False -else: -# Port is not open, so free -return True - class BaseConfig(object): def __init__(self): # The self.d saved vars from self.set(), part of them are from qemuboot.conf @@ -181,8 +168,9 @@ class BaseConfig(object): self.audio_enabled = False self.tcpserial_portnum = '' self.custombiosdir = '' -self.lock = '' -self.lock_descriptor = None +self.taplock = '' +self.taplock_descriptor = None +self.portlocks = {} self.bitbake_e = '' self.snapshot = False self.wictypes = ('wic', 'wic.vmdk', 'wic.qcow2', 'wic.vdi') @@ -204,30 +192,81 @@ class BaseConfig(object): # avoid cleanup twice self.cleaned = False -def acquire_lock(self, error=True): -logger.debug("Acquiring lockfile %s..." % self.lock) +def acquire_taplock(self, error=True): +logger.debug("Acquiring lockfile %s..." % self.taplock) try: -self.lock_descriptor = open(self.lock, 'w') -fcntl.flock(self.lock_descriptor, fcntl.LOCK_EX|fcntl.LOCK_NB) +self.taplock_descriptor = open(self.taplock, 'w') +fcntl.flock(self.taplock_descriptor, fcntl.LOCK_EX|fcntl.LOCK_NB) except Exception as e: -msg = "Acquiring lockfile %s failed: %s" % (self.lock, e) +msg = "Acquiring lockfile %s failed: %s" % (self.taplock, e) if error: logger.error(msg) else: logger.info(msg) -if self.lock_descriptor: -self.lock_descriptor.close() -self.lock_descriptor = None +if self.taplock_descriptor: +self.taplock_descriptor.close() +self.taplock_descriptor = None return False return True -def release_lock(self): -if self.lock_descriptor: +def release_taplock(self): +if self.taplock_descriptor: logger.debug("Releasing lockfile for tap device '%s'" % self.tap) -fcntl.flock(self.lock_descriptor, fcntl.LOCK_UN) -self.lock_descriptor.close() -os.remove(self.lock) -self.lock_descriptor = None +fcntl.flock(self.taplock_descriptor, fcntl.LOCK_UN) +self.taplock_descriptor.close() +os.remove(self.taplock) +self.taplock_descriptor = None + +def check_free_port(self, host, port, lockdir): +""" Check whether the port is free or not """ +import socket +from contextlib import closing + +lockfile = os.path.join(lockdir, str(port) + '.lock') +if self.acquire_portlock(lockfile): +with closing(socket.socket(socket.AF_INET, socket.SOCK_STREAM)) as sock: +if sock.connect_ex((host, port)) == 0: +# Port is open, so not free +self.release_portlock(lockfile) +return False +else: +# Port is not open, so free +return True +else: +return False + +def acquire_portlock(self, lockfile, error=True): +logger.debug("Acquiring lockfile %s..." % lockfile) +try: +portlock_descriptor = open(lockfile, 'w') +self.portlocks.update({lockfile: portlock_descriptor}) +fcntl.flock(self.portlocks[lockfile], fcntl.LOCK_EX|fcntl.LOCK_NB) +except Exception as e: +msg = "Acquiring lockfile %s failed: %s" % (lockfile, e) +if error: +logger.error(msg) +else: +logger.info(msg) +if self.portlocks[lockfile]: +self.portlocks[lockfile].close() +del self.portlocks[lockfile] +return False +return True + +def release_portlock(self, lockfile=None): +if lockfile != None: + logger.debug("Releasing
Re: [OE-core] [PATCH] libsoup: Add password capabilities for use with ostree
I'm not hugely happy about adding new API that isn't in discussion with upstream. Ross On Thu, 25 Jul 2019 at 08:02, wrote: > > From: Jason Wessel > > Add the ability to use a password encoded URI for use with ostree. > > Signed-off-by: Jason Wessel > Signed-off-by: Mingli Yu > --- > ...0001-add-soup_uri_to_string_with_password.patch | 67 > ++ > meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb | 1 + > 2 files changed, 68 insertions(+) > create mode 100644 > meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch > > diff --git > a/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch > > b/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch > new file mode 100644 > index 000..c679d6b > --- /dev/null > +++ > b/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch > @@ -0,0 +1,67 @@ > +From 82c2f059bc7c491c8c4c728408eb913bfc4a6f0a Mon Sep 17 00:00:00 2001 > +From: Hongxu Jia > +Date: Wed, 6 Jun 2018 22:37:30 +0800 > +Subject: [PATCH] add soup_uri_to_string_with_password > + > +The existed soup_uri_to_string does not have password, add a > +function to support it. > + > +Upstream-Status: Pending > + > +Signed-off-by: Hongxu Jia > +--- > + libsoup/soup-uri.c | 21 + > + libsoup/soup-uri.h | 5 + > + 2 files changed, 26 insertions(+) > + > +diff --git a/libsoup/soup-uri.c b/libsoup/soup-uri.c > +index 3eafd87..8421f1c 100644 > +--- a/libsoup/soup-uri.c > b/libsoup/soup-uri.c > +@@ -619,6 +619,27 @@ soup_uri_to_string (SoupURI *uri, gboolean > just_path_and_query) > + } > + > + /** > ++ * soup_uri_to_string_with_password: > ++ * @uri: a #SoupURI > ++ * @just_path_and_query: if %TRUE, output just the path and query portions > ++ * > ++ * Returns a string representing @uri. > ++ * > ++ * If @just_path_and_query is %TRUE, this concatenates the path and query > ++ * together. That is, it constructs the string that would be needed in > ++ * the Request-Line of an HTTP request for @uri. > ++ * > ++ * Note that the output will contain a password, if @uri does. > ++ * > ++ * Return value: a string representing @uri, which the caller must free. > ++ **/ > ++char * > ++soup_uri_to_string_with_password (SoupURI *uri, gboolean > just_path_and_query) > ++{ > ++ return soup_uri_to_string_internal (uri, just_path_and_query, TRUE, > FALSE); > ++} > ++ > ++/** > + * soup_uri_copy: > + * @uri: a #SoupURI > + * > +diff --git a/libsoup/soup-uri.h b/libsoup/soup-uri.h > +index b9360c6..af702d3 100644 > +--- a/libsoup/soup-uri.h > b/libsoup/soup-uri.h > +@@ -57,6 +57,11 @@ char *soup_uri_to_string (SoupURI > *uri, > + gbooleanjust_path_and_query); > + > + SOUP_AVAILABLE_IN_2_4 > ++char *soup_uri_to_string_with_password (SoupURI > *uri, > ++ gbooleanjust_path_and_query); > ++ > ++ > ++SOUP_AVAILABLE_IN_2_4 > + SoupURI *soup_uri_copy (SoupURI*uri); > + > + SOUP_AVAILABLE_IN_2_4 > +-- > +2.7.4 > + > diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb > b/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb > index c4715a0..2d1f921 100644 > --- a/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb > +++ b/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb > @@ -11,6 +11,7 @@ SHRT_VER = > "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" > > SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \ > > file://0001-Do-not-enforce-no-introspection-when-cross-building.patch \ > + file://0001-add-soup_uri_to_string_with_password.patch \ > " > SRC_URI[md5sum] = "66c2ae89d6031b01337d78a2c57c75d5" > SRC_URI[sha256sum] = > "bd2ea602eba642509672812f3c99b77cbec2f3de02ba1cc8cb7206bf7de0ae2a" > -- > 2.7.4 > > -- > ___ > 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
Re: [OE-core] [PATCH] kernel-fitimage: uboot-sign: fix missing signature
Jun Nie 于2019年7月10日周三 下午3:11写道: > > u-boot.bin with dtb & signature should be placed in ${B} so that > it can be deployed by u-boot as expected. Otherwise, the version > without signature is installed. > > Signed-off-by: Jun Nie Hi Richard, Could you also help to cherry pick this patch to warrior branch? Thanks! Jun -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] archive: fix racing between do_ar_patched and do_kernel_configme
While archive mode is 'patched', there is a probably racing between do_ar_patched and do_kernel_configme [snip] |File: 'oe-core/meta/classes/archiver.bbclass', lineno: 313, function: create_tarball ... |Exception: FileNotFoundError: [Errno 2] No such file or directory: 'build/ tmp-glibc/work-shared/qemux86-64/kernel-source/.tmp.config.DCUH7mUNe3' [snip] Task do_kernel_configme will modify ${S}, and it broke create_tarball in do_ar_patched. Order do_kernel_configme and do_ar_patched to avoid racing. Also improve sstatesig.py to respect commit [fed0ed8 archiver.bbclass: do not cause kernel rebuilds] Signed-off-by: Hongxu Jia --- meta/classes/archiver.bbclass | 8 ++-- meta/lib/oe/sstatesig.py | 3 ++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/meta/classes/archiver.bbclass b/meta/classes/archiver.bbclass index af9f010..72ce34a 100644 --- a/meta/classes/archiver.bbclass +++ b/meta/classes/archiver.bbclass @@ -487,7 +487,11 @@ python () { # Add tasks in the correct order, specifically for linux-yocto to avoid race condition. # sstatesig.py:sstate_rundepfilter has special support that excludes this dependency # so that do_kernel_configme does not need to run again when do_unpack_and_patch -# gets added or removed (by adding or removing archiver.bbclass). +# or do_ar_patched gets added or removed (by adding or removing archiver.bbclass). if bb.data.inherits_class('kernel-yocto', d): -bb.build.addtask('do_kernel_configme', 'do_configure', 'do_unpack_and_patch', d) +ar_src = d.getVarFlag('ARCHIVER_MODE', 'src') +if ar_src == "patched": +bb.build.addtask('do_kernel_configme', 'do_configure', 'do_ar_patched', d) +else: +bb.build.addtask('do_kernel_configme', 'do_configure', 'do_unpack_and_patch', d) } diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py index 13af16e..b1b9c39 100644 --- a/meta/lib/oe/sstatesig.py +++ b/meta/lib/oe/sstatesig.py @@ -28,7 +28,8 @@ def sstate_rundepfilter(siggen, fn, recipename, task, dep, depname, dataCache): # The exception is the special do_kernel_configme->do_unpack_and_patch # dependency from archiver.bbclass. if recipename == depname: -if task == "do_kernel_configme" and dep.endswith(".do_unpack_and_patch"): +if task == "do_kernel_configme" and (dep.endswith(".do_unpack_and_patch") or \ + dep.endswith(".do_ar_patched")): return False return True -- 2.8.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] packagegroup-core-base-utils: Make it machine specific
Sorry about that, I did not catch that on my builder. I have sent a v2 of the patch, please let me know if you prefer instead a "patch to fix the patch". Thanks! On Thu, Jul 25, 2019 at 6:15 AM Mittal, Anuj wrote: > > This is causing errors: > > Parsing recipes...ERROR: /home/pokybuild/yocto- > worker/multilib/build/meta/recipes-extended/packagegroups/packagegroup- > core-base-utils.bb: Please ensure recipe /home/pokybuild/yocto- > worker/multilib/build/meta/recipes-extended/packagegroups/packagegroup- > core-base-utils.bb sets PACKAGE_ARCH before inherit packagegroup > ERROR: /home/pokybuild/yocto-worker/multilib/build/meta/recipes- > extended/packagegroups/packagegroup-core-base-utils.bb: Please ensure > recipe /home/pokybuild/yocto-worker/multilib/build/meta/recipes- > extended/packagegroups/packagegroup-core-base-utils.bb sets > PACKAGE_ARCH before inherit packagegroup > ERROR: /home/pokybuild/yocto-worker/multilib/build/meta/recipes- > extended/packagegroups/packagegroup-core-base-utils.bb: Please ensure > recipe /home/pokybuild/yocto-worker/multilib/build/meta/recipes- > extended/packagegroups/packagegroup-core-base-utils.bb sets > PACKAGE_ARCH before inherit packagegroup > done. > > https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/879/steps/8/logs/step6b > > Thanks, > > Anuj > > On Tue, 2019-07-23 at 14:37 +0200, Ricardo Ribalda Delgado wrote: > > Recipe makes use of the variable MACHINE_FEATURES, which is machine > > specific: > > > > ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "kbd", "", d)} > > > > This patch avoids multiconfig errors such as: > > > > ERROR: mc:qt5222:packagegroup-core-base-utils-1.0-r0 > > do_package_qa_setscene: Error executing a python function in > > exec_python_func() autogenerated: > > > > The stack trace of python calls that resulted in this > > exception/failure was: > > File: 'exec_python_func() autogenerated', lineno: 2, function: > > > > 0001: > > *** 0002:do_package_qa_setscene(d) > > 0003: > > File: '/workdir/repo/poky/meta/classes/insane.bbclass', lineno: 1026, > > function: do_package_qa_setscene > > 1022:SSTATETASKS += "do_package_qa" > > 1023:do_package_qa[sstate-inputdirs] = "" > > 1024:do_package_qa[sstate-outputdirs] = "" > > 1025:python do_package_qa_setscene () { > > *** 1026:sstate_setscene(d) > > 1027:} > > 1028:addtask do_package_qa_setscene > > 1029: > > 1030:python do_qa_staging() { > > > > Signed-off-by: Ricardo Ribalda Delgado > > --- > > .../packagegroups/packagegroup-core-base-utils.bb | 2 > > ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/meta/recipes-extended/packagegroups/packagegroup-core- > > base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup- > > core-base-utils.bb > > index 611e0cafcc..935322cfe0 100644 > > --- a/meta/recipes-extended/packagegroups/packagegroup-core-base- > > utils.bb > > +++ b/meta/recipes-extended/packagegroups/packagegroup-core-base- > > utils.bb > > @@ -9,6 +9,8 @@ inherit packagegroup > > > > VIRTUAL-RUNTIME_vim ?= "vim-tiny" > > > > +PACKAGE_ARCH = "${MACHINE_ARCH}" > > + > > RDEPENDS_${PN} = "\ > > base-passwd \ > > bash \ > > -- > > 2.20.1 > > -- Ricardo Ribalda -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2] packagegroup-core-base-utils: Make it machine specific
Recipe makes use of the variable MACHINE_FEATURES, which is machine specific: ${@bb.utils.contains("MACHINE_FEATURES", "keyboard", "kbd", "", d)} This patch avoids multiconfig errors such as: ERROR: mc:qt5222:packagegroup-core-base-utils-1.0-r0 do_package_qa_setscene: Error executing a python function in exec_python_func() autogenerated: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: 0001: *** 0002:do_package_qa_setscene(d) 0003: File: '/workdir/repo/poky/meta/classes/insane.bbclass', lineno: 1026, function: do_package_qa_setscene 1022:SSTATETASKS += "do_package_qa" 1023:do_package_qa[sstate-inputdirs] = "" 1024:do_package_qa[sstate-outputdirs] = "" 1025:python do_package_qa_setscene () { *** 1026:sstate_setscene(d) 1027:} 1028:addtask do_package_qa_setscene 1029: 1030:python do_qa_staging() { Signed-off-by: Ricardo Ribalda Delgado Signed-off-by: Richard Purdie --- v2: Swap order of PACKAGE_ARCH = "${MACHINE_ARCH}" and inherit packagegroup This is causing errors: Parsing recipes...ERROR: /home/pokybuild/yocto- worker/multilib/build/meta/recipes-extended/packagegroups/packagegroup- core-base-utils.bb: Please ensure recipe /home/pokybuild/yocto- worker/multilib/build/meta/recipes-extended/packagegroups/packagegroup- core-base-utils.bb sets PACKAGE_ARCH before inherit packagegroup ERROR: /home/pokybuild/yocto-worker/multilib/build/meta/recipes- extended/packagegroups/packagegroup-core-base-utils.bb: Please ensure recipe /home/pokybuild/yocto-worker/multilib/build/meta/recipes- extended/packagegroups/packagegroup-core-base-utils.bb sets PACKAGE_ARCH before inherit packagegroup ERROR: /home/pokybuild/yocto-worker/multilib/build/meta/recipes- extended/packagegroups/packagegroup-core-base-utils.bb: Please ensure recipe /home/pokybuild/yocto-worker/multilib/build/meta/recipes- extended/packagegroups/packagegroup-core-base-utils.bb sets PACKAGE_ARCH before inherit packagegroup done. https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/879/steps/8/logs/step6b .../packagegroups/packagegroup-core-base-utils.bb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb index 611e0cafcc..18e227144a 100644 --- a/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb +++ b/meta/recipes-extended/packagegroups/packagegroup-core-base-utils.bb @@ -5,6 +5,8 @@ SUMMARY = "Full-featured set of base utils" DESCRIPTION = "Package group bringing in packages needed to provide much of the base utils type functionality found in busybox" +PACKAGE_ARCH = "${MACHINE_ARCH}" + inherit packagegroup VIRTUAL-RUNTIME_vim ?= "vim-tiny" -- 2.20.1 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] libsoup: Add password capabilities for use with ostree
From: Jason Wessel Add the ability to use a password encoded URI for use with ostree. Signed-off-by: Jason Wessel Signed-off-by: Mingli Yu --- ...0001-add-soup_uri_to_string_with_password.patch | 67 ++ meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb | 1 + 2 files changed, 68 insertions(+) create mode 100644 meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch diff --git a/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch b/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch new file mode 100644 index 000..c679d6b --- /dev/null +++ b/meta/recipes-support/libsoup/libsoup-2.4/0001-add-soup_uri_to_string_with_password.patch @@ -0,0 +1,67 @@ +From 82c2f059bc7c491c8c4c728408eb913bfc4a6f0a Mon Sep 17 00:00:00 2001 +From: Hongxu Jia +Date: Wed, 6 Jun 2018 22:37:30 +0800 +Subject: [PATCH] add soup_uri_to_string_with_password + +The existed soup_uri_to_string does not have password, add a +function to support it. + +Upstream-Status: Pending + +Signed-off-by: Hongxu Jia +--- + libsoup/soup-uri.c | 21 + + libsoup/soup-uri.h | 5 + + 2 files changed, 26 insertions(+) + +diff --git a/libsoup/soup-uri.c b/libsoup/soup-uri.c +index 3eafd87..8421f1c 100644 +--- a/libsoup/soup-uri.c b/libsoup/soup-uri.c +@@ -619,6 +619,27 @@ soup_uri_to_string (SoupURI *uri, gboolean just_path_and_query) + } + + /** ++ * soup_uri_to_string_with_password: ++ * @uri: a #SoupURI ++ * @just_path_and_query: if %TRUE, output just the path and query portions ++ * ++ * Returns a string representing @uri. ++ * ++ * If @just_path_and_query is %TRUE, this concatenates the path and query ++ * together. That is, it constructs the string that would be needed in ++ * the Request-Line of an HTTP request for @uri. ++ * ++ * Note that the output will contain a password, if @uri does. ++ * ++ * Return value: a string representing @uri, which the caller must free. ++ **/ ++char * ++soup_uri_to_string_with_password (SoupURI *uri, gboolean just_path_and_query) ++{ ++ return soup_uri_to_string_internal (uri, just_path_and_query, TRUE, FALSE); ++} ++ ++/** + * soup_uri_copy: + * @uri: a #SoupURI + * +diff --git a/libsoup/soup-uri.h b/libsoup/soup-uri.h +index b9360c6..af702d3 100644 +--- a/libsoup/soup-uri.h b/libsoup/soup-uri.h +@@ -57,6 +57,11 @@ char *soup_uri_to_string (SoupURI *uri, + gbooleanjust_path_and_query); + + SOUP_AVAILABLE_IN_2_4 ++char *soup_uri_to_string_with_password (SoupURI *uri, ++ gbooleanjust_path_and_query); ++ ++ ++SOUP_AVAILABLE_IN_2_4 + SoupURI *soup_uri_copy (SoupURI*uri); + + SOUP_AVAILABLE_IN_2_4 +-- +2.7.4 + diff --git a/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb b/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb index c4715a0..2d1f921 100644 --- a/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb +++ b/meta/recipes-support/libsoup/libsoup-2.4_2.66.2.bb @@ -11,6 +11,7 @@ SHRT_VER = "${@d.getVar('PV').split('.')[0]}.${@d.getVar('PV').split('.')[1]}" SRC_URI = "${GNOME_MIRROR}/libsoup/${SHRT_VER}/libsoup-${PV}.tar.xz \ file://0001-Do-not-enforce-no-introspection-when-cross-building.patch \ + file://0001-add-soup_uri_to_string_with_password.patch \ " SRC_URI[md5sum] = "66c2ae89d6031b01337d78a2c57c75d5" SRC_URI[sha256sum] = "bd2ea602eba642509672812f3c99b77cbec2f3de02ba1cc8cb7206bf7de0ae2a" -- 2.7.4 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core