diff --git a/musepack/.SRCINFO b/musepack/.SRCINFO new file mode 100644 index 0000000000..a81ff1b7a7 --- /dev/null +++ b/musepack/.SRCINFO @@ -0,0 +1,42 @@ +pkgbase = musepack + pkgdesc = MusePack commandline utilities and decoder library + pkgver = 0.1+r475 + pkgrel = 6 + epoch = 1 + url = https://musepack.net/ + arch = x86_64 + license = BSD-3-Clause AND LGPL-2.1-or-later AND GPL-2.0-or-later + depends = glibc + depends = libcue + depends = libreplaygain + source = https://files.musepack.net/source/musepack_src_r475.tar.gz + source = 01_am-maintainer-mode.patch + source = 02_link-libm.patch + source = 03_mpcchap.patch + source = 04_link-order.patch + source = 05_visibility.patch + source = 1001_missing_extern_kw.patch + source = add_subdir-objects.patch + source = musepack-tools-495-incompatible-pointers.patch + b2sums = 601762738199bd67278d934d927c35d6ba1d286be9fd57ebf2e89dca271f563e85cf023f8860bfd30b501039bba5fd68eaf2d65dce65d0dcf5ce6d75a6e692aa + b2sums = 940b71df9e4d582a0da733174048168aacd1f80c69d9cf2f163545cf1cdd83165eca5c18597c4f271c52f55b8085f69079a9df4e3fee3875d2853062afbbb1cd + b2sums = 65a3b3c2fd6e265d88075834f8d479fc40c0bf11d674c4d2ffce12b595460327bcf33931ae7c16a5b78273de10e962144764e950f2cb0ae74ece01b892526456 + b2sums = 7a97fc91ba99f21449cdffcb6137aa253f71ec71e3a80b70df69b7876a28751b834df0e1a5a502d44fec13a5138ae4f425951b28242086821f3992da338c9ecf + b2sums = a5c96c5a80d76cbbb25a5647c6d754d82203936949f2720772776267f6752811f2c511e8df59a58570bba9ffe3b9482b0294eeed4364e2a4602a15d142759add + b2sums = e96e7928ad05bc0713ede3fbc8b5053cf1a456067faa481fa17f5156d61f6c1052b47ff27fe0e7e70d4e40fd62fae9cd0c57c5e28b149501a37dc323031a8bb5 + b2sums = 5204b8b9596ef5663f7678cdd533a227df9722f3d66f66ea9fe151a76de6070e3801f51be657588cb14839239d6d2ed8c5a5f7e80a61f79a1eda22b72026658a + b2sums = 366e7a668d9c47be947b3ae785db7e0804d3d3537aa5df4c833386e8b04fc98f3c4dc1f32a0beaabf7721deae853ad6bce9acd7bae1ad1621dae1bb908a200c2 + b2sums = 72c0ed7dd049ada3169c59be3904cbb0c3a4d8ce68fa4f875a5951e8639a0d39c04b17eca3425da5a149d627f0a248aee9bb4dfae60ff4e98381b6a4c483f294 + +pkgname = musepack-tools + pkgdesc = MusePack commandline tools + depends = glibc + depends = libcue + depends = libreplaygain + depends = libmpcdec>=1:0.1+r475 + options = !emptydirs + +pkgname = libmpcdec + pkgdesc = MusePack decoding library + license = BSD-3-Clause + depends = glibc diff --git a/musepack/.nvchecker.toml b/musepack/.nvchecker.toml new file mode 100644 index 0000000000..904f9c3d00 --- /dev/null +++ b/musepack/.nvchecker.toml @@ -0,0 +1,6 @@ +[musepack] +source = "regex" +url = "https://musepack.net/index.php?pg=src" +regex = "musepack_src_([^\"]*).tar.gz" +from_pattern = '^r' +to_pattern = '0.1+r' diff --git a/musepack/03_mpcchap.patch b/musepack/03_mpcchap.patch index b1f04b0ac4..b157abd9c2 100644 --- a/musepack/03_mpcchap.patch +++ b/musepack/03_mpcchap.patch @@ -1,8 +1,6 @@ -Index: libmpc/configure.in -=================================================================== ---- libmpc.orig/configure.in -+++ libmpc/configure.in -@@ -28,6 +28,12 @@ esac +--- a/configure.in ++++ b/configure.in +@@ -28,6 +28,12 @@ AC_SUBST([EXTRALIBS]) AC_ARG_ENABLE([mpcchap], [AS_HELP_STRING([--enable-mpcchap], [enable building mpcchap])]) @@ -15,11 +13,9 @@ Index: libmpc/configure.in AM_CONDITIONAL([MPC_CHAP], [test "x$enable_mpcchap" = xyes]) -Index: libmpc/mpcchap/Makefile.am -=================================================================== ---- libmpc.orig/mpcchap/Makefile.am -+++ libmpc/mpcchap/Makefile.am -@@ -4,7 +4,8 @@ bin_PROGRAMS = mpcchap +--- a/mpcchap/Makefile.am ++++ b/mpcchap/Makefile.am +@@ -4,7 +4,8 @@ common_sources = ../common/tags.c ../common/crc32.c @@ -29,18 +25,16 @@ Index: libmpc/mpcchap/Makefile.am if HAVE_VISIBILITY AM_CFLAGS = -fvisibility=hidden -@@ -16,4 +17,4 @@ dictionary.h iniparser.h +@@ -16,4 +17,4 @@ mpcchap_LDADD = $(top_builddir)/libmpcdec/libmpcdec.la \ $(top_builddir)/libmpcenc/libmpcenc.a \ - -lm -lcuefile + -lm $(LIBCUE_LIBS) -Index: libmpc/mpcchap/mpcchap.c -=================================================================== ---- libmpc.orig/mpcchap/mpcchap.c -+++ libmpc/mpcchap/mpcchap.c -@@ -24,7 +24,7 @@ - +--- a/mpcchap/mpcchap.c ++++ b/mpcchap/mpcchap.c +@@ -25,7 +25,7 @@ + #include #include -#include @@ -48,7 +42,7 @@ Index: libmpc/mpcchap/mpcchap.c // tags.c void Init_Tags ( void ); -@@ -153,13 +153,13 @@ mpc_status add_chaps_ini(char * mpc_file +@@ -161,17 +161,25 @@ mpc_status add_chaps_cue(char * mpc_file, char * chap_file, mpc_demux * demux, mpc_streaminfo * si) { Cd *cd = 0; @@ -60,7 +54,19 @@ Index: libmpc/mpcchap/mpcchap.c char * tmp_buff; - if (0 == (cd = cf_parse(chap_file, &format))) { -+ if (0 == (cd = cue_parse_file(chap_file))) { ++ in_file = fopen(chap_file, "r"); ++ if (NULL == in_file) { fprintf(stderr, "%s: input file error\n", chap_file); return !MPC_STATUS_OK; } + ++ if (0 == (cd = cue_parse_file(in_file))) { ++ fclose(in_file); ++ fprintf(stderr, "%s: input file error\n", chap_file); ++ return !MPC_STATUS_OK; ++ } ++ fclose(in_file); ++ + chap_pos = (demux->chap_pos >> 3) + si->header_position; + end_pos = mpc_demux_pos(demux) >> 3; + chap_size = end_pos - chap_pos; diff --git a/musepack/PKGBUILD b/musepack/PKGBUILD index ef89dcabd8..7a123f2a5b 100644 --- a/musepack/PKGBUILD +++ b/musepack/PKGBUILD @@ -6,7 +6,7 @@ pkgbase=musepack pkgname=('musepack-tools' 'libmpcdec') _revision=475 pkgver=0.1+r$_revision -pkgrel=5 +pkgrel=6 epoch=1 pkgdesc='MusePack commandline utilities and decoder library' arch=(x86_64 powerpc64le powerpc64 powerpc riscv64) @@ -20,15 +20,17 @@ source=("https://files.musepack.net/source/musepack_src_r$_revision.tar.gz" '04_link-order.patch' '05_visibility.patch' '1001_missing_extern_kw.patch' - 'add_subdir-objects.patch') + 'add_subdir-objects.patch' + 'musepack-tools-495-incompatible-pointers.patch') b2sums=('601762738199bd67278d934d927c35d6ba1d286be9fd57ebf2e89dca271f563e85cf023f8860bfd30b501039bba5fd68eaf2d65dce65d0dcf5ce6d75a6e692aa' '940b71df9e4d582a0da733174048168aacd1f80c69d9cf2f163545cf1cdd83165eca5c18597c4f271c52f55b8085f69079a9df4e3fee3875d2853062afbbb1cd' '65a3b3c2fd6e265d88075834f8d479fc40c0bf11d674c4d2ffce12b595460327bcf33931ae7c16a5b78273de10e962144764e950f2cb0ae74ece01b892526456' - '9c10c33bcf991facf959d41a4f24a32162631db26d2aa33e969e7d1884094cef39103bcd9d0422af2d29ca1f5963cd8d91137ffcdbb31f36c221a2c4d74715ef' + '7a97fc91ba99f21449cdffcb6137aa253f71ec71e3a80b70df69b7876a28751b834df0e1a5a502d44fec13a5138ae4f425951b28242086821f3992da338c9ecf' 'a5c96c5a80d76cbbb25a5647c6d754d82203936949f2720772776267f6752811f2c511e8df59a58570bba9ffe3b9482b0294eeed4364e2a4602a15d142759add' 'e96e7928ad05bc0713ede3fbc8b5053cf1a456067faa481fa17f5156d61f6c1052b47ff27fe0e7e70d4e40fd62fae9cd0c57c5e28b149501a37dc323031a8bb5' '5204b8b9596ef5663f7678cdd533a227df9722f3d66f66ea9fe151a76de6070e3801f51be657588cb14839239d6d2ed8c5a5f7e80a61f79a1eda22b72026658a' - '366e7a668d9c47be947b3ae785db7e0804d3d3537aa5df4c833386e8b04fc98f3c4dc1f32a0beaabf7721deae853ad6bce9acd7bae1ad1621dae1bb908a200c2') + '366e7a668d9c47be947b3ae785db7e0804d3d3537aa5df4c833386e8b04fc98f3c4dc1f32a0beaabf7721deae853ad6bce9acd7bae1ad1621dae1bb908a200c2' + '72c0ed7dd049ada3169c59be3904cbb0c3a4d8ce68fa4f875a5951e8639a0d39c04b17eca3425da5a149d627f0a248aee9bb4dfae60ff4e98381b6a4c483f294') prepare() { cd musepack_src_r$_revision @@ -39,6 +41,7 @@ prepare() { patch -Np1 -i ../05_visibility.patch patch -Np1 -i ../1001_missing_extern_kw.patch patch -Np1 -i ../add_subdir-objects.patch + patch -Np1 -i ../musepack-tools-495-incompatible-pointers.patch autoreconf -fi } @@ -46,7 +49,7 @@ prepare() { build() { cd musepack_src_r$_revision ./configure --prefix=/usr --enable-mpcchap - make CFLAGS="$CFLAGS -Wno-error=incompatible-pointer-types" + make } package_libmpcdec() { diff --git a/musepack/musepack-tools-495-incompatible-pointers.patch b/musepack/musepack-tools-495-incompatible-pointers.patch new file mode 100644 index 0000000000..d23b002839 --- /dev/null +++ b/musepack/musepack-tools-495-incompatible-pointers.patch @@ -0,0 +1,30 @@ +--- musepack-tools-495/libmpcpsy/ans.c ++++ musepack-tools-495-fixed/libmpcpsy/ans.c +@@ -287,12 +287,12 @@ + // for L or M, respectively + memset ( m->FIR_L, 0, sizeof m->FIR_L ); // reset FIR + memset ( m->NS_Order_L, 0, sizeof m->NS_Order_L ); // reset Flags +- FindOptimalANS ( MaxBand, MSflag, ANSspec_L, ANSspec_M, m->NS_Order_L, m->SNR_comp_L, m->FIR_L, smr.L, smr.M, m->SCF_Index_L, Transient ); ++ FindOptimalANS ( MaxBand, MSflag, ANSspec_L, ANSspec_M, m->NS_Order_L, m->SNR_comp_L, m->FIR_L, smr.L, smr.M, (const void*)m->SCF_Index_L, Transient ); + + // for R or S, respectively + memset ( m->FIR_R, 0, sizeof m->FIR_R ); // reset FIR + memset ( m->NS_Order_R, 0, sizeof m->NS_Order_R ); // reset Flags +- FindOptimalANS ( MaxBand, MSflag, ANSspec_R, ANSspec_S, m->NS_Order_R, m->SNR_comp_R, m->FIR_R, smr.R, smr.S, m->SCF_Index_R, Transient ); ++ FindOptimalANS ( MaxBand, MSflag, ANSspec_R, ANSspec_S, m->NS_Order_R, m->SNR_comp_R, m->FIR_R, smr.R, smr.S, (const void*)m->SCF_Index_R, Transient ); + + return; + } +--- musepack-tools-495/mpcenc/mpcenc.h ++++ musepack-tools-495-fixed/mpcenc/mpcenc.h +@@ -241,8 +241,8 @@ + + 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 ); +