commit: 43aca57fd186fc43432825b2c44fb63a83fafb86 Author: Nicolas PARLANT <nicolas.parlant <AT> parhuet <DOT> fr> AuthorDate: Mon Oct 13 12:51:28 2025 +0000 Commit: Miroslav Šulc <fordfrog <AT> gentoo <DOT> org> CommitDate: Thu Oct 16 13:38:50 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=43aca57f
media-sound/gsm: add 1.0.23 bugfix release update HOMEPAGE with website-project / redirect tracker-debian use array Closes: https://bugs.gentoo.org/880383 Signed-off-by: Nicolas PARLANT <nicolas.parlant <AT> parhuet.fr> Part-of: https://github.com/gentoo/gentoo/pull/44161 Closes: https://github.com/gentoo/gentoo/pull/44161 Signed-off-by: Miroslav Šulc <fordfrog <AT> gentoo.org> media-sound/gsm/Manifest | 1 + media-sound/gsm/files/gsm-1.0.23-makefile.patch | 186 ++++++++++++++++++++++++ media-sound/gsm/gsm-1.0.23.ebuild | 62 ++++++++ 3 files changed, 249 insertions(+) diff --git a/media-sound/gsm/Manifest b/media-sound/gsm/Manifest index 8f0f4b727115..3cf8f4c23111 100644 --- a/media-sound/gsm/Manifest +++ b/media-sound/gsm/Manifest @@ -1,2 +1,3 @@ DIST gsm-1.0.22.tar.gz 66583 BLAKE2B 4c654997e2dd91bc5cee406bd664426f86479bfa8624abb0d7ec164eaebe83c3f534b5ee16952b302500630a6f53df26bbb2287f7a329c8878ae48e61fb770ab SHA512 f4284f096ed4d606ddece5c1b28edb63feacc26a0b664f1350c040dbf50113d27bedfd9896bf1620cb4fc3a6c8f6a5244955a6c625ded833dcee607c63c97dd2 +DIST gsm-1.0.23.tar.gz 66158 BLAKE2B e6a790f44f10074103f86f33b25ec7e956ad3fa447a6681a2a51d0a56cdae22f05ac35761fcf77b2269349c57ee184e838d8e0a91674f28a672797775a654f58 SHA512 96a477f7f4a2ad8319d97c4010e3e2ddb453fa6eda44dac83a62f060a3e6790cc0298d3f402eab52e1a7c0f5c001ab793baefd1fc876ff6432efeb506981bdd8 DIST libgsm_1.0.22-1.debian.tar.xz 10516 BLAKE2B 8839082ec446c3eb9dde5d1348806ac5015557257b0c1d319945c36080277b40b25f4903013c5242115467a73e425731661ad4882cf35bba51a90e4f44f284ae SHA512 21929f790d7c821e03113baf3e0690e8cb4b8b3c9015ca6fa05593dba9c4fb000ad41546826bc623c69b19689e81092afe0f7e266b22f9db35e8c735516c9de4 diff --git a/media-sound/gsm/files/gsm-1.0.23-makefile.patch b/media-sound/gsm/files/gsm-1.0.23-makefile.patch new file mode 100644 index 000000000000..77f1d4567bef --- /dev/null +++ b/media-sound/gsm/files/gsm-1.0.23-makefile.patch @@ -0,0 +1,186 @@ +https://src.fedoraproject.org/rpms/gsm/raw/f43/f/gsm-makefile.patch +--- a/Makefile ++++ b/Makefile +@@ -44,13 +44,17 @@ WAV49 = -DWAV49 + # CCFLAGS = -c -O + + CC = gcc -ansi -pedantic +-CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1 -Wall -Wno-comment ++CCFLAGS = -c $(RPM_OPT_FLAGS) -DNeedFunctionPrototypes=1 -Wall -Wno-comment -D_XOPEN_SOURCE=700 -D_REENTRANT -fPIC + + LD = $(CC) + + # LD = gcc + # LDFLAGS = + ++SO_MAJOR = 1 ++SO_MINOR = 0 ++SO_PATCH = 23 ++SO_VER = $(SO_MAJOR).$(SO_MINOR).$(SO_PATCH) + + # If your compiler needs additional flags/libraries, regardless of + # the source compiled, configure them here. +@@ -81,7 +85,7 @@ INSTALL_ROOT = + GSM_INSTALL_ROOT = $(INSTALL_ROOT) + GSM_INSTALL_LIB = $(GSM_INSTALL_ROOT)/lib + GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/inc +-GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3 ++GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/share/man/man3 + + + # Where do you want to install the toast binaries and their manpage? +@@ -91,12 +95,12 @@ GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3 + + TOAST_INSTALL_ROOT = $(INSTALL_ROOT) + TOAST_INSTALL_BIN = $(TOAST_INSTALL_ROOT)/bin +-TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/man/man1 ++TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/share/man/man1 + + # Other tools + + SHELL = /bin/sh +-LN = ln ++LN = ln -s + BASENAME = basename + AR = ar + ARFLAGS = cr +@@ -140,6 +144,7 @@ LFLAGS = $(LDFLAGS) $(LDINC) + # Targets + + LIBGSM = $(LIB)/libgsm.a ++LIBGSMSO = $(LIB)/libgsm.so + + TOAST = $(BIN)/toast + UNTOAST = $(BIN)/untoast +@@ -257,7 +262,9 @@ STUFF = ChangeLog \ + # Install targets + + GSM_INSTALL_TARGETS = \ +- $(GSM_INSTALL_LIB)/libgsm.a \ ++ $(GSM_INSTALL_LIB)/libgsm.so.$(SO_VER) \ ++ $(GSM_INSTALL_LIB)/libgsm.so.$(SO_MAJOR)\ ++ $(GSM_INSTALL_LIB)/libgsm.so \ + $(GSM_INSTALL_INC)/gsm.h \ + $(GSM_INSTALL_MAN)/gsm.3 \ + $(GSM_INSTALL_MAN)/gsm_explode.3 \ +@@ -279,7 +286,7 @@ TOAST_INSTALL_TARGETS = \ + + # Target rules + +-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST) ++all: $(LIBGSMSO) $(TOAST) $(TCAT) $(UNTOAST) + @-echo $(ROOT): Done. + + tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result +@@ -299,24 +306,32 @@ install: toastinstall gsminstall + + # The basic API: libgsm + ++$(LIBGSMSO).$(SO_VER): $(LIB) $(GSM_OBJECTS) ++ $(LD) $(LFLAGS) -o $@ -shared -Xlinker -soname -Xlinker libgsm.so.$(SO_MAJOR) $(GSM_OBJECTS) -lc ++ ++$(LIBGSMSO).$(SO_MAJOR): $(LIBGSMSO).$(SO_VER) ++ ln -fs libgsm.so.$(SO_VER) lib/libgsm.so.$(SO_MAJOR) ++ ++$(LIBGSMSO): $(LIBGSMSO).$(SO_VER) ++ ln -fs libgsm.so.$(SO_VER) lib/libgsm.so ++ + $(LIBGSM): $(LIB) $(GSM_OBJECTS) + -rm $(RMFLAGS) $(LIBGSM) + $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS) + $(RANLIB) $(LIBGSM) + +- + # Toast, Untoast and Tcat -- the compress-like frontends to gsm. + +-$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSM) +- $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB) ++$(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSMSO) ++ $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSMSO) $(LDLIB) + + $(UNTOAST): $(BIN) $(TOAST) + -rm $(RMFLAGS) $(UNTOAST) +- $(LN) $(TOAST) $(UNTOAST) ++ $(LN) toast $(UNTOAST) + + $(TCAT): $(BIN) $(TOAST) + -rm $(RMFLAGS) $(TCAT) +- $(LN) $(TOAST) $(TCAT) ++ $(LN) toast $(TCAT) + + + # The local bin and lib directories +@@ -352,52 +367,55 @@ toastuninstall: + + $(TOAST_INSTALL_BIN)/toast: $(TOAST) + -rm $(RMFLAGS) $@ +- cp $(TOAST) $@ +- chmod 755 $@ ++ install -pm755 $(TOAST) $@ + + $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast + -rm $(RMFLAGS) $@ +- $(LN) $? $@ ++ $(LN) -rs $? $@ + + $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast + -rm $(RMFLAGS) $@ +- $(LN) $? $@ ++ $(LN) -rs $? $@ + + $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1 + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3 + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3 + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3 + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3 + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + + $(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM) + -rm $(RMFLAGS) $@ +- cp $? $@ +- chmod 444 $@ ++ install -pm644 $? $@ + ++$(GSM_INSTALL_LIB)/libgsm.so.$(SO_VER): $(LIBGSMSO).$(SO_VER) ++ -rm $(RMFLAGS) $@ ++ install -pm755 $? $@ ++ ++$(GSM_INSTALL_LIB)/libgsm.so.$(SO_MAJOR): $(LIBGSMSO).$(SO_MAJOR) ++ -rm $(RMFLAGS) $@ ++ ln -s libgsm.so.$(SO_VER) $@ ++ ++$(GSM_INSTALL_LIB)/libgsm.so: $(LIBGSMSO) ++ -rm $(RMFLAGS) $@ ++ ln -s libgsm.so.$(SO_VER) $@ + + # Distribution + diff --git a/media-sound/gsm/gsm-1.0.23.ebuild b/media-sound/gsm/gsm-1.0.23.ebuild new file mode 100644 index 000000000000..9e2d01b26fd2 --- /dev/null +++ b/media-sound/gsm/gsm-1.0.23.ebuild @@ -0,0 +1,62 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit flag-o-matic multilib-minimal toolchain-funcs + +DESCRIPTION="Lossy speech compression library and tool" +HOMEPAGE="https://www.quut.com/gsm/ https://tracker.debian.org/pkg/libgsm" +SRC_URI="https://www.quut.com/gsm/${P}.tar.gz" +S="${WORKDIR}/${PN}-$(ver_cut 1-2)-pl$(ver_cut 3)" + +LICENSE="gsm" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~loong ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +PATCHES=( + "${FILESDIR}"/${PN}-1.0.23-makefile.patch +) + +DOCS=( ChangeLog MACHINES MANIFEST README ) + +src_prepare() { + default + + multilib_copy_sources +} + +src_configure() { + # From upstream Makefile. Define this if your host multiplies + # floats faster than integers, e.g. on a SPARCstation. + use sparc && append-flags -DUSE_FLOAT_MUL -DFAST +} + +multilib_src_compile() { + local myemakeargs=( + CC="$(tc-getCC)" + LD="$(tc-getCC)" + AR="$(tc-getAR)" + RANLIB="$(tc-getRANLIB)" + ) + emake -j1 CCFLAGS="${CFLAGS} -c -DNeedFunctionPrototypes=1 -fPIC" "${myemakeargs[@]}" +} + +multilib_src_install() { + dodir /usr/bin /usr/$(get_libdir) /usr/include/gsm /usr/share/man/man{1,3} + + local myemakeargs=( + CC="$(tc-getCC)" + LD="$(tc-getCC)" + AR="$(tc-getAR)" + RANLIB="$(tc-getRANLIB)" + INSTALL_ROOT="${ED}"/usr + GSM_INSTALL_LIB="${ED}"/usr/$(get_libdir) + GSM_INSTALL_INC="${ED}"/usr/include/gsm + GSM_INSTALL_MAN="${ED}"/usr/share/man/man3 + TOAST_INSTALL_MAN="${ED}"/usr/share/man/man1 + ) + emake -j1 "${myemakeargs[@]}" install + + dosym ../gsm/gsm.h /usr/include/libgsm/gsm.h +}
