summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2022-03-05 22:48:31 -0800
committerKhem Raj <raj.khem@gmail.com>2022-03-09 07:37:03 -0800
commit1cf791b208c315e83109fb8eff34935294b5bc9c (patch)
tree8da71f710c93f093f701728af3fe1a08e6a49452
parentbc8241129c8b9b32e6e81dbf444c80c86a74e53b (diff)
downloadmeta-openembedded-1cf791b208c315e83109fb8eff34935294b5bc9c.tar.gz
python3-pyruvate: Fix build on riscv32
refresh upstream status as needed. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Trevor Gamblin <trevor.gamblin@windriver.com>
-rw-r--r--meta-python/recipes-devtools/python/python3-pyruvate/0001-linux.rs-Define-consts-for-rv32-architecture.patch26
-rw-r--r--meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv32-Define-O_LARGEFILE.patch29
-rw-r--r--meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv64-mod.rs-Add-missing-error-codes.patch12
-rw-r--r--meta-python/recipes-devtools/python/python3-pyruvate/0001-statfs-Exclude-riscv32.patch108
-rw-r--r--meta-python/recipes-devtools/python/python3-pyruvate_1.1.2.bb9
5 files changed, 175 insertions, 9 deletions
diff --git a/meta-python/recipes-devtools/python/python3-pyruvate/0001-linux.rs-Define-consts-for-rv32-architecture.patch b/meta-python/recipes-devtools/python/python3-pyruvate/0001-linux.rs-Define-consts-for-rv32-architecture.patch
new file mode 100644
index 0000000000..a2d4091a95
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-pyruvate/0001-linux.rs-Define-consts-for-rv32-architecture.patch
@@ -0,0 +1,26 @@
1From 3a3bd8475f93d54cb5bb62d239247fef2e03a733 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 5 Mar 2022 00:37:01 -0800
4Subject: [PATCH] linux.rs: Define consts for rv32 architecture
5
6Upstream-Status: Submitted [https://github.com/nix-rust/nix/pull/1669]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 src/sys/ioctl/linux.rs | 1 +
10 1 file changed, 1 insertion(+)
11
12diff --git a/src/sys/ioctl/linux.rs b/src/sys/ioctl/linux.rs
13index 68ebaba..08cd0c3 100644
14--- a/src/sys/ioctl/linux.rs
15+++ b/src/sys/ioctl/linux.rs
16@@ -34,6 +34,7 @@ mod consts {
17 target_arch = "s390x",
18 target_arch = "x86_64",
19 target_arch = "aarch64",
20+ target_arch = "riscv32",
21 target_arch = "riscv64"))]
22 mod consts {
23 #[doc(hidden)]
24--
252.35.1
26
diff --git a/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv32-Define-O_LARGEFILE.patch b/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv32-Define-O_LARGEFILE.patch
new file mode 100644
index 0000000000..0ecb50478e
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv32-Define-O_LARGEFILE.patch
@@ -0,0 +1,29 @@
1From 8c1251b57827c7e757079d6e9304570643e8e80a Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 5 Mar 2022 22:18:49 -0800
4Subject: [PATCH] riscv32: Define O_LARGEFILE
5
6Some applications (e.g. nix) use this define and expect it to come from libc
7
8Upstream-Status: Submitted [https://github.com/rust-lang/libc/pull/2710]
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs | 2 ++
12 1 file changed, 2 insertions(+)
13
14diff --git a/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs b/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs
15index 4d551eb..feaa00a 100644
16--- a/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs
17+++ b/src/unix/linux_like/linux/gnu/b32/riscv32/mod.rs
18@@ -490,6 +490,8 @@ pub const FIONREAD: ::c_ulong = 21531;
19 pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40;
20 pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56;
21
22+pub const O_LARGEFILE: ::c_int = 0;
23+
24 pub const SYS_read: ::c_long = 63;
25 pub const SYS_write: ::c_long = 64;
26 pub const SYS_close: ::c_long = 57;
27--
282.35.1
29
diff --git a/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv64-mod.rs-Add-missing-error-codes.patch b/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv64-mod.rs-Add-missing-error-codes.patch
index 67108472ac..6143342178 100644
--- a/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv64-mod.rs-Add-missing-error-codes.patch
+++ b/meta-python/recipes-devtools/python/python3-pyruvate/0001-riscv64-mod.rs-Add-missing-error-codes.patch
@@ -1,21 +1,21 @@
1From c711fb215de54f960a35cdc48cd506b6b5db4918 Mon Sep 17 00:00:00 2001 1From a6f5bb3e7fe51733144497a3b5962b300f922a2d Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 26 Jan 2022 11:50:58 -0800 3Date: Mon, 7 Mar 2022 11:02:46 -0800
4Subject: [PATCH] riscv64/mod.rs: Add missing error codes 4Subject: [PATCH] riscv64/mod.rs: Add missing error codes
5 5
6These are flagged by apps e.g. python3-pyruvate 6These are flagged by apps e.g. python3-pyruvate
7 7
8Upstream-Status: Submitted [https://github.com/rust-lang/libc/pull/2656] 8Upstream-Status: Backport [https://github.com/rust-lang/libc/commit/c711fb215de54f960a35cdc48cd506b6b5db4918]
9Signed-off-by: Khem Raj <raj.khem@gmail.com> 9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10--- 10---
11 src/unix/linux_like/linux/musl/b64/riscv64/mod.rs | 5 +++++ 11 src/unix/linux_like/linux/musl/b64/riscv64/mod.rs | 5 +++++
12 1 file changed, 5 insertions(+) 12 1 file changed, 5 insertions(+)
13 13
14diff --git a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs 14diff --git a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
15index b075b4a05..6b17621c7 100644 15index 48fee4e..7c88abe 100644
16--- a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs 16--- a/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
17+++ b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs 17+++ b/src/unix/linux_like/linux/musl/b64/riscv64/mod.rs
18@@ -548,6 +548,11 @@ pub const EHOSTUNREACH: ::c_int = 113; 18@@ -551,6 +551,11 @@ pub const EHOSTUNREACH: ::c_int = 113;
19 pub const EALREADY: ::c_int = 114; 19 pub const EALREADY: ::c_int = 114;
20 pub const EINPROGRESS: ::c_int = 115; 20 pub const EINPROGRESS: ::c_int = 115;
21 pub const ESTALE: ::c_int = 116; 21 pub const ESTALE: ::c_int = 116;
@@ -28,5 +28,5 @@ index b075b4a05..6b17621c7 100644
28 pub const ENOMEDIUM: ::c_int = 123; 28 pub const ENOMEDIUM: ::c_int = 123;
29 pub const EMEDIUMTYPE: ::c_int = 124; 29 pub const EMEDIUMTYPE: ::c_int = 124;
30-- 30--
312.35.0 312.35.1
32 32
diff --git a/meta-python/recipes-devtools/python/python3-pyruvate/0001-statfs-Exclude-riscv32.patch b/meta-python/recipes-devtools/python/python3-pyruvate/0001-statfs-Exclude-riscv32.patch
new file mode 100644
index 0000000000..b482d7c0db
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-pyruvate/0001-statfs-Exclude-riscv32.patch
@@ -0,0 +1,108 @@
1From ccdc974dc10c83e29d551492fb2d17a2ff8c2b84 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 5 Mar 2022 22:30:15 -0800
4Subject: [PATCH] statfs: Exclude riscv32
5
6Upstream-Status: Submitted [https://github.com/nix-rust/nix/pull/1669]
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8---
9 src/sys/statfs.rs | 20 ++++++++++----------
10 1 file changed, 10 insertions(+), 10 deletions(-)
11
12diff --git a/src/sys/statfs.rs b/src/sys/statfs.rs
13index 829be57..6b88dad 100644
14--- a/src/sys/statfs.rs
15+++ b/src/sys/statfs.rs
16@@ -292,7 +292,7 @@ impl Statfs {
17 }
18
19 /// Total data blocks in filesystem
20- #[cfg(all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32"))))]
21+ #[cfg(all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32"))))]
22 pub fn blocks(&self) -> u64 {
23 self.0.f_blocks
24 }
25@@ -305,7 +305,7 @@ impl Statfs {
26 target_os = "freebsd",
27 target_os = "openbsd",
28 target_os = "dragonfly",
29- all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32")))
30+ all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32")))
31 )))]
32 pub fn blocks(&self) -> libc::c_ulong {
33 self.0.f_blocks
34@@ -330,7 +330,7 @@ impl Statfs {
35 }
36
37 /// Free blocks in filesystem
38- #[cfg(all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32"))))]
39+ #[cfg(all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32"))))]
40 pub fn blocks_free(&self) -> u64 {
41 self.0.f_bfree
42 }
43@@ -343,7 +343,7 @@ impl Statfs {
44 target_os = "freebsd",
45 target_os = "openbsd",
46 target_os = "dragonfly",
47- all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32")))
48+ all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32")))
49 )))]
50 pub fn blocks_free(&self) -> libc::c_ulong {
51 self.0.f_bfree
52@@ -368,7 +368,7 @@ impl Statfs {
53 }
54
55 /// Free blocks available to unprivileged user
56- #[cfg(all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32"))))]
57+ #[cfg(all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32"))))]
58 pub fn blocks_available(&self) -> u64 {
59 self.0.f_bavail
60 }
61@@ -381,7 +381,7 @@ impl Statfs {
62 target_os = "freebsd",
63 target_os = "openbsd",
64 target_os = "dragonfly",
65- all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32")))
66+ all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32")))
67 )))]
68 pub fn blocks_available(&self) -> libc::c_ulong {
69 self.0.f_bavail
70@@ -406,7 +406,7 @@ impl Statfs {
71 }
72
73 /// Total file nodes in filesystem
74- #[cfg(all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32"))))]
75+ #[cfg(all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32"))))]
76 pub fn files(&self) -> libc::fsfilcnt_t {
77 self.0.f_files
78 }
79@@ -419,7 +419,7 @@ impl Statfs {
80 target_os = "freebsd",
81 target_os = "openbsd",
82 target_os = "dragonfly",
83- all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32")))
84+ all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32")))
85 )))]
86 pub fn files(&self) -> libc::c_ulong {
87 self.0.f_files
88@@ -449,7 +449,7 @@ impl Statfs {
89 }
90
91 /// Free file nodes in filesystem
92- #[cfg(all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32"))))]
93+ #[cfg(all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32"))))]
94 pub fn files_free(&self) -> libc::fsfilcnt_t {
95 self.0.f_ffree
96 }
97@@ -462,7 +462,7 @@ impl Statfs {
98 target_os = "freebsd",
99 target_os = "openbsd",
100 target_os = "dragonfly",
101- all(target_os = "linux", any(target_env = "musl", all(target_arch = "x86_64", target_pointer_width = "32")))
102+ all(target_os = "linux", any(target_env = "musl", target_arch = "riscv32", all(target_arch = "x86_64", target_pointer_width = "32")))
103 )))]
104 pub fn files_free(&self) -> libc::c_ulong {
105 self.0.f_ffree
106--
1072.35.1
108
diff --git a/meta-python/recipes-devtools/python/python3-pyruvate_1.1.2.bb b/meta-python/recipes-devtools/python/python3-pyruvate_1.1.2.bb
index 4429e4c32a..143125bbb1 100644
--- a/meta-python/recipes-devtools/python/python3-pyruvate_1.1.2.bb
+++ b/meta-python/recipes-devtools/python/python3-pyruvate_1.1.2.bb
@@ -24,9 +24,6 @@ RUSTFLAGS:append:mipsel = " --cfg crossbeam_no_atomic_64"
24RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64" 24RUSTFLAGS:append:powerpc = " --cfg crossbeam_no_atomic_64"
25RUSTFLAGS:append:riscv32 = " --cfg crossbeam_no_atomic_64" 25RUSTFLAGS:append:riscv32 = " --cfg crossbeam_no_atomic_64"
26 26
27SRC_URI:append:mips = " file://0001-check-for-mips-targets-for-stat.st_dev-definitions.patch;patchdir=../cargo_home/bitbake/libsystemd-0.4.1/"
28SRC_URI:append = " file://0001-riscv64-mod.rs-Add-missing-error-codes.patch;patchdir=../cargo_home/bitbake/libc-0.2.112/"
29
30SRC_URI += " \ 27SRC_URI += " \
31 crate://crates.io/aho-corasick/0.7.18 \ 28 crate://crates.io/aho-corasick/0.7.18 \
32 crate://crates.io/atty/0.2.14 \ 29 crate://crates.io/atty/0.2.14 \
@@ -118,6 +115,12 @@ SRC_URI += " \
118 crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \ 115 crate://crates.io/winapi-x86_64-pc-windows-gnu/0.4.0 \
119 crate://crates.io/winapi/0.3.9 \ 116 crate://crates.io/winapi/0.3.9 \
120" 117"
118SRC_URI += "file://0001-riscv64-mod.rs-Add-missing-error-codes.patch;patchdir=../cargo_home/bitbake/libc-0.2.112/ \
119 file://0001-riscv32-Define-O_LARGEFILE.patch;patchdir=../cargo_home/bitbake/libc-0.2.112/ \
120 file://0001-linux.rs-Define-consts-for-rv32-architecture.patch;patchdir=../cargo_home/bitbake/nix-0.23.1/ \
121 file://0001-statfs-Exclude-riscv32.patch;patchdir=../cargo_home/bitbake/nix-0.23.1/ \
122 "
123SRC_URI:append:mips = " file://0001-check-for-mips-targets-for-stat.st_dev-definitions.patch;patchdir=../cargo_home/bitbake/libsystemd-0.4.1/"
121 124
122# The following configs & dependencies are from setuptools extras_require. 125# The following configs & dependencies are from setuptools extras_require.
123# These dependencies are optional, hence can be controlled via PACKAGECONFIG. 126# These dependencies are optional, hence can be controlled via PACKAGECONFIG.