Here's my attempt to fix audio/musepack without just splatting an
uncomprehending cast there (hi Gentoo!).  This could use another
set of eyes.  Peril-sensitive sunglasses highly recommended.

-----------------------------------------------
commit cd62a3f99f7d6eddde54417d221736542c6092a6 (mystuff)
from: Christian Weisgerber <[email protected]>
date: Sun May 31 23:22:22 2026 UTC
 
 audio/musepack: make C types coherent to appease llvm22
 
diff 1560c25fe4e28aa8383df46005219b3c8fbb4374 
cd62a3f99f7d6eddde54417d221736542c6092a6
commit - 1560c25fe4e28aa8383df46005219b3c8fbb4374
commit + cd62a3f99f7d6eddde54417d221736542c6092a6
blob - 7bce87be48be8432fdce045f8cd599184e4f6398
blob + 6a85acd27e0236eed47b6a69c253eb4e6b59f687
--- audio/musepack/Makefile
+++ audio/musepack/Makefile
@@ -3,7 +3,7 @@ COMMENT =               decoder, encoder and replaygain for 
musepac
 V =                    475
 DISTNAME =             musepack_src_r${V}
 PKGNAME =              musepack-${V}
-REVISION =             6
+REVISION =             7
 CATEGORIES =           audio
 
 HOMEPAGE =             https://www.musepack.net/
blob - /dev/null
blob + ee608725e863dc223d3d1bb947c3d55443b54802 (mode 644)
--- /dev/null
+++ audio/musepack/patches/patch-libmpcpsy_libmpcpsy_h
@@ -0,0 +1,14 @@
+Index: libmpcpsy/libmpcpsy.h
+--- libmpcpsy/libmpcpsy.h.orig
++++ libmpcpsy/libmpcpsy.h
+@@ -86,8 +86,8 @@ typedef struct {
+       float KBD2; // = -1.
+ 
+       // FIXME : remove this :
+-      int * SCF_Index_L;
+-      int * SCF_Index_R;              // Scalefactor-index for Bitstream
++      int (* SCF_Index_L)[3];
++      int (* SCF_Index_R)[3];         // Scalefactor-index for Bitstream
+ 
+ } PsyModel;
+ 
blob - /dev/null
blob + 55d8cf10d74adc58ae9c661a51126f800194b8e7 (mode 644)
--- /dev/null
+++ audio/musepack/patches/patch-mpcenc_mpcenc_c
@@ -0,0 +1,14 @@
+Index: mpcenc/mpcenc.c
+--- mpcenc/mpcenc.c.orig
++++ mpcenc/mpcenc.c
+@@ -1535,8 +1535,8 @@ mainloop ( int argc, char** argv )
+ 
+     // initialize tables which must be initialized once and only once
+ 
+-      m.SCF_Index_L = (int*) e.SCF_Index_L;
+-      m.SCF_Index_R = (int*) e.SCF_Index_R;
++      m.SCF_Index_L = e.SCF_Index_L;
++      m.SCF_Index_R = e.SCF_Index_R;
+ 
+       Init_Psychoakustik (&m);
+       Init_FPU ();
blob - /dev/null
blob + 3611303a32c6e9ef7a0335fbe9ce9b15047da736 (mode 644)
--- /dev/null
+++ audio/musepack/patches/patch-mpcenc_mpcenc_h
@@ -0,0 +1,14 @@
+Index: mpcenc/mpcenc.h
+--- mpcenc/mpcenc.h.orig
++++ mpcenc/mpcenc.h
+@@ -254,8 +254,8 @@ extern float __invSCF [128 + 6];        // tabulated s
+ 
+ float  ISNR_Schaetzer                  ( const float* samples, const float 
comp, const int res);
+ float  ISNR_Schaetzer_Trans            ( const float* samples, const float 
comp, const int res);
+-void   QuantizeSubband                 ( unsigned int* qu_output, const 
float* input, const int res, float* errors, const int maxNsOrder );
+-void   QuantizeSubbandWithNoiseShaping ( unsigned int* qu_output, const 
float* input, const int res, float* errors, const float* FIR );
++void   QuantizeSubband                 ( mpc_int16_t* qu_output, const float* 
input, const int res, float* errors, const int maxNsOrder );
++void   QuantizeSubbandWithNoiseShaping ( mpc_int16_t* qu_output, const float* 
input, const int res, float* errors, const float* FIR );
+ 
+ void   NoiseInjectionComp ( void );
+ 

-- 
Christian "naddy" Weisgerber                          [email protected]

Reply via email to