git: fb85bac76292 - main - audio/maolan: fix build on powerpc64
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 10 Oct 2026 18:16:42 UTC
The branch main has been updated by pkubaj:
URL: https://cgit.FreeBSD.org/ports/commit/?id=fb85bac7629241d9d7cf34ee3e6f44dc979957f0
commit fb85bac7629241d9d7cf34ee3e6f44dc979957f0
Author: Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2026-10-10 13:02:19 +0000
Commit: Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2026-10-10 18:15:38 +0000
audio/maolan: fix build on powerpc64
The i24 crate's to_le_repr() returned the wrong type on big-endian
targets and used std::mem::transmute in a no_std build.
---
.../files/patch-cargo-crates_i24-2.3.5_src_repr.rs | 29 ++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/audio/maolan/files/patch-cargo-crates_i24-2.3.5_src_repr.rs b/audio/maolan/files/patch-cargo-crates_i24-2.3.5_src_repr.rs
new file mode 100644
index 000000000000..b3ff96ec6e64
--- /dev/null
+++ b/audio/maolan/files/patch-cargo-crates_i24-2.3.5_src_repr.rs
@@ -0,0 +1,29 @@
+--- cargo-crates/i24-2.3.5/src/repr.rs.orig 2006-07-24 01:21:28 UTC
++++ cargo-crates/i24-2.3.5/src/repr.rs
+@@ -209,7 +209,7 @@ impl I24Repr {
+ }
+
+ #[inline]
+- const fn to_le_repr(self) -> Self {
++ const fn to_le_repr(self) -> LittleEndianI24Repr {
+ #[cfg(target_endian = "little")]
+ {
+ self
+@@ -225,7 +225,7 @@ impl I24Repr {
+ // so after swapping the bytes it turns into
+ // [data1, data2, data3, zero]
+ // which is the proper layout for `LittleEndianI24Repr`
+- unsafe { std::mem::transmute::<u32, LittleEndianI24Repr>(val) }.data
++ unsafe { core::mem::transmute::<u32, LittleEndianI24Repr>(val) }
+ }
+ }
+
+@@ -636,7 +636,7 @@ impl U24Repr {
+ }
+
+ #[inline]
+- const fn to_le_repr(self) -> Self {
++ const fn to_le_repr(self) -> LittleEndianU24Repr {
+ #[cfg(target_endian = "little")]
+ {
+ self