All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 01/13] rust: drop PV from include file names
@ 2021-10-10 19:09 Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 02/13] rust: update 1.54.0 -> 1.55.0 Alexander Kanavin
                   ` (11 more replies)
  0 siblings, 12 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:09 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

This complicates (semi) automated upgrades, and isn't necessary
as we carry only a single version of the toolchain.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 .../cargo/cargo-cross-canadian_1.54.0.bb       |  4 ++--
 meta/recipes-devtools/cargo/cargo_1.54.0.bb    |  4 ++--
 ...initions-for-riscv64-musl-libc-0.2.93.patch |  0
 ...l-mod.rs-add-riscv64-to-b64-set-libc-.patch |  0
 ...definitions-to-match-musl-libc-0.2.93.patch |  0
 ...s-for-modified-files-for-rust-1.54.0-.patch |  0
 meta/recipes-devtools/rust/libstd-rs_1.54.0.bb |  2 +-
 .../rust/rust-cross-canadian_1.54.0.bb         |  4 ++--
 .../recipes-devtools/rust/rust-cross_1.54.0.bb |  2 +-
 meta/recipes-devtools/rust/rust-llvm_1.54.0.bb |  2 +-
 .../rust/rust-snapshot-1.54.0.inc              | 18 ------------------
 meta/recipes-devtools/rust/rust-snapshot.inc   | 16 ++++++++++++++++
 .../rust/rust-source-1.54.0.inc                |  3 ---
 meta/recipes-devtools/rust/rust-source.inc     |  1 +
 .../rust/rust-tools-cross-canadian_1.54.0.bb   |  4 ++--
 meta/recipes-devtools/rust/rust_1.54.0.bb      |  4 ++--
 16 files changed, 30 insertions(+), 34 deletions(-)
 rename meta/recipes-devtools/rust/{libstd-rs-1.54.0 => libstd-rs}/0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch (100%)
 rename meta/recipes-devtools/rust/{libstd-rs-1.54.0 => libstd-rs}/0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch (100%)
 rename meta/recipes-devtools/rust/{libstd-rs-1.54.0 => libstd-rs}/0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch (100%)
 rename meta/recipes-devtools/rust/{libstd-rs-1.54.0 => libstd-rs}/0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch (100%)
 delete mode 100644 meta/recipes-devtools/rust/rust-snapshot-1.54.0.inc
 delete mode 100644 meta/recipes-devtools/rust/rust-source-1.54.0.inc

diff --git a/meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb b/meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb
index dba400bcfb7..63fd69107be 100644
--- a/meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb
+++ b/meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb
@@ -1,5 +1,5 @@
-require recipes-devtools/rust/rust-source-${PV}.inc
-require recipes-devtools/rust/rust-snapshot-${PV}.inc
+require recipes-devtools/rust/rust-source.inc
+require recipes-devtools/rust/rust-snapshot.inc
 
 FILESEXTRAPATHS:prepend := "${THISDIR}/cargo-${PV}:"
 
diff --git a/meta/recipes-devtools/cargo/cargo_1.54.0.bb b/meta/recipes-devtools/cargo/cargo_1.54.0.bb
index 175f544d660..eee58fc2452 100644
--- a/meta/recipes-devtools/cargo/cargo_1.54.0.bb
+++ b/meta/recipes-devtools/cargo/cargo_1.54.0.bb
@@ -1,4 +1,4 @@
-require recipes-devtools/rust/rust-source-${PV}.inc
-require recipes-devtools/rust/rust-snapshot-${PV}.inc
+require recipes-devtools/rust/rust-source.inc
+require recipes-devtools/rust/rust-snapshot.inc
 require cargo.inc
 BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-devtools/rust/libstd-rs-1.54.0/0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch b/meta/recipes-devtools/rust/libstd-rs/0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs-1.54.0/0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch
rename to meta/recipes-devtools/rust/libstd-rs/0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch
diff --git a/meta/recipes-devtools/rust/libstd-rs-1.54.0/0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch b/meta/recipes-devtools/rust/libstd-rs/0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs-1.54.0/0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch
rename to meta/recipes-devtools/rust/libstd-rs/0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch
diff --git a/meta/recipes-devtools/rust/libstd-rs-1.54.0/0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch b/meta/recipes-devtools/rust/libstd-rs/0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs-1.54.0/0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch
rename to meta/recipes-devtools/rust/libstd-rs/0007-FIXUP-Correct-definitions-to-match-musl-libc-0.2.93.patch
diff --git a/meta/recipes-devtools/rust/libstd-rs-1.54.0/0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch b/meta/recipes-devtools/rust/libstd-rs/0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs-1.54.0/0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch
rename to meta/recipes-devtools/rust/libstd-rs/0008-Update-checksums-for-modified-files-for-rust-1.54.0-.patch
diff --git a/meta/recipes-devtools/rust/libstd-rs_1.54.0.bb b/meta/recipes-devtools/rust/libstd-rs_1.54.0.bb
index 1239f6a176f..cc30158d222 100644
--- a/meta/recipes-devtools/rust/libstd-rs_1.54.0.bb
+++ b/meta/recipes-devtools/rust/libstd-rs_1.54.0.bb
@@ -1,4 +1,4 @@
-require rust-source-${PV}.inc
+require rust-source.inc
 require libstd-rs.inc
 
 SRC_URI += " \
diff --git a/meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb b/meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
index a5d02eb8d77..766912c019b 100644
--- a/meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
+++ b/meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
@@ -1,6 +1,6 @@
 require rust-cross-canadian.inc
-require rust-source-${PV}.inc
-require rust-snapshot-${PV}.inc
+require rust-source.inc
+require rust-snapshot.inc
 
 FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
 
diff --git a/meta/recipes-devtools/rust/rust-cross_1.54.0.bb b/meta/recipes-devtools/rust/rust-cross_1.54.0.bb
index ddc25d36b58..3179d395d25 100644
--- a/meta/recipes-devtools/rust/rust-cross_1.54.0.bb
+++ b/meta/recipes-devtools/rust/rust-cross_1.54.0.bb
@@ -1,2 +1,2 @@
 require rust-cross.inc
-require rust-source-${PV}.inc
+require rust-source.inc
diff --git a/meta/recipes-devtools/rust/rust-llvm_1.54.0.bb b/meta/recipes-devtools/rust/rust-llvm_1.54.0.bb
index 81b2bd12b76..5e37798edd2 100644
--- a/meta/recipes-devtools/rust/rust-llvm_1.54.0.bb
+++ b/meta/recipes-devtools/rust/rust-llvm_1.54.0.bb
@@ -1,5 +1,5 @@
 # check src/llvm-project/llvm/CMakeLists.txt for llvm version in use
 #
 LLVM_RELEASE = "12.0.1"
-require rust-source-${PV}.inc
+require rust-source.inc
 require rust-llvm.inc
diff --git a/meta/recipes-devtools/rust/rust-snapshot-1.54.0.inc b/meta/recipes-devtools/rust/rust-snapshot-1.54.0.inc
deleted file mode 100644
index 598f4ed1097..00000000000
--- a/meta/recipes-devtools/rust/rust-snapshot-1.54.0.inc
+++ /dev/null
@@ -1,18 +0,0 @@
-require rust-snapshot.inc
-
-## This is information on the rust-snapshot (binary) used to build our current release.
-## snapshot info is taken from rust/src/stage0.txt
-## TODO: find a way to add additional SRC_URIs based on the contents of an
-##       earlier SRC_URI.
-RS_VERSION = "1.53.0"
-CARGO_VERSION = "1.53.0"
-
-# TODO: Add hashes for other architecture toolchains as well. Make a script?
-SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "66d5257bbd194db08e67ca63a74cc80cdc4a36eaa30bf7dfe65861d9deaff7f7"
-SRC_URI[rustc-snapshot-x86_64.sha256sum] = "9c2f0443a546dd18f1f020c7711a7b9864432545ceb812e79315c1e76508b193"
-SRC_URI[cargo-snapshot-x86_64.sha256sum] = "e4437f6c83574fc60e183f4df439190f7610e4a669476802795645da66fbb83b"
-
-SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "fc261d0ff057c58b36057c30217bad1a29a9a3f257c70f5df88ad3f1d982386e"
-SRC_URI[rustc-snapshot-aarch64.sha256sum] = "a857e5c615f6b5b3afc6b707ae007b3b4624585b0b2ba9b38b553114db37f8d5"
-SRC_URI[cargo-snapshot-aarch64.sha256sum] = "4fa425a2d4633aeca67fa42695b3b9100f8b988dd1c21e60d6b2aa1164e55c0c"
-
diff --git a/meta/recipes-devtools/rust/rust-snapshot.inc b/meta/recipes-devtools/rust/rust-snapshot.inc
index 79d03afd1ba..d448ffc7af1 100644
--- a/meta/recipes-devtools/rust/rust-snapshot.inc
+++ b/meta/recipes-devtools/rust/rust-snapshot.inc
@@ -1,3 +1,19 @@
+## This is information on the rust-snapshot (binary) used to build our current release.
+## snapshot info is taken from rust/src/stage0.txt
+## TODO: find a way to add additional SRC_URIs based on the contents of an
+##       earlier SRC_URI.
+RS_VERSION = "1.53.0"
+CARGO_VERSION = "1.53.0"
+
+# TODO: Add hashes for other architecture toolchains as well. Make a script?
+SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "66d5257bbd194db08e67ca63a74cc80cdc4a36eaa30bf7dfe65861d9deaff7f7"
+SRC_URI[rustc-snapshot-x86_64.sha256sum] = "9c2f0443a546dd18f1f020c7711a7b9864432545ceb812e79315c1e76508b193"
+SRC_URI[cargo-snapshot-x86_64.sha256sum] = "e4437f6c83574fc60e183f4df439190f7610e4a669476802795645da66fbb83b"
+
+SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "fc261d0ff057c58b36057c30217bad1a29a9a3f257c70f5df88ad3f1d982386e"
+SRC_URI[rustc-snapshot-aarch64.sha256sum] = "a857e5c615f6b5b3afc6b707ae007b3b4624585b0b2ba9b38b553114db37f8d5"
+SRC_URI[cargo-snapshot-aarch64.sha256sum] = "4fa425a2d4633aeca67fa42695b3b9100f8b988dd1c21e60d6b2aa1164e55c0c"
+
 SRC_URI += " \
     https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
     https://static.rust-lang.org/dist/${RUSTC_SNAPSHOT}.tar.xz;name=rustc-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
diff --git a/meta/recipes-devtools/rust/rust-source-1.54.0.inc b/meta/recipes-devtools/rust/rust-source-1.54.0.inc
deleted file mode 100644
index 335c7ceb450..00000000000
--- a/meta/recipes-devtools/rust/rust-source-1.54.0.inc
+++ /dev/null
@@ -1,3 +0,0 @@
-require rust-source.inc
-
-SRC_URI[rust.sha256sum] = "a2934f85f76a35a3796c0fefd31e91f5b6dd8377cd8c3769c1c10e7ce7a495f4"
diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc
index 1529ecfafe6..a1042d5f87a 100644
--- a/meta/recipes-devtools/rust/rust-source.inc
+++ b/meta/recipes-devtools/rust/rust-source.inc
@@ -1,3 +1,4 @@
+SRC_URI[rust.sha256sum] = "a2934f85f76a35a3796c0fefd31e91f5b6dd8377cd8c3769c1c10e7ce7a495f4"
 SRC_URI += "https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz;name=rust"
 
 RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
diff --git a/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb b/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb
index 053147ba46c..2d809d68f52 100644
--- a/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb
+++ b/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb
@@ -1,6 +1,6 @@
 require rust-tools-cross-canadian.inc
-require rust-source-${PV}.inc
-require rust-snapshot-${PV}.inc
+require rust-source.inc
+require rust-snapshot.inc
 
 FILESEXTRAPATHS:prepend := "${THISDIR}/rust:"
 
diff --git a/meta/recipes-devtools/rust/rust_1.54.0.bb b/meta/recipes-devtools/rust/rust_1.54.0.bb
index e7d8d70c261..036fb43334a 100644
--- a/meta/recipes-devtools/rust/rust_1.54.0.bb
+++ b/meta/recipes-devtools/rust/rust_1.54.0.bb
@@ -1,6 +1,6 @@
 require rust-target.inc
-require rust-source-${PV}.inc
-require rust-snapshot-${PV}.inc
+require rust-source.inc
+require rust-snapshot.inc
 
 INSANE_SKIP:${PN}:class-native = "already-stripped"
 
-- 
2.20.1



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

* [PATCH 02/13] rust: update 1.54.0 -> 1.55.0
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
@ 2021-10-10 19:09 ` Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 03/13] librsvg: update 2.40.21 -> 2.52.0 (transition to rust!) Alexander Kanavin
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:09 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/conf/distro/include/tcmode-default.inc      |  2 +-
 ..._1.54.0.bb => cargo-cross-canadian_1.55.0.bb} |  0
 .../cargo/{cargo_1.54.0.bb => cargo_1.55.0.bb}   |  0
 .../{libstd-rs_1.54.0.bb => libstd-rs_1.55.0.bb} |  0
 ...n_1.54.0.bb => rust-cross-canadian_1.55.0.bb} |  0
 ...rust-cross_1.54.0.bb => rust-cross_1.55.0.bb} |  0
 .../{rust-llvm_1.54.0.bb => rust-llvm_1.55.0.bb} |  0
 meta/recipes-devtools/rust/rust-snapshot.inc     | 16 ++++++++--------
 meta/recipes-devtools/rust/rust-source.inc       |  2 +-
 ....0.bb => rust-tools-cross-canadian_1.55.0.bb} |  0
 .../rust/{rust_1.54.0.bb => rust_1.55.0.bb}      |  0
 11 files changed, 10 insertions(+), 10 deletions(-)
 rename meta/recipes-devtools/cargo/{cargo-cross-canadian_1.54.0.bb => cargo-cross-canadian_1.55.0.bb} (100%)
 rename meta/recipes-devtools/cargo/{cargo_1.54.0.bb => cargo_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{libstd-rs_1.54.0.bb => libstd-rs_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{rust-cross-canadian_1.54.0.bb => rust-cross-canadian_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{rust-cross_1.54.0.bb => rust-cross_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{rust-llvm_1.54.0.bb => rust-llvm_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{rust-tools-cross-canadian_1.54.0.bb => rust-tools-cross-canadian_1.55.0.bb} (100%)
 rename meta/recipes-devtools/rust/{rust_1.54.0.bb => rust_1.55.0.bb} (100%)

diff --git a/meta/conf/distro/include/tcmode-default.inc b/meta/conf/distro/include/tcmode-default.inc
index 1ed18b0ee41..168bda2fd16 100644
--- a/meta/conf/distro/include/tcmode-default.inc
+++ b/meta/conf/distro/include/tcmode-default.inc
@@ -27,7 +27,7 @@ GOVERSION ?= "1.16%"
 # This can not use wildcards like 8.0.% since it is also used in mesa to denote
 # llvm version being used, so always bump it with llvm recipe version bump
 LLVMVERSION ?= "12.0.1"
-RUSTVERSION ?= "1.54.0"
+RUSTVERSION ?= "1.55.0"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
diff --git a/meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb b/meta/recipes-devtools/cargo/cargo-cross-canadian_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/cargo/cargo-cross-canadian_1.54.0.bb
rename to meta/recipes-devtools/cargo/cargo-cross-canadian_1.55.0.bb
diff --git a/meta/recipes-devtools/cargo/cargo_1.54.0.bb b/meta/recipes-devtools/cargo/cargo_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/cargo/cargo_1.54.0.bb
rename to meta/recipes-devtools/cargo/cargo_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/libstd-rs_1.54.0.bb b/meta/recipes-devtools/rust/libstd-rs_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/libstd-rs_1.54.0.bb
rename to meta/recipes-devtools/rust/libstd-rs_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb b/meta/recipes-devtools/rust/rust-cross-canadian_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-cross-canadian_1.54.0.bb
rename to meta/recipes-devtools/rust/rust-cross-canadian_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/rust-cross_1.54.0.bb b/meta/recipes-devtools/rust/rust-cross_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-cross_1.54.0.bb
rename to meta/recipes-devtools/rust/rust-cross_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/rust-llvm_1.54.0.bb b/meta/recipes-devtools/rust/rust-llvm_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-llvm_1.54.0.bb
rename to meta/recipes-devtools/rust/rust-llvm_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/rust-snapshot.inc b/meta/recipes-devtools/rust/rust-snapshot.inc
index d448ffc7af1..71ac1024449 100644
--- a/meta/recipes-devtools/rust/rust-snapshot.inc
+++ b/meta/recipes-devtools/rust/rust-snapshot.inc
@@ -2,17 +2,17 @@
 ## snapshot info is taken from rust/src/stage0.txt
 ## TODO: find a way to add additional SRC_URIs based on the contents of an
 ##       earlier SRC_URI.
-RS_VERSION = "1.53.0"
-CARGO_VERSION = "1.53.0"
+RS_VERSION = "1.54.0"
+CARGO_VERSION = "1.54.0"
 
 # TODO: Add hashes for other architecture toolchains as well. Make a script?
-SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "66d5257bbd194db08e67ca63a74cc80cdc4a36eaa30bf7dfe65861d9deaff7f7"
-SRC_URI[rustc-snapshot-x86_64.sha256sum] = "9c2f0443a546dd18f1f020c7711a7b9864432545ceb812e79315c1e76508b193"
-SRC_URI[cargo-snapshot-x86_64.sha256sum] = "e4437f6c83574fc60e183f4df439190f7610e4a669476802795645da66fbb83b"
+SRC_URI[rust-std-snapshot-x86_64.sha256sum] = "a22e19859b3c5032daac1633637546a986c51bdfa3ad0db6e394e6cc461f466b"
+SRC_URI[rustc-snapshot-x86_64.sha256sum] = "eafc06aba7128ee8592c16d7e3ae7b877e82c5d9779c9d07099558ed7e286296"
+SRC_URI[cargo-snapshot-x86_64.sha256sum] = "8a9c80b7dc5d47e6eafe173b81ad96244522c97d74214ba7da57a502d49b231c"
 
-SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "fc261d0ff057c58b36057c30217bad1a29a9a3f257c70f5df88ad3f1d982386e"
-SRC_URI[rustc-snapshot-aarch64.sha256sum] = "a857e5c615f6b5b3afc6b707ae007b3b4624585b0b2ba9b38b553114db37f8d5"
-SRC_URI[cargo-snapshot-aarch64.sha256sum] = "4fa425a2d4633aeca67fa42695b3b9100f8b988dd1c21e60d6b2aa1164e55c0c"
+SRC_URI[rust-std-snapshot-aarch64.sha256sum] = "a1a77737d218087eb7d3613adcde2c9e383d758cdf128646a0ee63396145270b"
+SRC_URI[rustc-snapshot-aarch64.sha256sum] = "0e771c06435b6fa3087ce054c7f2f94b8ee36717997f32f97e2e3425739ac2b4"
+SRC_URI[cargo-snapshot-aarch64.sha256sum] = "b3b6e5358bf1ecd5d8d7e258a5632dac7d923b2aa8ab1c8c0f6aad62d9307b37"
 
 SRC_URI += " \
     https://static.rust-lang.org/dist/${RUST_STD_SNAPSHOT}.tar.xz;name=rust-std-snapshot-${BUILD_ARCH};subdir=rust-snapshot-components \
diff --git a/meta/recipes-devtools/rust/rust-source.inc b/meta/recipes-devtools/rust/rust-source.inc
index a1042d5f87a..b3feb6072ec 100644
--- a/meta/recipes-devtools/rust/rust-source.inc
+++ b/meta/recipes-devtools/rust/rust-source.inc
@@ -1,4 +1,4 @@
-SRC_URI[rust.sha256sum] = "a2934f85f76a35a3796c0fefd31e91f5b6dd8377cd8c3769c1c10e7ce7a495f4"
+SRC_URI[rust.sha256sum] = "aec85a7c1f40b7a40818a58ae13632f8a12cfaa4d3e2a10957d0e9d16dfdd556"
 SRC_URI += "https://static.rust-lang.org/dist/rustc-${PV}-src.tar.xz;name=rust"
 
 RUSTSRC = "${WORKDIR}/rustc-${PV}-src"
diff --git a/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb b/meta/recipes-devtools/rust/rust-tools-cross-canadian_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust-tools-cross-canadian_1.54.0.bb
rename to meta/recipes-devtools/rust/rust-tools-cross-canadian_1.55.0.bb
diff --git a/meta/recipes-devtools/rust/rust_1.54.0.bb b/meta/recipes-devtools/rust/rust_1.55.0.bb
similarity index 100%
rename from meta/recipes-devtools/rust/rust_1.54.0.bb
rename to meta/recipes-devtools/rust/rust_1.55.0.bb
-- 
2.20.1



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

* [PATCH 03/13] librsvg: update 2.40.21 -> 2.52.0 (transition to rust!)
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 02/13] rust: update 1.54.0 -> 1.55.0 Alexander Kanavin
@ 2021-10-10 19:09 ` Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 04/13] librsvg: do not enable nativesdk Alexander Kanavin
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:09 UTC (permalink / raw)
  To: openembedded-core
  Cc: Alexander Kanavin, Adrian Bunk, Joshua Watt, Ross Burton, Jussi Kukkonen

After some poking and hacking I have arrived to the settings that work.
Please refer to the commit for details.

Some of these issues may re-occur in other components; in that case
we need to come up with more generic solutions or upstream fixes.

So far, it's a learning exercise for everybody in getting to know the rust toolchain.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 ...t-Bsymbolic-fixes-configure-on-macOS.patch | 35 -----------
 ...-rust-target-to-cargo-also-when-not-.patch | 47 +++++++++++++++
 .../0001-Remove-non-reproducible-SRCDIR.patch | 30 ----------
 ...lib.rs-do-not-probe-into-harcoded-li.patch | 53 ++++++++++++++++
 .../librsvg/librsvg/gtk-option.patch          | 60 -------------------
 .../{librsvg_2.40.21.bb => librsvg_2.52.0.bb} | 42 +++++++++----
 6 files changed, 130 insertions(+), 137 deletions(-)
 delete mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch
 delete mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch
 delete mode 100644 meta/recipes-gnome/librsvg/librsvg/gtk-option.patch
 rename meta/recipes-gnome/librsvg/{librsvg_2.40.21.bb => librsvg_2.52.0.bb} (51%)

diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch
deleted file mode 100644
index 954bb60880c..00000000000
--- a/meta/recipes-gnome/librsvg/librsvg/0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From b99891e31eb6ce550e7e1cb2ca592095b3050a93 Mon Sep 17 00:00:00 2001
-From: Brion Vibber <brion@pobox.com>
-Date: Sun, 25 Feb 2018 18:42:36 -0800
-Subject: Auto-detect -Bsymbolic, fixes configure on macOS
-
-The -Bsymbolic linker option is ELF-specific, and was breaking
-configure on macOS unless --disable-Bsymbolic was explicitly passed.
-
-Switching the behavior from requiring -Bsymbolic to be available
-by default to just warning and continuing on without.
-
-Fixes https://gitlab.gnome.org/GNOME/librsvg/issues/211
-
-Upstream-Status: Backport
-Signed-off-by: Adrian Bunk <bunk@stusta.de>
----
- configure.ac | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 15b26b2d..9f8dce29 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -216,7 +216,7 @@ AM_CONDITIONAL([ENABLE_PIXBUF_LOADER],[test "$enable_pixbuf_loader" = "yes"])
- AC_ARG_ENABLE([Bsymbolic],
-   [AS_HELP_STRING([--disable-Bsymbolic],
-                   [disable linking with -Bsymbolic])],
--  [],[enable_Bsymbolic=yes])
-+  [enable_Bsymbolic=no],[enable_Bsymbolic=auto])
- 
- BSYMBOLIC_LDFLAG=
- if test "$enable_Bsymbolic" != "no"; then
--- 
-2.20.1
-
diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch
new file mode 100644
index 00000000000..d7487c234cf
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch
@@ -0,0 +1,47 @@
+From 95b2cd0169cb1b4694c2bce67169b1aa1d5e2be0 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 21 Sep 2021 16:27:14 +0200
+Subject: [PATCH] Makefile.am: pass rust target to cargo also when not cross
+ compiling
+
+Otherwise oe-core's native build doesn't work either.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ Makefile.am  | 2 --
+ configure.ac | 4 +---
+ 2 files changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index e93714e..effe5d3 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -137,9 +137,7 @@ else
+ CARGO_RELEASE_ARGS=--release
+ endif
+ 
+-if CROSS_COMPILING
+ CARGO_TARGET_ARGS=--target=$(RUST_TARGET)
+-endif
+ 
+ CARGO_VERBOSE = $(cargo_verbose_$(V))
+ cargo_verbose_ = $(cargo_verbose_$(AM_DEFAULT_VERBOSITY))
+diff --git a/configure.ac b/configure.ac
+index 41590ca..84cd56b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -255,9 +255,7 @@ AC_ARG_VAR(RUST_TARGET, [Set rust target (default=$host)])
+ : ${RUST_TARGET:=$host}
+ 
+ AM_CONDITIONAL([CROSS_COMPILING], [test "x$cross_compiling" = xyes])
+-AS_IF([test "x$cross_compiling" = "xyes"], [
+-	RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR"
+-])
++RUST_TARGET_SUBDIR="$RUST_TARGET/$RUST_TARGET_SUBDIR"
+ AC_SUBST([RUST_TARGET_SUBDIR])
+ 
+ dnl ===========================================================================
+-- 
+2.20.1
+
diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch b/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch
deleted file mode 100644
index 75fc7f9d0b9..00000000000
--- a/meta/recipes-gnome/librsvg/librsvg/0001-Remove-non-reproducible-SRCDIR.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-From bea5156cd7e7122715b26c769c35928141a1da2c Mon Sep 17 00:00:00 2001
-From: Joshua Watt <JPEWhacker@gmail.com>
-Date: Mon, 18 Nov 2019 14:46:34 -0600
-Subject: [PATCH] Remove non-reproducible SRCDIR
-
-Removes SRCDIR as the prefix for finding the test font. This wouldn't
-work anyway, since that path is not present on the target.
-
-This patch is specific to OE, since it appears that this entire method
-of testing was removed when upstream was re-written in rust
-
-Upstream-Status: Inappropriate [OE-specific, no longer present upstream]
-Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
----
- rsvg-cairo-draw.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/rsvg-cairo-draw.c b/rsvg-cairo-draw.c
-index caa9104..cfb7ed2 100644
---- a/rsvg-cairo-draw.c
-+++ b/rsvg-cairo-draw.c
-@@ -398,7 +398,7 @@ set_font_options_for_testing (PangoContext *context)
- static void
- create_font_config_for_testing (RsvgCairoRender *render)
- {
--    const char *font_path = SRCDIR "/tests/resources/LiberationSans-Regular.ttf";
-+    const char *font_path = "/tests/resources/LiberationSans-Regular.ttf";
- 
-     if (render->font_config_for_testing != NULL)
-         return;
diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch b/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch
new file mode 100644
index 00000000000..849dd98c5f0
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch
@@ -0,0 +1,53 @@
+From 6d1f0740b111e86e99dcaf0222f3d1d67d3bf1e6 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 21 Sep 2021 16:54:23 +0200
+Subject: [PATCH] system-deps/src/lib.rs: do not probe into harcoded list of
+ targets
+
+Oe-core defines custom targets, and this probe fails.
+
+Upstream-Status: Inappropriate [oe-core specific]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ vendor/system-deps/.cargo-checksum.json |  2 +-
+ vendor/system-deps/src/lib.rs           | 16 +---------------
+ 2 files changed, 2 insertions(+), 16 deletions(-)
+
+diff --git a/vendor/system-deps/.cargo-checksum.json b/vendor/system-deps/.cargo-checksum.json
+index ecebb94..30d594e 100644
+--- a/vendor/system-deps/.cargo-checksum.json
++++ b/vendor/system-deps/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{"Cargo.toml":"56ab5070dc9019b039c5e9904bb466b0879c33a7f69dd030b97abab321b7cc04","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"015518f4337d80249d12c7e6c55e9063705a0b8805ebf46a445c89253edc5de0","src/metadata.rs":"4c8d6ac2c88646a5b97ecb50ed44b65e5b2865cce6897add85b29ca2ae08c2bb","src/test.rs":"1ec48d1e443a0a4ac8035a2b60ff0321543aa2fa998fee72cf7762a936bf5f8c","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"}
+\ No newline at end of file
++{"files":{"Cargo.toml":"56ab5070dc9019b039c5e9904bb466b0879c33a7f69dd030b97abab321b7cc04","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"594e5f14180590adc9ea0a8ba1cc35f9a8a260322d08de3037efac3ce1dc729b","src/metadata.rs":"4c8d6ac2c88646a5b97ecb50ed44b65e5b2865cce6897add85b29ca2ae08c2bb","src/test.rs":"1ec48d1e443a0a4ac8035a2b60ff0321543aa2fa998fee72cf7762a936bf5f8c","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"}
+diff --git a/vendor/system-deps/src/lib.rs b/vendor/system-deps/src/lib.rs
+index a0d4f00..a666817 100644
+--- a/vendor/system-deps/src/lib.rs
++++ b/vendor/system-deps/src/lib.rs
+@@ -725,21 +725,7 @@ impl Config {
+     }
+ 
+     fn check_cfg(&self, cfg: &cfg_expr::Expression) -> Result<bool, Error> {
+-        use cfg_expr::{targets::get_builtin_target_by_triple, Predicate};
+-
+-        let target = self
+-            .env
+-            .get("TARGET")
+-            .expect("no TARGET env variable defined");
+-        let target = get_builtin_target_by_triple(&target)
+-            .unwrap_or_else(|| panic!("Invalid TARGET: {}", target));
+-
+-        let res = cfg.eval(|pred| match pred {
+-            Predicate::Target(tp) => Some(tp.matches(target)),
+-            _ => None,
+-        });
+-
+-        res.ok_or_else(|| Error::UnsupportedCfg(cfg.original().to_string()))
++        Ok(true)
+     }
+ }
+ 
+-- 
+2.20.1
+
diff --git a/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch b/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch
deleted file mode 100644
index 6c23071cd34..00000000000
--- a/meta/recipes-gnome/librsvg/librsvg/gtk-option.patch
+++ /dev/null
@@ -1,60 +0,0 @@
-From 4e0ce3f22d45033a108cbacca3e5ec6728bd44f3 Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Date: Tue, 11 Aug 2015 16:25:38 +0300
-Subject: [PATCH] configure: add option to enable/disable use of GTK+
-
-Distro packagers like predictability and automatically detected optional
-dependencies are not predicable.  Add a --with-gtk3 option (default to "auto")
-for forcibly controlling whether GTK+ will be used or not.
-
-Upstream-Status: Submitted [https://bugzilla.gnome.org/show_bug.cgi?id=712693]
-
-Signed-off-by: Ross Burton <ross.burton@intel.com>
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
----
- configure.ac | 17 +++++++++++------
- 1 file changed, 11 insertions(+), 6 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index e61a952..c3aae84 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -130,17 +130,22 @@ AC_CHECK_FUNCS(strtok_r)
- # GTK
- # ===========================================================================
- 
--PKG_CHECK_MODULES([GTK3],[gtk+-3.0 >= $GTK3_REQUIRED],[have_gtk_3=yes],[have_gtk_3=no])
--
- GTK3_BINARY_VERSION=
- 
--if test "$have_gtk_3" = "yes"; then
--    GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
-+AC_MSG_CHECKING([whether to use GTK+ 3])
-+AC_ARG_WITH([gtk3],
-+  [AS_HELP_STRING([--without-gtk3],[Don't build GTK+3 tools (default=auto)])],
-+  [],[PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_REQUIRED],[with_gtk3=yes],[with_gtk3=no])])
-+AC_MSG_RESULT([$with_gtk3])
-+
-+if test "$with_gtk3" = "yes"; then
-+  PKG_CHECK_MODULES(GTK3, [gtk+-3.0 >= $GTK3_REQUIRED])
-+  GTK3_BINARY_VERSION="`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`"
- fi
- 
- AC_SUBST([GTK3_BINARY_VERSION])
- 
--AM_CONDITIONAL([HAVE_GTK_3],[test "$have_gtk_3" = "yes"])
-+AM_CONDITIONAL([HAVE_GTK_3],[test "$with_gtk3" = "yes"])
- 
- dnl ===========================================================================
- dnl GDK-Pixbuf SVG loader
-@@ -298,6 +303,6 @@ librsvg-$VERSION
- 	Build introspectable bindings:  ${found_introspection}
- 	Build Vala bindings:            ${enable_vala}
- 	Build GdkPixbuf loader:         ${enable_pixbuf_loader}
--        GTK+ $GTK3_REQUIRED or later:           ${have_gtk_3}
-+        GTK+ $GTK3_REQUIRED or later:           ${with_gtk_3}
- 	Build miscellaneous tools:      ${build_misc_tools}
- "
--- 
-2.1.4
-
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
similarity index 51%
rename from meta/recipes-gnome/librsvg/librsvg_2.40.21.bb
rename to meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
index 39b9aeca5d7..4e3febc6a2f 100644
--- a/meta/recipes-gnome/librsvg/librsvg_2.40.21.bb
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -6,24 +6,44 @@ the screen or to generate output for printing."
 HOMEPAGE = "https://gitlab.gnome.org/GNOME/librsvg"
 BUGTRACKER = "https://gitlab.gnome.org/GNOME/librsvg/issues"
 
-RECIPE_NO_UPDATE_REASON = "Versions from 2.41.0 requires Rust compiler to build it"
-
-LICENSE = "LGPLv2+"
-LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
-                    file://rsvg.h;beginline=3;endline=24;md5=20b4113c4909bbf0d67e006778302bc6"
+LICENSE = "LGPLv2.1+"
+LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
+                   "
 
 SECTION = "x11/utils"
 DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
 BBCLASSEXTEND = "native nativesdk"
 
-inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection
+inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection rust
 
-SRC_URI += "file://gtk-option.patch \
-            file://0001-Auto-detect-Bsymbolic-fixes-configure-on-macOS.patch \
-            file://0001-Remove-non-reproducible-SRCDIR.patch \
+SRC_URI += " file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
+             file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \
 "
 
-SRC_URI[archive.sha256sum] = "f7628905f1cada84e87e2b14883ed57d8094dca3281d5bcb24ece4279e9a92ba"
+SRC_URI[archive.sha256sum] = "bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393"
+
+# librsvg is still autotools-based, but is calling cargo from its automake-driven makefiles
+# so we cannot use cargo class directly, but still need bits and pieces from it 
+# for cargo to be happy
+BASEDEPENDS:append = " cargo-native"
+
+export RUST_BACKTRACE = "full"
+export RUSTFLAGS
+export RUST_TARGET_PATH
+
+export RUST_TARGET = "${HOST_SYS}"
+
+# rust-cross writes the target linker binary into target json definition without any flags.
+# This breaks here because the linker isn't going to work without at least knowing where
+# the sysroot is. So copy the json to workdir, and patch in the path to wrapper from rust class
+# which supplies the needed flags.
+do_compile:prepend() {
+    cp ${STAGING_LIBDIR_NATIVE}/rustlib/${HOST_SYS}.json ${WORKDIR}
+    cp ${STAGING_LIBDIR_NATIVE}/rustlib/${BUILD_SYS}.json ${WORKDIR}
+    sed -ie 's,"linker": ".*","linker": "${RUST_TARGET_CC}",g' ${WORKDIR}/${HOST_SYS}.json
+    RUST_TARGET_PATH="${WORKDIR}"
+    export RUST_TARGET_PATH
+}
 
 # Issue only on windows
 CVE_CHECK_WHITELIST += "CVE-2018-1000041"
@@ -33,8 +53,6 @@ CACHED_CONFIGUREVARS = "ac_cv_path_GDK_PIXBUF_QUERYLOADERS=${STAGING_LIBDIR_NATI
 PACKAGECONFIG ??= "gdkpixbuf"
 # The gdk-pixbuf loader
 PACKAGECONFIG[gdkpixbuf] = "--enable-pixbuf-loader,--disable-pixbuf-loader,gdk-pixbuf-native"
-# GTK+ test application (rsvg-view)
-PACKAGECONFIG[gtk] = "--with-gtk3,--without-gtk3,gtk+3"
 
 do_install:append() {
 	# Loadable modules don't need .a or .la on Linux
-- 
2.20.1



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

* [PATCH 04/13] librsvg: do not enable nativesdk
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 02/13] rust: update 1.54.0 -> 1.55.0 Alexander Kanavin
  2021-10-10 19:09 ` [PATCH 03/13] librsvg: update 2.40.21 -> 2.52.0 (transition to rust!) Alexander Kanavin
@ 2021-10-10 19:09 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 05/13] librsvg: add backports to fix big endian targets (e.g. mips) Alexander Kanavin
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:09 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

From: Alexander Kanavin <alex.kanavin@gmail.com>

rust is not currently available for nativesdk builds:

WARNING: Nothing PROVIDES 'nativesdk-libstd-rs' (but virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb DEPENDS on or otherwise requires it). Close matches:
WARNING: Nothing PROVIDES 'virtual/nativesdk-x86_64-pokysdk-linux-rust' (but virtual:nativesdk:/home/pokybuild/yocto-worker/a-full/build/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb DEPENDS on or otherwise requires it). Close matches:

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
---
 meta/recipes-gnome/librsvg/librsvg_2.52.0.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
index 4e3febc6a2f..acd03101396 100644
--- a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=4fbd65380cdd255951079008b364516c \
 
 SECTION = "x11/utils"
 DEPENDS = "cairo gdk-pixbuf glib-2.0 libcroco libxml2 pango"
-BBCLASSEXTEND = "native nativesdk"
+BBCLASSEXTEND = "native"
 
 inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection rust
 
-- 
2.20.1



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

* [PATCH 05/13] librsvg: add backports to fix big endian targets (e.g. mips)
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (2 preceding siblings ...)
  2021-10-10 19:09 ` [PATCH 04/13] librsvg: do not enable nativesdk Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 06/13] librsvg: use only the target architecture to determine availability of atomic primitives Alexander Kanavin
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 ...GdkPixbufRGBA-start-naming-types-and.patch |  81 ++++++++++++++
 .../librsvg/0002-New-ToPixel-trait.patch      | 100 ++++++++++++++++++
 .../librsvg/0003-New-ToCairoARGB-trait.patch  |  81 ++++++++++++++
 .../0004-impl-ToPixel-for-CairoARGB.patch     |  49 +++++++++
 meta/recipes-gnome/librsvg/librsvg_2.52.0.bb  |  10 +-
 5 files changed, 318 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-GdkPixbufRGBA-ToGdkPixbufRGBA-start-naming-types-and.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0002-New-ToPixel-trait.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0003-New-ToCairoARGB-trait.patch
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0004-impl-ToPixel-for-CairoARGB.patch

diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-GdkPixbufRGBA-ToGdkPixbufRGBA-start-naming-types-and.patch b/meta/recipes-gnome/librsvg/librsvg/0001-GdkPixbufRGBA-ToGdkPixbufRGBA-start-naming-types-and.patch
new file mode 100644
index 00000000000..6935403138c
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0001-GdkPixbufRGBA-ToGdkPixbufRGBA-start-naming-types-and.patch
@@ -0,0 +1,81 @@
+From c175ac8344aa465ffc2c2f3a9d02a7889f597f7f Mon Sep 17 00:00:00 2001
+From: Federico Mena Quintero <federico@gnome.org>
+Date: Tue, 21 Sep 2021 12:05:27 -0500
+Subject: [PATCH] GdkPixbufRGBA, ToGdkPixbufRGBA - start naming types and
+ conversion traits for pixel formats
+
+The code assumes that struct Pixel is always the layout that GdkPixbuf
+uses.  This is true right now, but is a hidden assumption.  Let's
+start giving better names to pixel formats.
+
+Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/592>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ src/surface_utils/mod.rs            | 23 +++++++++++++++++++++++
+ src/surface_utils/shared_surface.rs |  4 ++--
+ 2 files changed, 25 insertions(+), 2 deletions(-)
+
+diff --git a/src/surface_utils/mod.rs b/src/surface_utils/mod.rs
+index 53bbd00bb..93d3b4f79 100644
+--- a/src/surface_utils/mod.rs
++++ b/src/surface_utils/mod.rs
+@@ -22,6 +22,9 @@ use rgb::alt::ARGB8;
+ #[allow(clippy::upper_case_acronyms)]
+ pub type CairoARGB = ARGB8;
+ 
++/// GdkPixbuf's endian-independent RGBA8 pixel layout.
++pub type GdkPixbufRGBA = rgb::RGBA8;
++
+ /// Analogous to `rgb::FromSlice`, to convert from `[T]` to `[CairoARGB]`
+ #[allow(clippy::upper_case_acronyms)]
+ pub trait AsCairoARGB<T: Copy> {
+@@ -57,6 +60,26 @@ pub enum EdgeMode {
+     None,
+ }
+ 
++/// Trait to convert pixels in various formats to RGBA, for GdkPixbuf.
++///
++/// GdkPixbuf unconditionally uses RGBA ordering regardless of endianness,
++/// but we need to convert to it from Cairo's endian-dependent 0xaarrggbb.
++pub trait ToGdkPixbufRGBA {
++    fn to_pixbuf_rgba(&self) -> GdkPixbufRGBA;
++}
++
++impl ToGdkPixbufRGBA for Pixel {
++    #[inline]
++    fn to_pixbuf_rgba(&self) -> GdkPixbufRGBA {
++        GdkPixbufRGBA {
++            r: self.r,
++            g: self.g,
++            b: self.b,
++            a: self.a,
++        }
++    }
++}
++
+ /// Extension methods for `cairo::ImageSurfaceData`.
+ pub trait ImageSurfaceDataExt: DerefMut<Target = [u8]> {
+     /// Sets the pixel at the given coordinates. Assumes the `ARgb32` format.
+diff --git a/src/surface_utils/shared_surface.rs b/src/surface_utils/shared_surface.rs
+index 9d3289230..476a6f776 100644
+--- a/src/surface_utils/shared_surface.rs
++++ b/src/surface_utils/shared_surface.rs
+@@ -15,7 +15,7 @@ use crate::util::clamp;
+ 
+ use super::{
+     iterators::{PixelRectangle, Pixels},
+-    AsCairoARGB, CairoARGB, EdgeMode, ImageSurfaceDataExt, Pixel, PixelOps,
++    AsCairoARGB, CairoARGB, EdgeMode, ImageSurfaceDataExt, Pixel, PixelOps, ToGdkPixbufRGBA,
+ };
+ 
+ /// Types of pixel data in a `ImageSurface`.
+@@ -342,7 +342,7 @@ impl ImageSurface<Shared> {
+             .map(|row| row.as_rgba_mut())
+             .zip(self.rows())
+             .flat_map(|(dest_row, src_row)| src_row.iter().zip(dest_row.iter_mut()))
+-            .for_each(|(src, dest)| *dest = Pixel::from(*src).unpremultiply());
++            .for_each(|(src, dest)| *dest = Pixel::from(*src).unpremultiply().to_pixbuf_rgba());
+ 
+         Some(pixbuf)
+     }
diff --git a/meta/recipes-gnome/librsvg/librsvg/0002-New-ToPixel-trait.patch b/meta/recipes-gnome/librsvg/librsvg/0002-New-ToPixel-trait.patch
new file mode 100644
index 00000000000..c71c93e1a1b
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0002-New-ToPixel-trait.patch
@@ -0,0 +1,100 @@
+From 47478d5a8a4b7a05b44f024404137c4c68b62b7e Mon Sep 17 00:00:00 2001
+From: Federico Mena Quintero <federico@gnome.org>
+Date: Tue, 21 Sep 2021 12:22:15 -0500
+Subject: [PATCH] New ToPixel trait
+
+Use it where we convert GdkPixbuf pixels to our own Pixel for premultiplication.
+
+Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/592>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ src/surface_utils/mod.rs            | 32 +++++++++++++++++++++++++++++
+ src/surface_utils/shared_surface.rs |  5 +++--
+ 2 files changed, 35 insertions(+), 2 deletions(-)
+
+diff --git a/src/surface_utils/mod.rs b/src/surface_utils/mod.rs
+index 93d3b4f79..58953e6a0 100644
+--- a/src/surface_utils/mod.rs
++++ b/src/surface_utils/mod.rs
+@@ -25,6 +25,9 @@ pub type CairoARGB = ARGB8;
+ /// GdkPixbuf's endian-independent RGBA8 pixel layout.
+ pub type GdkPixbufRGBA = rgb::RGBA8;
+ 
++/// GdkPixbuf's packed RGB pixel layout.
++pub type GdkPixbufRGB = rgb::RGB8;
++
+ /// Analogous to `rgb::FromSlice`, to convert from `[T]` to `[CairoARGB]`
+ #[allow(clippy::upper_case_acronyms)]
+ pub trait AsCairoARGB<T: Copy> {
+@@ -68,6 +71,11 @@ pub trait ToGdkPixbufRGBA {
+     fn to_pixbuf_rgba(&self) -> GdkPixbufRGBA;
+ }
+ 
++/// Trait to convert pixels in various formats to our own Pixel layout.
++pub trait ToPixel {
++    fn to_pixel(&self) -> Pixel;
++}
++
+ impl ToGdkPixbufRGBA for Pixel {
+     #[inline]
+     fn to_pixbuf_rgba(&self) -> GdkPixbufRGBA {
+@@ -80,6 +88,30 @@ impl ToGdkPixbufRGBA for Pixel {
+     }
+ }
+ 
++impl ToPixel for GdkPixbufRGBA {
++    #[inline]
++    fn to_pixel(&self) -> Pixel {
++        Pixel {
++            r: self.r,
++            g: self.g,
++            b: self.b,
++            a: self.a,
++        }
++    }
++}
++
++impl ToPixel for GdkPixbufRGB {
++    #[inline]
++    fn to_pixel(&self) -> Pixel {
++        Pixel {
++            r: self.r,
++            g: self.g,
++            b: self.b,
++            a: 255,
++        }
++    }
++}
++
+ /// Extension methods for `cairo::ImageSurfaceData`.
+ pub trait ImageSurfaceDataExt: DerefMut<Target = [u8]> {
+     /// Sets the pixel at the given coordinates. Assumes the `ARgb32` format.
+diff --git a/src/surface_utils/shared_surface.rs b/src/surface_utils/shared_surface.rs
+index 476a6f776..9fa9a2e15 100644
+--- a/src/surface_utils/shared_surface.rs
++++ b/src/surface_utils/shared_surface.rs
+@@ -16,6 +16,7 @@ use crate::util::clamp;
+ use super::{
+     iterators::{PixelRectangle, Pixels},
+     AsCairoARGB, CairoARGB, EdgeMode, ImageSurfaceDataExt, Pixel, PixelOps, ToGdkPixbufRGBA,
++    ToPixel,
+ };
+ 
+ /// Types of pixel data in a `ImageSurface`.
+@@ -304,13 +305,13 @@ impl ImageSurface<Shared> {
+                 .map(|row| row.as_rgba())
+                 .zip(surf.rows_mut())
+                 .flat_map(|(src_row, dest_row)| src_row.iter().zip(dest_row.iter_mut()))
+-                .for_each(|(src, dest)| *dest = src.premultiply().into());
++                .for_each(|(src, dest)| *dest = src.to_pixel().premultiply().into());
+         } else {
+             pixbuf_rows
+                 .map(|row| row.as_rgb())
+                 .zip(surf.rows_mut())
+                 .flat_map(|(src_row, dest_row)| src_row.iter().zip(dest_row.iter_mut()))
+-                .for_each(|(src, dest)| *dest = src.alpha(0xff).into());
++                .for_each(|(src, dest)| *dest = src.to_pixel().into());
+         }
+ 
+         if let (Some(content_type), Some(bytes)) = (content_type, mime_data) {
diff --git a/meta/recipes-gnome/librsvg/librsvg/0003-New-ToCairoARGB-trait.patch b/meta/recipes-gnome/librsvg/librsvg/0003-New-ToCairoARGB-trait.patch
new file mode 100644
index 00000000000..8dd45ef0a28
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0003-New-ToCairoARGB-trait.patch
@@ -0,0 +1,81 @@
+From f5768df65cf6277e8ab687a84fdc5d9addaa373d Mon Sep 17 00:00:00 2001
+From: Federico Mena Quintero <federico@gnome.org>
+Date: Tue, 21 Sep 2021 12:49:53 -0500
+Subject: [PATCH] New ToCairoARGB trait
+
+Use it in the pixbuf-to-cairo-surface function.
+
+Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/592>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ src/surface_utils/mod.rs            | 17 +++++++++++++++++
+ src/surface_utils/shared_surface.rs |  8 ++++----
+ 2 files changed, 21 insertions(+), 4 deletions(-)
+
+diff --git a/src/surface_utils/mod.rs b/src/surface_utils/mod.rs
+index 58953e6a0..3f915cd01 100644
+--- a/src/surface_utils/mod.rs
++++ b/src/surface_utils/mod.rs
+@@ -76,6 +76,11 @@ pub trait ToPixel {
+     fn to_pixel(&self) -> Pixel;
+ }
+ 
++/// Trait to convert pixels in various formats to Cairo's endian-dependent 0xaarrggbb.
++pub trait ToCairoARGB {
++    fn to_cairo_argb(&self) -> CairoARGB;
++}
++
+ impl ToGdkPixbufRGBA for Pixel {
+     #[inline]
+     fn to_pixbuf_rgba(&self) -> GdkPixbufRGBA {
+@@ -112,6 +117,18 @@ impl ToPixel for GdkPixbufRGB {
+     }
+ }
+ 
++impl ToCairoARGB for Pixel {
++    #[inline]
++    fn to_cairo_argb(&self) -> CairoARGB {
++        CairoARGB {
++            r: self.r,
++            g: self.g,
++            b: self.b,
++            a: self.a,
++        }
++    }
++}
++
+ /// Extension methods for `cairo::ImageSurfaceData`.
+ pub trait ImageSurfaceDataExt: DerefMut<Target = [u8]> {
+     /// Sets the pixel at the given coordinates. Assumes the `ARgb32` format.
+diff --git a/src/surface_utils/shared_surface.rs b/src/surface_utils/shared_surface.rs
+index 9fa9a2e15..34dfc992e 100644
+--- a/src/surface_utils/shared_surface.rs
++++ b/src/surface_utils/shared_surface.rs
+@@ -15,8 +15,8 @@ use crate::util::clamp;
+ 
+ use super::{
+     iterators::{PixelRectangle, Pixels},
+-    AsCairoARGB, CairoARGB, EdgeMode, ImageSurfaceDataExt, Pixel, PixelOps, ToGdkPixbufRGBA,
+-    ToPixel,
++    AsCairoARGB, CairoARGB, EdgeMode, ImageSurfaceDataExt, Pixel, PixelOps, ToCairoARGB,
++    ToGdkPixbufRGBA, ToPixel,
+ };
+ 
+ /// Types of pixel data in a `ImageSurface`.
+@@ -305,13 +305,13 @@ impl ImageSurface<Shared> {
+                 .map(|row| row.as_rgba())
+                 .zip(surf.rows_mut())
+                 .flat_map(|(src_row, dest_row)| src_row.iter().zip(dest_row.iter_mut()))
+-                .for_each(|(src, dest)| *dest = src.to_pixel().premultiply().into());
++                .for_each(|(src, dest)| *dest = src.to_pixel().premultiply().to_cairo_argb());
+         } else {
+             pixbuf_rows
+                 .map(|row| row.as_rgb())
+                 .zip(surf.rows_mut())
+                 .flat_map(|(src_row, dest_row)| src_row.iter().zip(dest_row.iter_mut()))
+-                .for_each(|(src, dest)| *dest = src.to_pixel().into());
++                .for_each(|(src, dest)| *dest = src.to_pixel().to_cairo_argb());
+         }
+ 
+         if let (Some(content_type), Some(bytes)) = (content_type, mime_data) {
diff --git a/meta/recipes-gnome/librsvg/librsvg/0004-impl-ToPixel-for-CairoARGB.patch b/meta/recipes-gnome/librsvg/librsvg/0004-impl-ToPixel-for-CairoARGB.patch
new file mode 100644
index 00000000000..caf81af5d00
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0004-impl-ToPixel-for-CairoARGB.patch
@@ -0,0 +1,49 @@
+From c66987d6fa9f9e442eb7dac947f469bcf8c35d48 Mon Sep 17 00:00:00 2001
+From: Federico Mena Quintero <federico@gnome.org>
+Date: Tue, 21 Sep 2021 12:54:12 -0500
+Subject: [PATCH] impl ToPixel for CairoARGB
+
+Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/592>
+Upstream-Status: Backport
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ src/surface_utils/mod.rs            | 12 ++++++++++++
+ src/surface_utils/shared_surface.rs |  2 +-
+ 2 files changed, 13 insertions(+), 1 deletion(-)
+
+diff --git a/src/surface_utils/mod.rs b/src/surface_utils/mod.rs
+index 3f915cd01..4f751ece4 100644
+--- a/src/surface_utils/mod.rs
++++ b/src/surface_utils/mod.rs
+@@ -93,6 +93,18 @@ impl ToGdkPixbufRGBA for Pixel {
+     }
+ }
+ 
++impl ToPixel for CairoARGB {
++    #[inline]
++    fn to_pixel(&self) -> Pixel {
++        Pixel {
++            r: self.r,
++            g: self.g,
++            b: self.b,
++            a: self.a,
++        }
++    }
++}
++
+ impl ToPixel for GdkPixbufRGBA {
+     #[inline]
+     fn to_pixel(&self) -> Pixel {
+diff --git a/src/surface_utils/shared_surface.rs b/src/surface_utils/shared_surface.rs
+index 34dfc992e..20cd0f40b 100644
+--- a/src/surface_utils/shared_surface.rs
++++ b/src/surface_utils/shared_surface.rs
+@@ -343,7 +343,7 @@ impl ImageSurface<Shared> {
+             .map(|row| row.as_rgba_mut())
+             .zip(self.rows())
+             .flat_map(|(dest_row, src_row)| src_row.iter().zip(dest_row.iter_mut()))
+-            .for_each(|(src, dest)| *dest = Pixel::from(*src).unpremultiply().to_pixbuf_rgba());
++            .for_each(|(src, dest)| *dest = src.to_pixel().unpremultiply().to_pixbuf_rgba());
+ 
+         Some(pixbuf)
+     }
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
index acd03101396..28b8bf2dcf2 100644
--- a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -16,9 +16,13 @@ BBCLASSEXTEND = "native"
 
 inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspection rust
 
-SRC_URI += " file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
-             file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \
-"
+SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.patch \
+           file://0001-system-deps-src-lib.rs-do-not-probe-into-harcoded-li.patch \
+           file://0001-GdkPixbufRGBA-ToGdkPixbufRGBA-start-naming-types-and.patch \
+           file://0002-New-ToPixel-trait.patch \
+           file://0003-New-ToCairoARGB-trait.patch \
+           file://0004-impl-ToPixel-for-CairoARGB.patch \
+           "
 
 SRC_URI[archive.sha256sum] = "bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393"
 
-- 
2.20.1



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

* [PATCH 06/13] librsvg: use only the target architecture to determine availability of atomic primitives
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (3 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 05/13] librsvg: add backports to fix big endian targets (e.g. mips) Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 07/13] librsvg: restore reproducibility Alexander Kanavin
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

This eliminates the hardcoded list of rust targets which can't
possibly include everything from OE universe.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 ...check-only-the-architecture-not-the-.patch | 148 ++++++++++++++++++
 meta/recipes-gnome/librsvg/librsvg_2.52.0.bb  |   1 +
 2 files changed, 149 insertions(+)
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch

diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch b/meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch
new file mode 100644
index 00000000000..488c607480b
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch
@@ -0,0 +1,148 @@
+From 70557b217644901daaf9d8ef793f5e84c937762e Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Tue, 5 Oct 2021 23:41:59 +0200
+Subject: [PATCH] crossbeam-utils: check only the architecture, not the whole
+ target string
+
+There can be custom targets in use, and it's not possible to make a list
+of them; for the check only the first item in the target string is actually
+relevant (the architecture of the target).
+
+Upstream-Status: Pending [needs an upstream ticket and possibly a rework of list generator script]
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ vendor/crossbeam-utils/.cargo-checksum.json |  4 +-
+ vendor/crossbeam-utils/build.rs             |  8 ++-
+ vendor/crossbeam-utils/no_atomic.rs         | 78 ++++++++-------------
+ 3 files changed, 38 insertions(+), 52 deletions(-)
+
+diff --git a/vendor/crossbeam-utils/.cargo-checksum.json b/vendor/crossbeam-utils/.cargo-checksum.json
+index 4ffc417..2d476df 100644
+--- a/vendor/crossbeam-utils/.cargo-checksum.json
++++ b/vendor/crossbeam-utils/.cargo-checksum.json
+@@ -1 +1,3 @@
+-{"files":{"CHANGELOG.md":"5242f1740c65509c465c9a36326d344722facff5f5e58dd064f7b77806b83a46","Cargo.toml":"ac35a7b8ccb16f1ab256951576537aa4179a316c068929c2acef89e0adc12319","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"5734ed989dfca1f625b40281ee9f4530f91b2411ec01cb748223e7eb87e201ab","README.md":"dfa9fbed47c344c134a63c84b7c0e4651baeac1554b7b3266d0e38643743fc33","benches/atomic_cell.rs":"c927eb3cd1e5ecc4b91adbc3bde98af15ffab4086190792ba64d5cde0e24df3d","build.rs":"68cfc4be02429834a19411fba29cb1cb52c841f03ac8104d1bae59a8b2184f9c","no_atomic.rs":"a2621c1b029c614fb0ab8e3f5cda2e839df88d90d26133181c1b901965f7eec4","src/atomic/atomic_cell.rs":"1a3a1e073340317b5ce7a94e29c6a87db89ff7e00da6b92cb3c0339364c3b084","src/atomic/consume.rs":"7a7736fcd64f6473dfea7653559ffc5e1a2a234df43835f8aa8734862145ac15","src/atomic/mod.rs":"7f6afd5bd0da1f7b51765ab04da4e5f683588ac2d23506e61bf7007bb1e61ba2","src/atomic/seq_lock.rs":"27182e6b87a9db73c5f6831759f8625f9fcdec3c2828204c444aef04f427735a","src/atomic/seq_lock_wide.rs":"9888dd03116bb89ca36d4ab8d5a0b5032107a2983a7eb8024454263b09080088","src/backoff.rs":"7cc7754e15f69b52e92a70d4f49d1bc274693455a0933a2d7eb0605806566af3","src/cache_padded.rs":"6a512698115ad0d5a5b163dbd7a83247e1f1c146c4a30f3fc74b952e3b767b59","src/lib.rs":"6f1bcf157abe06ad8458a53e865bf8efab9fad4a9424790147cee8fefb3795d8","src/sync/mod.rs":"59986f559a8f170a4b3247ab2eea2460b09809d87c8110ed88e4e7103d3519dc","src/sync/parker.rs":"ba8f75bff31b8be9275808e8f393e71cc682dfc1109ceccb12f69a3700cff5be","src/sync/sharded_lock.rs":"14be659744918d0b27db24c56b41c618b0f0484b6761da46561023d96c4c120f","src/sync/wait_group.rs":"32e946a7581c55f8aa9904527b92b177c538fa0cf7cbcfa1d1f25990582cb6ea","src/thread.rs":"0eb5ec1d3c1b40600d88eb70539d14276e32307f5bed2b679f50f6a20777a01e","tests/atomic_cell.rs":"6c9453384ecbbe76f8b97b62f022d478d3a76b4eae1e960f49790970f5d52158","tests/cache_padded.rs":"1bfaff8354c8184e1ee1f902881ca9400b60effb273b0d3f752801a483d2b66d","tests/parker.rs":"6def4721287d9d70b1cfd63ebb34e1c83fbb3376edbad2bc8aac6ef69dd99d20","tests/sharded_lock.rs":"726025ce6351fb56ed629d5a56bdf6e833b7afc5dedfa08de0b056c726b6c26d","tests/thread.rs":"9a7d7d3028c552fd834c68598b04a1cc252a816bc20ab62cec060d6cd09cab10","tests/wait_group.rs":"ad8f0cdfed31f9594a2e0737234d418f8b924d784a4db8d7e469deab8c95f5f8"},"package":"d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"}
+\ No newline at end of file
++{"files":{"CHANGELOG.md":"5242f1740c65509c465c9a36326d344722facff5f5e58dd064f7b77806b83a46","Cargo.toml":"ac35a7b8ccb16f1ab256951576537aa4179a316c068929c2acef89e0adc12319","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"5734ed989dfca1f625b40281ee9f4530f91b2411ec01cb748223e7eb87e201ab","README.md":"dfa9fbed47c344c134a63c84b7c0e4651baeac1554b7b3266d0e38643743fc33","benches/atomic_cell.rs":"c927eb3cd1e5ecc4b91adbc3bde98af15ffab4086190792ba64d5cde0e24df3d",
++"build.rs":"15c1a41a88373231cbc17c7de5ade07c6098455af9cdeef81b576f37ed923354",
++"no_atomic.rs":"fda07862ab8c3ac999b58b494fa963e4024a0979037f4c37cf2069d78ab6e5ba","src/atomic/atomic_cell.rs":"1a3a1e073340317b5ce7a94e29c6a87db89ff7e00da6b92cb3c0339364c3b084","src/atomic/consume.rs":"7a7736fcd64f6473dfea7653559ffc5e1a2a234df43835f8aa8734862145ac15","src/atomic/mod.rs":"7f6afd5bd0da1f7b51765ab04da4e5f683588ac2d23506e61bf7007bb1e61ba2","src/atomic/seq_lock.rs":"27182e6b87a9db73c5f6831759f8625f9fcdec3c2828204c444aef04f427735a","src/atomic/seq_lock_wide.rs":"9888dd03116bb89ca36d4ab8d5a0b5032107a2983a7eb8024454263b09080088","src/backoff.rs":"7cc7754e15f69b52e92a70d4f49d1bc274693455a0933a2d7eb0605806566af3","src/cache_padded.rs":"6a512698115ad0d5a5b163dbd7a83247e1f1c146c4a30f3fc74b952e3b767b59","src/lib.rs":"6f1bcf157abe06ad8458a53e865bf8efab9fad4a9424790147cee8fefb3795d8","src/sync/mod.rs":"59986f559a8f170a4b3247ab2eea2460b09809d87c8110ed88e4e7103d3519dc","src/sync/parker.rs":"ba8f75bff31b8be9275808e8f393e71cc682dfc1109ceccb12f69a3700cff5be","src/sync/sharded_lock.rs":"14be659744918d0b27db24c56b41c618b0f0484b6761da46561023d96c4c120f","src/sync/wait_group.rs":"32e946a7581c55f8aa9904527b92b177c538fa0cf7cbcfa1d1f25990582cb6ea","src/thread.rs":"0eb5ec1d3c1b40600d88eb70539d14276e32307f5bed2b679f50f6a20777a01e","tests/atomic_cell.rs":"6c9453384ecbbe76f8b97b62f022d478d3a76b4eae1e960f49790970f5d52158","tests/cache_padded.rs":"1bfaff8354c8184e1ee1f902881ca9400b60effb273b0d3f752801a483d2b66d","tests/parker.rs":"6def4721287d9d70b1cfd63ebb34e1c83fbb3376edbad2bc8aac6ef69dd99d20","tests/sharded_lock.rs":"726025ce6351fb56ed629d5a56bdf6e833b7afc5dedfa08de0b056c726b6c26d","tests/thread.rs":"9a7d7d3028c552fd834c68598b04a1cc252a816bc20ab62cec060d6cd09cab10","tests/wait_group.rs":"ad8f0cdfed31f9594a2e0737234d418f8b924d784a4db8d7e469deab8c95f5f8"},"package":"d82cfc11ce7f2c3faef78d8a684447b40d503d9681acebed6cb728d45940c4db"}
+diff --git a/vendor/crossbeam-utils/build.rs b/vendor/crossbeam-utils/build.rs
+index 9c924ad..e97953c 100644
+--- a/vendor/crossbeam-utils/build.rs
++++ b/vendor/crossbeam-utils/build.rs
+@@ -20,17 +20,19 @@ fn main() {
+         }
+     };
+ 
++    let target_arch = target.split('-').next().unwrap_or_default();
++
+     // Note that this is `no_*`, not `has_*`. This allows treating
+     // `cfg(target_has_atomic = "ptr")` as true when the build script doesn't
+     // run. This is needed for compatibility with non-cargo build systems that
+     // don't run the build script.
+-    if NO_ATOMIC_CAS.contains(&&*target) {
++    if NO_ATOMIC_CAS.contains(&&*target_arch) {
+         println!("cargo:rustc-cfg=crossbeam_no_atomic_cas");
+     }
+-    if NO_ATOMIC.contains(&&*target) {
++    if NO_ATOMIC.contains(&&*target_arch) {
+         println!("cargo:rustc-cfg=crossbeam_no_atomic");
+         println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
+-    } else if NO_ATOMIC_64.contains(&&*target) {
++    } else if NO_ATOMIC_64.contains(&&*target_arch) {
+         println!("cargo:rustc-cfg=crossbeam_no_atomic_64");
+     } else {
+         // Otherwise, assuming `"max-atomic-width" == 64`.
+diff --git a/vendor/crossbeam-utils/no_atomic.rs b/vendor/crossbeam-utils/no_atomic.rs
+index 522b3b8..8096630 100644
+--- a/vendor/crossbeam-utils/no_atomic.rs
++++ b/vendor/crossbeam-utils/no_atomic.rs
+@@ -2,58 +2,40 @@
+ // It is not intended for manual editing.
+ 
+ const NO_ATOMIC_CAS: &[&str] = &[
+-    "avr-unknown-gnu-atmega328",
+-    "msp430-none-elf",
+-    "riscv32i-unknown-none-elf",
+-    "riscv32imc-unknown-none-elf",
+-    "thumbv4t-none-eabi",
+-    "thumbv6m-none-eabi",
++    "avr",
++    "msp430",
++    "riscv32i",
++    "riscv32imc",
++    "thumbv4t",
++    "thumbv6m",
+ ];
+ #[allow(dead_code)]
+ const NO_ATOMIC_64: &[&str] = &[
+-    "arm-linux-androideabi",
+-    "armebv7r-none-eabi",
+-    "armebv7r-none-eabihf",
+-    "armv4t-unknown-linux-gnueabi",
+-    "armv5te-unknown-linux-gnueabi",
+-    "armv5te-unknown-linux-musleabi",
+-    "armv5te-unknown-linux-uclibceabi",
+-    "armv7r-none-eabi",
+-    "armv7r-none-eabihf",
+-    "hexagon-unknown-linux-musl",
+-    "mips-unknown-linux-gnu",
+-    "mips-unknown-linux-musl",
+-    "mips-unknown-linux-uclibc",
+-    "mipsel-unknown-linux-gnu",
+-    "mipsel-unknown-linux-musl",
+-    "mipsel-unknown-linux-uclibc",
+-    "mipsel-unknown-none",
+-    "mipsisa32r6-unknown-linux-gnu",
+-    "mipsisa32r6el-unknown-linux-gnu",
+-    "powerpc-unknown-linux-gnu",
+-    "powerpc-unknown-linux-gnuspe",
+-    "powerpc-unknown-linux-musl",
+-    "powerpc-unknown-netbsd",
+-    "powerpc-unknown-openbsd",
+-    "powerpc-wrs-vxworks",
+-    "powerpc-wrs-vxworks-spe",
+-    "riscv32gc-unknown-linux-gnu",
+-    "riscv32gc-unknown-linux-musl",
+-    "riscv32imac-unknown-none-elf",
+-    "thumbv7em-none-eabi",
+-    "thumbv7em-none-eabihf",
+-    "thumbv7m-none-eabi",
+-    "thumbv8m.base-none-eabi",
+-    "thumbv8m.main-none-eabi",
+-    "thumbv8m.main-none-eabihf",
+-    "mipsel-sony-psp",
+-    "thumbv4t-none-eabi",
+-    "thumbv6m-none-eabi",
++    "arm",
++    "armebv7r",
++    "armv4t",
++    "armv5te",
++    "armv7r",
++    "hexagon",
++    "mips",
++    "mipsel",
++    "mipsisa32r6",
++    "mipsisa32r6el",
++    "powerpc",
++    "riscv32gc",
++    "riscv32imac",
++    "thumbv7em",
++    "thumbv7m",
++    "thumbv8m.base",
++    "thumbv8m.main",
++    "mipsel",
++    "thumbv4t",
++    "thumbv6m",
+ ];
+ #[allow(dead_code)]
+ const NO_ATOMIC: &[&str] = &[
+-    "avr-unknown-gnu-atmega328",
+-    "msp430-none-elf",
+-    "riscv32i-unknown-none-elf",
+-    "riscv32imc-unknown-none-elf",
++    "avr",
++    "msp430",
++    "riscv32i",
++    "riscv32imc",
+ ];
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
index 28b8bf2dcf2..50489453dfb 100644
--- a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -22,6 +22,7 @@ SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.pat
            file://0002-New-ToPixel-trait.patch \
            file://0003-New-ToCairoARGB-trait.patch \
            file://0004-impl-ToPixel-for-CairoARGB.patch \
+           file://0001-crossbeam-utils-check-only-the-architecture-not-the-.patch \
            "
 
 SRC_URI[archive.sha256sum] = "bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393"
-- 
2.20.1



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

* [PATCH 07/13] librsvg: restore reproducibility
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (4 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 06/13] librsvg: use only the target architecture to determine availability of atomic primitives Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 08/13] adwaita-icon-theme: update 3.34/38 -> 41.0 Alexander Kanavin
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 ...ps-sort-dependencies-before-using-th.patch | 53 +++++++++++++++++++
 meta/recipes-gnome/librsvg/librsvg_2.52.0.bb  |  1 +
 2 files changed, 54 insertions(+)
 create mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-vendor-system-deps-sort-dependencies-before-using-th.patch

diff --git a/meta/recipes-gnome/librsvg/librsvg/0001-vendor-system-deps-sort-dependencies-before-using-th.patch b/meta/recipes-gnome/librsvg/librsvg/0001-vendor-system-deps-sort-dependencies-before-using-th.patch
new file mode 100644
index 00000000000..9fe11930d38
--- /dev/null
+++ b/meta/recipes-gnome/librsvg/librsvg/0001-vendor-system-deps-sort-dependencies-before-using-th.patch
@@ -0,0 +1,53 @@
+From 9c20757ef8055535579ca3b7e69834e6917200e2 Mon Sep 17 00:00:00 2001
+From: Alexander Kanavin <alex@linutronix.de>
+Date: Fri, 24 Sep 2021 16:20:40 +0200
+Subject: [PATCH] vendor/system-deps: sort dependencies before using them
+
+Otherwise they come out in non-reproducible order, leaking into
+target binaries.
+
+Upstream-Status: Pending
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+
+
+Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+---
+ vendor/system-deps/.cargo-checksum.json | 3 ++-
+ vendor/system-deps/src/lib.rs           | 6 +++---
+ 2 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/vendor/system-deps/.cargo-checksum.json b/vendor/system-deps/.cargo-checksum.json
+index aae6cb9..73155dc 100644
+--- a/vendor/system-deps/.cargo-checksum.json
++++ b/vendor/system-deps/.cargo-checksum.json
+@@ -1 +1,2 @@
+-{"files":{"Cargo.toml":"56ab5070dc9019b039c5e9904bb466b0879c33a7f69dd030b97abab321b7cc04","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae","src/lib.rs":"594e5f14180590adc9ea0a8ba1cc35f9a8a260322d08de3037efac3ce1dc729b","src/metadata.rs":"4c8d6ac2c88646a5b97ecb50ed44b65e5b2865cce6897add85b29ca2ae08c2bb","src/test.rs":"1ec48d1e443a0a4ac8035a2b60ff0321543aa2fa998fee72cf7762a936bf5f8c","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"}
++{"files":{"Cargo.toml":"56ab5070dc9019b039c5e9904bb466b0879c33a7f69dd030b97abab321b7cc04","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"3fe7396637bf9233908f41c6001cfcb00a379225e06e36e508c8b3d7264a8aae",
++"src/lib.rs":"d88593afdcb0cc3765bf427913ebb718ac6dcd9d62d1381d9afe44dddef3abbf","src/metadata.rs":"4c8d6ac2c88646a5b97ecb50ed44b65e5b2865cce6897add85b29ca2ae08c2bb","src/test.rs":"1ec48d1e443a0a4ac8035a2b60ff0321543aa2fa998fee72cf7762a936bf5f8c","src/tests/testanotherlib.pc":"bb4fd942324e6d49ce3becd827aa5c948d1924ca6681904a3695c19b1424eb3c","src/tests/testdata.pc":"43f481e989c03674fed5ef78c6420b3f8d36a2ce001928d86c418d1844acd5e7","src/tests/testlib-2.0.pc":"152eb0c70c14c3d948118408f3d1fd3bb7531b02aa792db85bd957f7db90b45b","src/tests/testlib-3.0.pc":"cd39c2ef88f6828c9291150cc4b624e769abef484674eaebaa4f67979501315f","src/tests/testlib.pc":"75c0d8a5345f65794f583c83e1cf0dbf3385af6e6abea1d61bb86eef707a52db","src/tests/toml-missing-file/no-cargo-toml-here":"6ab4da4b56f15315df6538610cfcd2ba3d0f9a7a8414678ff00ab5a78f7d41fa"},"package":"480c269f870722b3b08d2f13053ce0c2ab722839f472863c3e2d61ff3a1c2fa6"}
+diff --git a/vendor/system-deps/src/lib.rs b/vendor/system-deps/src/lib.rs
+index af14348..5f0682e 100644
+--- a/vendor/system-deps/src/lib.rs
++++ b/vendor/system-deps/src/lib.rs
+@@ -242,11 +242,11 @@ impl Dependencies {
+         self.libs.get(name)
+     }
+ 
+-    /// An iterator visiting all system dependencies in arbitrary order.
++    /// An iterator visiting all system dependencies in sorted (for build reproducibility) order.
+     /// The first element of the tuple is the name of the `toml` key defining the
+     /// dependency in `Cargo.toml`.
+     pub fn iter(&self) -> impl Iterator<Item = (&str, &Library)> {
+-        self.libs.iter().map(|(k, v)| (k.as_str(), v))
++        self.libs.iter().map(|(k, v)| (k.as_str(), v)).sorted_by_key(|x| x.0)
+     }
+ 
+     fn aggregate_str<F: Fn(&Library) -> &Vec<String>>(
+@@ -338,7 +338,7 @@ impl Dependencies {
+         let mut flags = BuildFlags::new();
+         let mut include_paths = Vec::new();
+ 
+-        for (name, lib) in self.libs.iter() {
++        for (name, lib) in self.libs.iter().sorted_by_key(|x| x.0) {
+             include_paths.extend(lib.include_paths.clone());
+ 
+             if lib.source == Source::EnvVariables
diff --git a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
index 50489453dfb..47d3880873a 100644
--- a/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
+++ b/meta/recipes-gnome/librsvg/librsvg_2.52.0.bb
@@ -23,6 +23,7 @@ SRC_URI += "file://0001-Makefile.am-pass-rust-target-to-cargo-also-when-not-.pat
            file://0003-New-ToCairoARGB-trait.patch \
            file://0004-impl-ToPixel-for-CairoARGB.patch \
            file://0001-crossbeam-utils-check-only-the-architecture-not-the-.patch \
+           file://0001-vendor-system-deps-sort-dependencies-before-using-th.patch \
            "
 
 SRC_URI[archive.sha256sum] = "bd821fb3e16494b61f5185addd23b726b064f203122b3ab4b3d5d7a44e6bf393"
-- 
2.20.1



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

* [PATCH 08/13] adwaita-icon-theme: update 3.34/38 -> 41.0
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (5 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 07/13] librsvg: restore reproducibility Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 09/13] gstreamer1.0-plugins-bad: disable rsvg on x32 Alexander Kanavin
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin, Jussi Kukkonen

The original reason to pin the version (outdated librsvg)
no longer applies.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/conf/distro/include/default-versions.inc |  2 -
 ...1-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch | 27 ------------
 .../0001-Don-t-use-AC_CANONICAL_HOST.patch    |  6 +--
 ...-installation-commands-as-shell-jobs.patch | 24 +++++------
 .../gnome/adwaita-icon-theme_3.34.3.bb        | 43 -------------------
 ...e_3.38.0.bb => adwaita-icon-theme_41.0.bb} |  7 ++-
 6 files changed, 17 insertions(+), 92 deletions(-)
 delete mode 100644 meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch
 delete mode 100644 meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
 rename meta/recipes-gnome/gnome/{adwaita-icon-theme_3.38.0.bb => adwaita-icon-theme_41.0.bb} (87%)

diff --git a/meta/conf/distro/include/default-versions.inc b/meta/conf/distro/include/default-versions.inc
index 5e6fd8a267d..a88b65a74ce 100644
--- a/meta/conf/distro/include/default-versions.inc
+++ b/meta/conf/distro/include/default-versions.inc
@@ -1,5 +1,3 @@
 #
 # Default preferred versions
 #
-
-PREFERRED_VERSION_adwaita-icon-theme ?= "3.34.3"
diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch
deleted file mode 100644
index 4ed5e151ee6..00000000000
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-From 8b3b153b6b95662316528ef083365b46cf5f7841 Mon Sep 17 00:00:00 2001
-From: Jussi Kukkonen <jussi.kukkonen@intel.com>
-Date: Tue, 30 May 2017 14:55:49 +0300
-Subject: [PATCH] Don't use AC_CANONICAL_HOST
-
-This won't work when building allarch (and is only used to find out if
-target is windows).
-
-Upstream-Status: Inappropriate [embedded specific]
-Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
-
----
- configure.ac | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/configure.ac b/configure.ac
-index 449865d..888649e 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -3,7 +3,6 @@ AC_PREREQ(2.53)
- 
- AC_INIT([adwaita-icon-theme], [3.34.3],
-         [http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme])
--AC_CANONICAL_HOST
- AC_CONFIG_MACRO_DIR([m4])
- AC_CONFIG_SRCDIR([index.theme.in])
- 
diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
index c8c70c4b580..5afba3c6443 100644
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
+++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Don-t-use-AC_CANONICAL_HOST.patch
@@ -1,4 +1,4 @@
-From 8b3b153b6b95662316528ef083365b46cf5f7841 Mon Sep 17 00:00:00 2001
+From 63d97fefdbc90f5c68f67bdc30844776d9a1b720 Mon Sep 17 00:00:00 2001
 From: Jussi Kukkonen <jussi.kukkonen@intel.com>
 Date: Tue, 30 May 2017 14:55:49 +0300
 Subject: [PATCH] Don't use AC_CANONICAL_HOST
@@ -14,12 +14,12 @@ Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com>
  1 file changed, 1 deletion(-)
 
 diff --git a/configure.ac b/configure.ac
-index 449865d..888649e 100644
+index f2659a5..1e8b016 100644
 --- a/configure.ac
 +++ b/configure.ac
 @@ -3,7 +3,6 @@ AC_PREREQ(2.53)
  
- AC_INIT([adwaita-icon-theme], [3.38.0],
+ AC_INIT([adwaita-icon-theme], [41.0],
          [http://bugzilla.gnome.org/enter_bug.cgi?product=adwaita-icon-theme])
 -AC_CANONICAL_HOST
  AC_CONFIG_MACRO_DIR([m4])
diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch
index c4d7e2583bd..54e3e5ee85d 100644
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch
+++ b/meta/recipes-gnome/gnome/adwaita-icon-theme/0001-Run-installation-commands-as-shell-jobs.patch
@@ -1,4 +1,4 @@
-From 8dcd73b45a660dbdc560676835ba46f495334f14 Mon Sep 17 00:00:00 2001
+From 79da031e9811f3eef34b14cce419be93fea34319 Mon Sep 17 00:00:00 2001
 From: Alexander Kanavin <alex.kanavin@gmail.com>
 Date: Tue, 13 Jun 2017 18:10:06 +0300
 Subject: [PATCH] Run installation commands as shell jobs
@@ -7,14 +7,15 @@ This greatly speeds up installation time on multi-core systems.
 
 Upstream-Status: Pending
 Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
+
 ---
- src/fullcolor/Makefile.am | 3 ++-
- src/spinner/Makefile.am   | 5 +++--
- src/symbolic/Makefile.am  | 7 ++++---
- 3 files changed, 9 insertions(+), 6 deletions(-)
+ src/fullcolor/Makefile.am |  5 +++--
+ src/spinner/Makefile.am   |  7 ++++---
+ src/symbolic/Makefile.am  | 11 ++++++-----
+ 3 files changed, 13 insertions(+), 10 deletions(-)
 
 diff --git a/src/fullcolor/Makefile.am b/src/fullcolor/Makefile.am
-index 1c940a5..3998ee6 100644
+index d73529b..b7d0808 100644
 --- a/src/fullcolor/Makefile.am
 +++ b/src/fullcolor/Makefile.am
 @@ -9,9 +9,10 @@ install-data-local:
@@ -31,7 +32,7 @@ index 1c940a5..3998ee6 100644
  ## FIXME we should add a way to remove links generated by icon mapping
  uninstall-local:
 diff --git a/src/spinner/Makefile.am b/src/spinner/Makefile.am
-index 86f4d7c..3fae8c1 100644
+index c14caf6..322dc0d 100644
 --- a/src/spinner/Makefile.am
 +++ b/src/spinner/Makefile.am
 @@ -24,13 +24,14 @@ install-data-local:
@@ -45,18 +46,18 @@ index 86f4d7c..3fae8c1 100644
  		context="`dirname $$file`"; \
  		$(mkdir_p) $(DESTDIR)$(themedir)/scalable-up-to-32/$$context; \
 -		$(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file; \
-+		$(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \
 -	done
++		$(install_sh_DATA) $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32/$$file $(DESTDIR)$(themedir)/scalable-up-to-32/$$file & \
 +	done; \
 +	wait
  
  uninstall-local:
  	      for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable-up-to-32; find . -name "*.svg"`; do \
 diff --git a/src/symbolic/Makefile.am b/src/symbolic/Makefile.am
-index 24aac9b..61ba071 100644
+index 957c0ee..e1f8818 100644
 --- a/src/symbolic/Makefile.am
 +++ b/src/symbolic/Makefile.am
-@@ -25,18 +25,19 @@ install-data-local:
+@@ -34,18 +34,19 @@ install-data-local:
  		for file in `cd $(top_srcdir)/$(SVGOUTDIR)/$$size; find . -name "*.png"`; do \
  			context="`dirname $$file`"; \
  			$(mkdir_p) $(DESTDIR)$(themedir)/$$size/$$context; \
@@ -81,6 +82,3 @@ index 24aac9b..61ba071 100644
  
  uninstall-local:
  	for file in `cd $(top_srcdir)/$(SVGOUTDIR)/scalable; find . -name "*.svg"`; do \
--- 
-2.11.0
-
diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb b/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
deleted file mode 100644
index f98f20c378d..00000000000
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.34.3.bb
+++ /dev/null
@@ -1,43 +0,0 @@
-SUMMARY = "GTK+ icon theme"
-HOMEPAGE = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme"
-BUGTRACKER = "https://gitlab.gnome.org/GNOME/adwaita-icon-theme/issues"
-SECTION = "x11/gnome"
-
-LICENSE = "LGPL-3.0 | CC-BY-SA-3.0"
-LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c \
-                    file://COPYING_CCBYSA3;md5=96143d33de3a79321b1006c4e8ed07e7 \
-                    file://COPYING_LGPL;md5=e6a600fd5e1d9cbde2d983680233ad02"
-
-inherit allarch autotools pkgconfig gettext gtk-icon-cache
-
-MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
-           file://0001-Don-t-use-AC_CANONICAL_HOST-3.34.3.patch \
-           file://0001-Run-installation-commands-as-shell-jobs.patch \
-           "
-
-SRC_URI[md5sum] = "9aea4ad9bc002aacad155ee0748b357f"
-SRC_URI[sha256sum] = "e7c2d8c259125d5f35ec09522b88c8fe7ecf625224ab0811213ef0a95d90b908"
-
-DEPENDS += "librsvg-native"
-
-PACKAGES = "${PN}-cursors ${PN}-symbolic-hires ${PN}-symbolic ${PN}-hires ${PN}"
-
-RREPLACES:${PN} = "gnome-icon-theme"
-RCONFLICTS:${PN} = "gnome-icon-theme"
-RPROVIDES:${PN} = "gnome-icon-theme"
-
-FILES:${PN}-cursors = "${prefix}/share/icons/Adwaita/cursors/"
-FILES:${PN}-symbolic-hires = "${prefix}/share/icons/Adwaita/96x96/*/*.symbolic.png \
-                              ${prefix}/share/icons/Adwaita/64x64/*/*.symbolic.png \
-                              ${prefix}/share/icons/Adwaita/48x48/*/*.symbolic.png \
-                              ${prefix}/share/icons/Adwaita/32x32/*/*.symbolic.png"
-FILES:${PN}-symbolic = "${prefix}/share/icons/Adwaita/16x16/*/*.symbolic.png \
-                        ${prefix}/share/icons/Adwaita/24x24/*/*.symbolic.png \
-                        ${prefix}/share/icons/Adwaita/scalable/*/*-symbolic*.svg"
-FILES:${PN}-hires = "${prefix}/share/icons/Adwaita/256x256/ \
-                     ${prefix}/share/icons/Adwaita/512x512/"
-FILES:${PN} = "${prefix}/share/icons/Adwaita/ \
-               ${prefix}/share/pkgconfig/adwaita-icon-theme.pc"
-
-BBCLASSEXTEND = "native nativesdk"
diff --git a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb b/meta/recipes-gnome/gnome/adwaita-icon-theme_41.0.bb
similarity index 87%
rename from meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb
rename to meta/recipes-gnome/gnome/adwaita-icon-theme_41.0.bb
index f9e52cacd2c..2b21e1bb2dc 100644
--- a/meta/recipes-gnome/gnome/adwaita-icon-theme_3.38.0.bb
+++ b/meta/recipes-gnome/gnome/adwaita-icon-theme_41.0.bb
@@ -10,15 +10,14 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=c84cac88e46fc07647ea07e6c24eeb7c \
                     file://COPYING_CCBYSA3;md5=96143d33de3a79321b1006c4e8ed07e7 \
                     file://COPYING_LGPL;md5=e6a600fd5e1d9cbde2d983680233ad02"
 
-inherit allarch autotools pkgconfig gettext gtk-icon-cache
+inherit allarch autotools pkgconfig gettext gtk-icon-cache gnomebase
 
-MAJ_VER = "${@oe.utils.trim_version("${PV}", 2)}"
-SRC_URI = "${GNOME_MIRROR}/${BPN}/${MAJ_VER}/${BPN}-${PV}.tar.xz \
+SRC_URI += " \
            file://0001-Don-t-use-AC_CANONICAL_HOST.patch \
            file://0001-Run-installation-commands-as-shell-jobs.patch \
            "
 
-SRC_URI[sha256sum] = "6683a1aaf2430ccd9ea638dd4bfe1002bc92b412050c3dba20e480f979faaf97"
+SRC_URI[archive.sha256sum] = "ef5339d8c35fcad5d10481b70480803f0fa20b3d3cbc339238fcaceeaee01eba"
 
 DEPENDS += "librsvg-native"
 
-- 
2.20.1



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

* [PATCH 09/13] gstreamer1.0-plugins-bad: disable rsvg on x32
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (6 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 08/13] adwaita-icon-theme: update 3.34/38 -> 41.0 Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 10/13] rust/cargo: exclude UNINATIVE_LOADER from task signature Alexander Kanavin
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

librsvg throws:

| error[E0080]: erroneous constant used
|    --> /home/alex/development/poky/build-x32/tmp/work/x86_64_x32-poky-linux-gnux32/librsvg/2.52.0-r0/librsvg-2.52.0/vendor/thin-slice/src/lib.rs:111:25
|     |
| 111 |         } else if len < TAG_LIMIT {
|     |

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 .../gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb               | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
index 81c8391213a..4f2810e0400 100644
--- a/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
+++ b/meta/recipes-multimedia/gstreamer/gstreamer1.0-plugins-bad_1.18.4.bb
@@ -28,8 +28,9 @@ PACKAGECONFIG ??= " \
     ${@bb.utils.filter('DISTRO_FEATURES', 'directfb vulkan', d)} \
     ${@bb.utils.contains('DISTRO_FEATURES', 'wayland', 'wayland', '', d)} \
     ${@bb.utils.contains('DISTRO_FEATURES', 'opengl', 'gl', '', d)} \
-    bz2 closedcaption curl dash dtls hls openssl rsvg sbc smoothstreaming \
+    bz2 closedcaption curl dash dtls hls openssl sbc smoothstreaming \
     sndfile ttml uvch264 webp \
+    ${@bb.utils.contains('TUNE_FEATURES', 'mx32', '', 'rsvg', d)} \
 "
 
 PACKAGECONFIG[aom]             = "-Daom=enabled,-Daom=disabled,aom"
-- 
2.20.1



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

* [PATCH 10/13] rust/cargo: exclude UNINATIVE_LOADER from task signature
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (7 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 09/13] gstreamer1.0-plugins-bad: disable rsvg on x32 Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 11/13] rust-common.bbclass: rewrite toolchain wrappers in (native) python Alexander Kanavin
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/recipes-devtools/cargo/cargo.inc | 2 ++
 meta/recipes-devtools/rust/rust.inc   | 1 +
 2 files changed, 3 insertions(+)

diff --git a/meta/recipes-devtools/cargo/cargo.inc b/meta/recipes-devtools/cargo/cargo.inc
index 71e1c64f72d..607c51fc3d1 100644
--- a/meta/recipes-devtools/cargo/cargo.inc
+++ b/meta/recipes-devtools/cargo/cargo.inc
@@ -29,6 +29,8 @@ do_cargo_setup_snapshot () {
 
 addtask cargo_setup_snapshot after do_unpack before do_configure
 do_cargo_setup_snapshot[dirs] += "${WORKDIR}/${CARGO_SNAPSHOT}"
+do_cargo_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER"
+
 
 do_compile:prepend () {
 	export RUSTC_BOOTSTRAP="1"
diff --git a/meta/recipes-devtools/rust/rust.inc b/meta/recipes-devtools/rust/rust.inc
index dc92cf5fd00..1d6f99afad3 100644
--- a/meta/recipes-devtools/rust/rust.inc
+++ b/meta/recipes-devtools/rust/rust.inc
@@ -61,6 +61,7 @@ do_rust_setup_snapshot () {
 }
 addtask rust_setup_snapshot after do_unpack before do_configure
 do_rust_setup_snapshot[dirs] += "${WORKDIR}/rust-snapshot"
+do_rust_setup_snapshot[vardepsexclude] += "UNINATIVE_LOADER"
 
 python do_configure() {
     import json
-- 
2.20.1



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

* [PATCH 11/13] rust-common.bbclass: rewrite toolchain wrappers in (native) python
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (8 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 10/13] rust/cargo: exclude UNINATIVE_LOADER from task signature Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 12/13] rust: do not write ar into target json definitions Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch Alexander Kanavin
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

librsvg on centos 7 and friends exhibits the same libtinfo leakage
problem, this time coming from the compiler and not the linker.
Simply covering the compiler by the existing C wrapper-of-wrapper
does not work, as rust-native builds put Important Stuff into
LD_LIBRARY_PATH and unsetting it breaks things badly.

Rather than try to figure out which combination of wrappers and
LD_LIBRARY_PATH settings works for which situation, or provide
some kind of sh-native, let's simply use python3-native for the
wrappers, which should insulate builds from the the host shell.
rust-native already depends on python3-native, so this does not
lengthen the builds.

This also reverts:
rust-common: Hack around LD_LIBRARY_PATH issues on centos7
(commit 63b1fd2226b5f146d6c853cc57417704df378438).

I'd also like to say boo to Red Hat (or GNU?) for breaking ABI
compatibility for stat() in glibc 2.33, we ended up sorting
this mess because of it.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/classes/rust-common.bbclass | 15 ++++++++-------
 meta/files/rust-ccld-wrapper.c   | 29 -----------------------------
 2 files changed, 8 insertions(+), 36 deletions(-)
 delete mode 100644 meta/files/rust-ccld-wrapper.c

diff --git a/meta/classes/rust-common.bbclass b/meta/classes/rust-common.bbclass
index f7f9cbbb2e0..98d65970e8c 100644
--- a/meta/classes/rust-common.bbclass
+++ b/meta/classes/rust-common.bbclass
@@ -1,3 +1,5 @@
+inherit python3native
+
 # Common variables used by all Rust builds
 export rustlibdir = "${libdir}/rust"
 FILES:${PN} += "${rustlibdir}/*.so"
@@ -133,8 +135,12 @@ create_wrapper () {
 	shift
 
 	cat <<- EOF > "${file}"
-	#!/bin/sh
-	exec $@ "\$@"
+	#!/usr/bin/env python3
+	import os, sys
+	orig_binary = "$@"
+	binary = orig_binary.split()[0]
+	args = orig_binary.split() + sys.argv[1:]
+	os.execvp(binary, args)
 	EOF
 	chmod +x "${file}"
 }
@@ -169,11 +175,6 @@ do_rust_create_wrappers () {
 	# Yocto Target / Rust Target archiver
 	create_wrapper "${RUST_TARGET_AR}" "${WRAPPER_TARGET_AR}"
 
-	# Need to filter out LD_LIBRARY_PATH from the linker without using shell
-	mv ${RUST_BUILD_CCLD} ${RUST_BUILD_CCLD}.real
-	${BUILD_CC} ${COREBASE}/meta/files/rust-ccld-wrapper.c -o ${RUST_BUILD_CCLD}
-	mv ${RUST_TARGET_CCLD} ${RUST_TARGET_CCLD}.real
-	${BUILD_CC} ${COREBASE}/meta/files/rust-ccld-wrapper.c -o ${RUST_TARGET_CCLD}
 }
 
 addtask rust_create_wrappers before do_configure after do_patch do_prepare_recipe_sysroot
diff --git a/meta/files/rust-ccld-wrapper.c b/meta/files/rust-ccld-wrapper.c
deleted file mode 100644
index 6bc9958b907..00000000000
--- a/meta/files/rust-ccld-wrapper.c
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Copyright 2021 Richard Purdie
- *
- * SPDX-License-Identifier: GPL-2.0-only
- */
-
-#include <errno.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-
-/*
- * Run the original script (argv[0] + ".real") with LD_LIBRARY_PATH unset
- * This avoids issues where cargo is running a wrapper script using /bin/sh from the host
- * which links to something which has an incompatible version in in recipe-sysroot-native
- * such as libtinfo on centos 7.
- */
-
-int main(int argc, char* argv[]) {
-    char *real = malloc(strlen(argv[0] + 5));
-    strcpy(real, argv[0]);
-    strcpy(real + strlen(argv[0]), ".real");
-    putenv("LD_LIBRARY_PATH=");
-    if(execv(real, argv) == -1) {
-        printf("Wrapper failed to execute, error: %s\n", strerror(errno));
-        return -1;
-    }
-}
-- 
2.20.1



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

* [PATCH 12/13] rust: do not write ar into target json definitions
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (9 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 11/13] rust-common.bbclass: rewrite toolchain wrappers in (native) python Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-10 19:10 ` [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch Alexander Kanavin
  11 siblings, 0 replies; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

latest rust does not use it and prints a ton of warnings
because of it.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/recipes-devtools/rust/rust-common.inc | 1 -
 1 file changed, 1 deletion(-)

diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc
index 153fa3aa975..797284316e2 100644
--- a/meta/recipes-devtools/rust/rust-common.inc
+++ b/meta/recipes-devtools/rust/rust-common.inc
@@ -321,7 +321,6 @@ def rust_gen_target(d, thing, wd, features, cpu, arch):
     tspec['vendor'] = "unknown"
     tspec['target-family'] = "unix"
     tspec['linker'] = "{}{}gcc".format(d.getVar('CCACHE'), prefix)
-    tspec['ar'] = "{}ar".format(prefix)
     tspec['cpu'] = cpu
     if features != "":
         tspec['features'] = features
-- 
2.20.1



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

* [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch
  2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
                   ` (10 preceding siblings ...)
  2021-10-10 19:10 ` [PATCH 12/13] rust: do not write ar into target json definitions Alexander Kanavin
@ 2021-10-10 19:10 ` Alexander Kanavin
  2021-10-11 17:02   ` [OE-core] " Khem Raj
  11 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-10 19:10 UTC (permalink / raw)
  To: openembedded-core; +Cc: Alexander Kanavin

This allows to add the missing x32 definition and others in the future.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
---
 meta/recipes-devtools/rust/rust-common.inc | 57 +++++++++++++---------
 meta/recipes-devtools/rust/rust-cross.inc  |  4 +-
 2 files changed, 38 insertions(+), 23 deletions(-)

diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc
index 797284316e2..7f92602e165 100644
--- a/meta/recipes-devtools/rust/rust-common.inc
+++ b/meta/recipes-devtools/rust/rust-common.inc
@@ -119,22 +119,22 @@ def llvm_features(d):
 
 
 ## arm-unknown-linux-gnueabihf
-DATA_LAYOUT[arm] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
-LLVM_TARGET[arm] = "${RUST_TARGET_SYS}"
-TARGET_ENDIAN[arm] = "little"
-TARGET_POINTER_WIDTH[arm] = "32"
-TARGET_C_INT_WIDTH[arm] = "32"
-MAX_ATOMIC_WIDTH[arm] = "64"
-FEATURES[arm] = "+v6,+vfp2"
+DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
+LLVM_TARGET[arm-eabi] = "${RUST_TARGET_SYS}"
+TARGET_ENDIAN[arm-eabi] = "little"
+TARGET_POINTER_WIDTH[arm-eabi] = "32"
+TARGET_C_INT_WIDTH[arm-eabi] = "32"
+MAX_ATOMIC_WIDTH[arm-eabi] = "64"
+FEATURES[arm-eabi] = "+v6,+vfp2"
 
 ## armv7-unknown-linux-gnueabihf
-DATA_LAYOUT[armv7] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
-LLVM_TARGET[armv7] = "${RUST_TARGET_SYS}"
-TARGET_ENDIAN[armv7] = "little"
-TARGET_POINTER_WIDTH[armv7] = "32"
-TARGET_C_INT_WIDTH[armv7] = "32"
-MAX_ATOMIC_WIDTH[armv7] = "64"
-FEATURES[armv7] = "+v7,+vfp2,+thumb2"
+DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
+LLVM_TARGET[armv7-eabi] = "${RUST_TARGET_SYS}"
+TARGET_ENDIAN[armv7-eabi] = "little"
+TARGET_POINTER_WIDTH[armv7-eabi] = "32"
+TARGET_C_INT_WIDTH[armv7-eabi] = "32"
+MAX_ATOMIC_WIDTH[armv7-eabi] = "64"
+FEATURES[armv7-eabi] = "+v7,+vfp2,+thumb2"
 
 ## aarch64-unknown-linux-{gnu, musl}
 DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
@@ -152,6 +152,14 @@ TARGET_POINTER_WIDTH[x86_64] = "64"
 TARGET_C_INT_WIDTH[x86_64] = "32"
 MAX_ATOMIC_WIDTH[x86_64] = "64"
 
+## x86_64-unknown-linux-gnux32
+DATA_LAYOUT[x86_64-x32] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
+LLVM_TARGET[x86_64-x32] = "${RUST_TARGET_SYS}"
+TARGET_ENDIAN[x86_64-x32] = "little"
+TARGET_POINTER_WIDTH[x86_64-x32] = "32"
+TARGET_C_INT_WIDTH[x86_64-x32] = "32"
+MAX_ATOMIC_WIDTH[x86_64-x32] = "64"
+
 ## i686-unknown-linux-{gnu, musl}
 DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
 LLVM_TARGET[i686] = "${RUST_TARGET_SYS}"
@@ -292,22 +300,27 @@ TARGET_LLVM_FEATURES = "${@llvm_features(d)}"
 # (original) target.
 TARGET_LLVM_FEATURES:class-native = "${@','.join(llvm_features_from_cc_arch(d))}"
 
-def rust_gen_target(d, thing, wd, features, cpu, arch):
+def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""):
     import json
     sys = sys_for(d, thing)
     prefix = prefix_for(d, thing)
 
-    features = features or d.getVarFlag('FEATURES', arch) or ""
+    if abi:
+        arch_abi = "{}-{}".format(arch, abi)
+    else:
+        arch_abi = arch
+
+    features = features or d.getVarFlag('FEATURES', arch_abi) or ""
     features = features.strip()
 
     # build tspec
     tspec = {}
-    tspec['llvm-target'] = d.getVarFlag('LLVM_TARGET', arch)
-    tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch)
-    tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch))
-    tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch)
-    tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch)
-    tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch)
+    tspec['llvm-target'] = d.getVarFlag('LLVM_TARGET', arch_abi)
+    tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi)
+    tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi))
+    tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi)
+    tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch_abi)
+    tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch_abi)
     tspec['arch'] = arch_to_rust_target_arch(arch)
     tspec['os'] = "linux"
     if "musl" in tspec['llvm-target']:
diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc
index bee7c9f12f3..42163f7b819 100644
--- a/meta/recipes-devtools/rust/rust-cross.inc
+++ b/meta/recipes-devtools/rust/rust-cross.inc
@@ -11,13 +11,15 @@ python do_rust_gen_targets () {
         features = ""
         cpu = "generic"
         arch = d.getVar('{}_ARCH'.format(thing))
+        abi = ""
         if thing is "TARGET":
+            abi = d.getVar('ABIEXTENSION')
             # arm and armv7 have different targets in llvm
             if arch == "arm" and target_is_armv7(d):
                 arch = 'armv7'
             features = d.getVar('TARGET_LLVM_FEATURES') or ""
             cpu = d.getVar('TARGET_LLVM_CPU')
-        rust_gen_target(d, thing, wd, features, cpu, arch)
+        rust_gen_target(d, thing, wd, features, cpu, arch, abi)
 }
 
 # Otherwise we'll depend on what we provide
-- 
2.20.1



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

* Re: [OE-core] [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch
  2021-10-10 19:10 ` [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch Alexander Kanavin
@ 2021-10-11 17:02   ` Khem Raj
  2021-10-11 17:14     ` Alexander Kanavin
  0 siblings, 1 reply; 16+ messages in thread
From: Khem Raj @ 2021-10-11 17:02 UTC (permalink / raw)
  To: Alexander Kanavin
  Cc: Patches and discussions about the oe-core layer, Alexander Kanavin

On Sun, Oct 10, 2021 at 12:11 PM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> This allows to add the missing x32 definition and others in the future.
>

It missed the powerpc eabispe, If we are going to use ABI extensions

> Signed-off-by: Alexander Kanavin <alex@linutronix.de>
> ---
>  meta/recipes-devtools/rust/rust-common.inc | 57 +++++++++++++---------
>  meta/recipes-devtools/rust/rust-cross.inc  |  4 +-
>  2 files changed, 38 insertions(+), 23 deletions(-)
>
> diff --git a/meta/recipes-devtools/rust/rust-common.inc b/meta/recipes-devtools/rust/rust-common.inc
> index 797284316e2..7f92602e165 100644
> --- a/meta/recipes-devtools/rust/rust-common.inc
> +++ b/meta/recipes-devtools/rust/rust-common.inc
> @@ -119,22 +119,22 @@ def llvm_features(d):
>
>
>  ## arm-unknown-linux-gnueabihf
> -DATA_LAYOUT[arm] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
> -LLVM_TARGET[arm] = "${RUST_TARGET_SYS}"
> -TARGET_ENDIAN[arm] = "little"
> -TARGET_POINTER_WIDTH[arm] = "32"
> -TARGET_C_INT_WIDTH[arm] = "32"
> -MAX_ATOMIC_WIDTH[arm] = "64"
> -FEATURES[arm] = "+v6,+vfp2"
> +DATA_LAYOUT[arm-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
> +LLVM_TARGET[arm-eabi] = "${RUST_TARGET_SYS}"
> +TARGET_ENDIAN[arm-eabi] = "little"
> +TARGET_POINTER_WIDTH[arm-eabi] = "32"
> +TARGET_C_INT_WIDTH[arm-eabi] = "32"
> +MAX_ATOMIC_WIDTH[arm-eabi] = "64"
> +FEATURES[arm-eabi] = "+v6,+vfp2"
>
>  ## armv7-unknown-linux-gnueabihf
> -DATA_LAYOUT[armv7] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
> -LLVM_TARGET[armv7] = "${RUST_TARGET_SYS}"
> -TARGET_ENDIAN[armv7] = "little"
> -TARGET_POINTER_WIDTH[armv7] = "32"
> -TARGET_C_INT_WIDTH[armv7] = "32"
> -MAX_ATOMIC_WIDTH[armv7] = "64"
> -FEATURES[armv7] = "+v7,+vfp2,+thumb2"
> +DATA_LAYOUT[armv7-eabi] = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
> +LLVM_TARGET[armv7-eabi] = "${RUST_TARGET_SYS}"
> +TARGET_ENDIAN[armv7-eabi] = "little"
> +TARGET_POINTER_WIDTH[armv7-eabi] = "32"
> +TARGET_C_INT_WIDTH[armv7-eabi] = "32"
> +MAX_ATOMIC_WIDTH[armv7-eabi] = "64"
> +FEATURES[armv7-eabi] = "+v7,+vfp2,+thumb2"
>
>  ## aarch64-unknown-linux-{gnu, musl}
>  DATA_LAYOUT[aarch64] = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"
> @@ -152,6 +152,14 @@ TARGET_POINTER_WIDTH[x86_64] = "64"
>  TARGET_C_INT_WIDTH[x86_64] = "32"
>  MAX_ATOMIC_WIDTH[x86_64] = "64"
>
> +## x86_64-unknown-linux-gnux32
> +DATA_LAYOUT[x86_64-x32] = "e-m:e-p:32:32-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"
> +LLVM_TARGET[x86_64-x32] = "${RUST_TARGET_SYS}"
> +TARGET_ENDIAN[x86_64-x32] = "little"
> +TARGET_POINTER_WIDTH[x86_64-x32] = "32"
> +TARGET_C_INT_WIDTH[x86_64-x32] = "32"
> +MAX_ATOMIC_WIDTH[x86_64-x32] = "64"
> +
>  ## i686-unknown-linux-{gnu, musl}
>  DATA_LAYOUT[i686] = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"
>  LLVM_TARGET[i686] = "${RUST_TARGET_SYS}"
> @@ -292,22 +300,27 @@ TARGET_LLVM_FEATURES = "${@llvm_features(d)}"
>  # (original) target.
>  TARGET_LLVM_FEATURES:class-native = "${@','.join(llvm_features_from_cc_arch(d))}"
>
> -def rust_gen_target(d, thing, wd, features, cpu, arch):
> +def rust_gen_target(d, thing, wd, features, cpu, arch, abi=""):
>      import json
>      sys = sys_for(d, thing)
>      prefix = prefix_for(d, thing)
>
> -    features = features or d.getVarFlag('FEATURES', arch) or ""
> +    if abi:
> +        arch_abi = "{}-{}".format(arch, abi)
> +    else:
> +        arch_abi = arch
> +
> +    features = features or d.getVarFlag('FEATURES', arch_abi) or ""
>      features = features.strip()
>
>      # build tspec
>      tspec = {}
> -    tspec['llvm-target'] = d.getVarFlag('LLVM_TARGET', arch)
> -    tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch)
> -    tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch))
> -    tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch)
> -    tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch)
> -    tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch)
> +    tspec['llvm-target'] = d.getVarFlag('LLVM_TARGET', arch_abi)
> +    tspec['data-layout'] = d.getVarFlag('DATA_LAYOUT', arch_abi)
> +    tspec['max-atomic-width'] = int(d.getVarFlag('MAX_ATOMIC_WIDTH', arch_abi))
> +    tspec['target-pointer-width'] = d.getVarFlag('TARGET_POINTER_WIDTH', arch_abi)
> +    tspec['target-c-int-width'] = d.getVarFlag('TARGET_C_INT_WIDTH', arch_abi)
> +    tspec['target-endian'] = d.getVarFlag('TARGET_ENDIAN', arch_abi)
>      tspec['arch'] = arch_to_rust_target_arch(arch)
>      tspec['os'] = "linux"
>      if "musl" in tspec['llvm-target']:
> diff --git a/meta/recipes-devtools/rust/rust-cross.inc b/meta/recipes-devtools/rust/rust-cross.inc
> index bee7c9f12f3..42163f7b819 100644
> --- a/meta/recipes-devtools/rust/rust-cross.inc
> +++ b/meta/recipes-devtools/rust/rust-cross.inc
> @@ -11,13 +11,15 @@ python do_rust_gen_targets () {
>          features = ""
>          cpu = "generic"
>          arch = d.getVar('{}_ARCH'.format(thing))
> +        abi = ""
>          if thing is "TARGET":
> +            abi = d.getVar('ABIEXTENSION')
>              # arm and armv7 have different targets in llvm
>              if arch == "arm" and target_is_armv7(d):
>                  arch = 'armv7'
>              features = d.getVar('TARGET_LLVM_FEATURES') or ""
>              cpu = d.getVar('TARGET_LLVM_CPU')
> -        rust_gen_target(d, thing, wd, features, cpu, arch)
> +        rust_gen_target(d, thing, wd, features, cpu, arch, abi)
>  }
>
>  # Otherwise we'll depend on what we provide
> --
> 2.20.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#156806): https://lists.openembedded.org/g/openembedded-core/message/156806
> Mute This Topic: https://lists.openembedded.org/mt/86220702/1997914
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>


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

* Re: [OE-core] [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch
  2021-10-11 17:02   ` [OE-core] " Khem Raj
@ 2021-10-11 17:14     ` Alexander Kanavin
  2021-10-11 17:22       ` Khem Raj
  0 siblings, 1 reply; 16+ messages in thread
From: Alexander Kanavin @ 2021-10-11 17:14 UTC (permalink / raw)
  To: Khem Raj
  Cc: Patches and discussions about the oe-core layer, Alexander Kanavin

[-- Attachment #1: Type: text/plain, Size: 249 bytes --]

On Mon, 11 Oct 2021 at 19:03, Khem Raj <raj.khem@gmail.com> wrote:

>
> It missed the powerpc eabispe, If we are going to use ABI extensions
>

The AB gave a pass though. If someone needs it on powerpc, they now have an
easy way to adjust it.

Alex

[-- Attachment #2: Type: text/html, Size: 584 bytes --]

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

* Re: [OE-core] [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch
  2021-10-11 17:14     ` Alexander Kanavin
@ 2021-10-11 17:22       ` Khem Raj
  0 siblings, 0 replies; 16+ messages in thread
From: Khem Raj @ 2021-10-11 17:22 UTC (permalink / raw)
  To: Alexander Kanavin
  Cc: Patches and discussions about the oe-core layer, Alexander Kanavin

On Mon, Oct 11, 2021 at 10:15 AM Alexander Kanavin
<alex.kanavin@gmail.com> wrote:
>
> On Mon, 11 Oct 2021 at 19:03, Khem Raj <raj.khem@gmail.com> wrote:
>>
>>
>> It missed the powerpc eabispe, If we are going to use ABI extensions
>
>
> The AB gave a pass though. If someone needs it on powerpc, they now have an easy way to adjust it.

its fine, least its forgotten add it as a comment somewhere since its
a regression, these issues take long to decipher

>
> Alex


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

end of thread, other threads:[~2021-10-11 17:23 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-10 19:09 [PATCH 01/13] rust: drop PV from include file names Alexander Kanavin
2021-10-10 19:09 ` [PATCH 02/13] rust: update 1.54.0 -> 1.55.0 Alexander Kanavin
2021-10-10 19:09 ` [PATCH 03/13] librsvg: update 2.40.21 -> 2.52.0 (transition to rust!) Alexander Kanavin
2021-10-10 19:09 ` [PATCH 04/13] librsvg: do not enable nativesdk Alexander Kanavin
2021-10-10 19:10 ` [PATCH 05/13] librsvg: add backports to fix big endian targets (e.g. mips) Alexander Kanavin
2021-10-10 19:10 ` [PATCH 06/13] librsvg: use only the target architecture to determine availability of atomic primitives Alexander Kanavin
2021-10-10 19:10 ` [PATCH 07/13] librsvg: restore reproducibility Alexander Kanavin
2021-10-10 19:10 ` [PATCH 08/13] adwaita-icon-theme: update 3.34/38 -> 41.0 Alexander Kanavin
2021-10-10 19:10 ` [PATCH 09/13] gstreamer1.0-plugins-bad: disable rsvg on x32 Alexander Kanavin
2021-10-10 19:10 ` [PATCH 10/13] rust/cargo: exclude UNINATIVE_LOADER from task signature Alexander Kanavin
2021-10-10 19:10 ` [PATCH 11/13] rust-common.bbclass: rewrite toolchain wrappers in (native) python Alexander Kanavin
2021-10-10 19:10 ` [PATCH 12/13] rust: do not write ar into target json definitions Alexander Kanavin
2021-10-10 19:10 ` [PATCH 13/13] rust: generate target definitions from (arch, abi), not just arch Alexander Kanavin
2021-10-11 17:02   ` [OE-core] " Khem Raj
2021-10-11 17:14     ` Alexander Kanavin
2021-10-11 17:22       ` Khem Raj

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.