summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/gsm/files/gsm-1.0.22-makefile.patch')
-rw-r--r--media-sound/gsm/files/gsm-1.0.22-makefile.patch188
1 files changed, 188 insertions, 0 deletions
diff --git a/media-sound/gsm/files/gsm-1.0.22-makefile.patch b/media-sound/gsm/files/gsm-1.0.22-makefile.patch
new file mode 100644
index 000000000000..9ef9e5a246c6
--- /dev/null
+++ b/media-sound/gsm/files/gsm-1.0.22-makefile.patch
@@ -0,0 +1,188 @@
+https://src.fedoraproject.org/rpms/gsm/blob/rawhide/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 -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 = 19
++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
+
+