From ead2f6ced95d0df67080014700446db1fa254835 Mon Sep 17 00:00:00 2001 From: Alexander Kanavin Date: Fri, 5 Nov 2021 09:48:10 +0100 Subject: librsvg: set the needed atomic configuration flags directly per-target Do not try to mangle the upstream list of targets; after discussion with upstream it turns out it's neither necessary nor upstreamable: https://github.com/crossbeam-rs/crossbeam/pull/751 (From OE-Core rev: 97562668e1a76710acd2be7c8cdbcc1deb80bd9f) Signed-off-by: Alexander Kanavin Signed-off-by: Richard Purdie --- ...tils-check-only-the-architecture-not-the-.patch | 143 --------------------- meta/recipes-gnome/librsvg/librsvg_2.52.3.bb | 4 +- 2 files changed, 3 insertions(+), 144 deletions(-) delete mode 100644 meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch (limited to 'meta/recipes-gnome/librsvg') 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 deleted file mode 100644 index 0c1cf59eff..0000000000 --- a/meta/recipes-gnome/librsvg/librsvg/0001-crossbeam-utils-check-only-the-architecture-not-the-.patch +++ /dev/null @@ -1,143 +0,0 @@ -From 70557b217644901daaf9d8ef793f5e84c937762e Mon Sep 17 00:00:00 2001 -From: Alexander Kanavin -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 ---- - 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(-) - ---- 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":"dcbd845deda197b13361238a6aab60b6d8124fb588fd0b33740e127441db3f1a","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"} ---- 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`. ---- a/vendor/crossbeam-utils/no_atomic.rs -+++ b/vendor/crossbeam-utils/no_atomic.rs -@@ -2,58 +2,41 @@ - // 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", -+ "riscv32", -+ "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.3.bb b/meta/recipes-gnome/librsvg/librsvg_2.52.3.bb index 335d891f05..6c4850271d 100644 --- a/meta/recipes-gnome/librsvg/librsvg_2.52.3.bb +++ b/meta/recipes-gnome/librsvg/librsvg_2.52.3.bb @@ -18,7 +18,6 @@ inherit gnomebase gtk-doc pixbufcache upstream-version-is-even gobject-introspec 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-crossbeam-utils-check-only-the-architecture-not-the-.patch \ file://0001-vendor-system-deps-sort-dependencies-before-using-th.patch \ file://0005-Add-base-definitions-for-riscv64-musl-libc-0.2.93.patch \ file://0006-FIXUP-linux-musl-mod.rs-add-riscv64-to-b64-set-libc-.patch \ @@ -39,6 +38,9 @@ export RUST_TARGET_PATH export RUST_TARGET = "${HOST_SYS}" +RUSTFLAGS:append:mips = " --cfg crossbeam_no_atomic_64" +RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64" + # 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 -- cgit v1.2.3-54-g00ecf