xref: /OK3568_Linux_fs/buildroot/package/libgsm/0001-misc-fixes-from-archlinux.patch (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1From e8f43832d401ad1e071e6860b2bf4a1e796d4356 Mon Sep 17 00:00:00 2001
2From: Adam Duskett <aduskett@gmail.com>
3Date: Fri, 28 Jul 2017 08:18:22 -0400
4Subject: [PATCH] Misc fixes from Archlinux
5
6Patch from:
7    https://git.archlinux.org/svntogit/packages.git/plain/gsm/trunk/gsm.patch
8
9Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
10Signed-off-by: Adam Duskett <aduskett@gmail.com>
11Refresh for 1.0.17
12---
13 Makefile | 84 ++++++++++++++++++++++++++++++++--------------------------------
14 1 file changed, 42 insertions(+), 42 deletions(-)
15
16diff --git a/Makefile b/Makefile
17index d5c0c90..ef61bd5 100644
18--- a/Makefile
19+++ b/Makefile
20@@ -44,7 +44,7 @@ WAV49	= -DWAV49
21 # CCFLAGS 	= -c -O
22
23 CC		= gcc -ansi -pedantic
24-CCFLAGS 	= -c -O2 -DNeedFunctionPrototypes=1 -Wall -Wno-comment
25+CCFLAGS 	= -c -O2 -fPIC -DNeedFunctionPrototypes=1 -Wall -Wno-comment
26
27 LD 		= $(CC)
28
29@@ -96,11 +96,11 @@ TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/man/man1
30 #  Other tools
31
32 SHELL		= /bin/sh
33-LN		= ln
34+LN		= ln -s -f
35 BASENAME 	= basename
36 AR		= ar
37 ARFLAGS		= cr
38-RMFLAGS		=
39+RMFLAGS		= -f
40 FIND		= find
41 COMPRESS 	= compress
42 COMPRESSFLAGS 	=
43@@ -139,7 +139,7 @@ LFLAGS	= $(LDFLAGS) $(LDINC)
44
45 # Targets
46
47-LIBGSM	= $(LIB)/libgsm.a
48+LIBGSMSO = $(LIB)/libgsm.so
49
50 TOAST	= $(BIN)/toast
51 UNTOAST	= $(BIN)/untoast
52@@ -257,7 +257,7 @@ STUFF = 	ChangeLog			\
53 # Install targets
54
55 GSM_INSTALL_TARGETS =	\
56-		$(GSM_INSTALL_LIB)/libgsm.a		\
57+		$(GSM_INSTALL_LIB)/libgsm.so		\
58 		$(GSM_INSTALL_INC)/gsm.h		\
59 		$(GSM_INSTALL_MAN)/gsm.3		\
60 		$(GSM_INSTALL_MAN)/gsm_explode.3	\
61@@ -279,7 +279,7 @@ TOAST_INSTALL_TARGETS =	\
62
63 # Target rules
64
65-all:		$(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
66+all:		$(LIBGSMSO) $(TOAST) $(TCAT) $(UNTOAST)
67 		@-echo $(ROOT): Done.
68
69 tst:		$(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
70@@ -299,24 +299,23 @@ install:	toastinstall gsminstall
71
72 # The basic API: libgsm
73
74-$(LIBGSM):	$(LIB) $(GSM_OBJECTS)
75-		-rm $(RMFLAGS) $(LIBGSM)
76-		$(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS)
77-		$(RANLIB) $(LIBGSM)
78-
79+$(LIBGSMSO): $(LIB) $(GSM_OBJECTS)
80+	$(LD) -shared -Wl,-soname,libgsm.so.1 -o $@.1.0.13 $(GSM_OBJECTS)
81+	$(LN) libgsm.so.1.0.13 $(LIBGSMSO).1
82+	$(LN) libgsm.so.1.0.13 $(LIBGSMSO)
83
84 # Toast, Untoast and Tcat -- the compress-like frontends to gsm.
85
86-$(TOAST):	$(BIN) $(TOAST_OBJECTS) $(LIBGSM)
87-		$(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSM) $(LDLIB)
88+$(TOAST):	$(BIN) $(TOAST_OBJECTS) $(LIBGSMSO)
89+		$(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) $(LIBGSMSO) $(LDLIB)
90
91 $(UNTOAST):	$(BIN) $(TOAST)
92 		-rm $(RMFLAGS) $(UNTOAST)
93-		$(LN) $(TOAST) $(UNTOAST)
94+		$(LN) toast $(UNTOAST)
95
96 $(TCAT):	$(BIN) $(TOAST)
97 		-rm $(RMFLAGS) $(TCAT)
98-		$(LN) $(TOAST) $(TCAT)
99+		$(LN) toast $(TCAT)
100
101
102 # The local bin and lib directories
103@@ -351,53 +350,54 @@ toastuninstall:
104 		fi
105
106 $(TOAST_INSTALL_BIN)/toast:	$(TOAST)
107-		-rm $@
108+		-rm $(RMFLAGS) $@
109 		cp $(TOAST) $@
110 		chmod 755 $@
111
112 $(TOAST_INSTALL_BIN)/untoast:	$(TOAST_INSTALL_BIN)/toast
113-		-rm $@
114-		ln $? $@
115+		-rm $(RMFLAGS) $@
116+		$(LN) toast $@
117
118 $(TOAST_INSTALL_BIN)/tcat:	$(TOAST_INSTALL_BIN)/toast
119-		-rm $@
120-		ln $? $@
121+		-rm $(RMFLAGS) $@
122+		$(LN) toast $@
123
124 $(TOAST_INSTALL_MAN)/toast.1:	$(MAN)/toast.1
125-		-rm $@
126+		-rm $(RMFLAGS) $@
127 		cp $? $@
128 		chmod 444 $@
129
130 $(GSM_INSTALL_MAN)/gsm.3:	$(MAN)/gsm.3
131-		-rm $@
132+		-rm $(RMFLAGS) $@
133 		cp $? $@
134 		chmod 444 $@
135
136 $(GSM_INSTALL_MAN)/gsm_option.3:	$(MAN)/gsm_option.3
137-		-rm $@
138+		-rm $(RMFLAGS) $@
139 		cp $? $@
140 		chmod 444 $@
141
142 $(GSM_INSTALL_MAN)/gsm_explode.3:	$(MAN)/gsm_explode.3
143-		-rm $@
144+		-rm $(RMFLAGS) $@
145 		cp $? $@
146 		chmod 444 $@
147
148 $(GSM_INSTALL_MAN)/gsm_print.3:	$(MAN)/gsm_print.3
149-		-rm $@
150+		-rm $(RMFLAGS) $@
151 		cp $? $@
152 		chmod 444 $@
153
154 $(GSM_INSTALL_INC)/gsm.h:	$(INC)/gsm.h
155-		-rm $@
156-		cp $? $@
157-		chmod 444 $@
158-
159-$(GSM_INSTALL_LIB)/libgsm.a:	$(LIBGSM)
160-		-rm $@
161+		-rm $(RMFLAGS) $@
162 		cp $? $@
163 		chmod 444 $@
164
165+$(GSM_INSTALL_LIB)/libgsm.so:	$(LIBGSMSO)
166+		-rm $(RMFLAGS) $@ $@.1 $@.1.0.13
167+		cp $?.1.0.13 $@.1.0.13
168+		chmod 755 $@.1.0.13
169+		$(LN) libgsm.so.1.0.13 $@
170+		$(LN) libgsm.so.1.0.13 $@.1
171
172 # Distribution
173
174@@ -425,7 +425,7 @@ semi-clean:
175 			-print | xargs rm $(RMFLAGS)
176
177 clean:	semi-clean
178-		-rm $(RMFLAGS) $(LIBGSM) $(ADDTST)/add		\
179+		-rm $(RMFLAGS) $(LIBGSMSO)* $(ADDTST)/add		\
180 			$(TOAST) $(TCAT) $(UNTOAST)	\
181 			$(ROOT)/gsm-1.0.tar.Z
182
183@@ -473,22 +473,22 @@ $(ADDTST)/add:	$(ADDTST)/add_test.o
184 $(TST)/test-result:	$(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/run
185 			( cd $(TST); ./run )
186
187-$(TST)/lin2txt:		$(TST)/lin2txt.o $(LIBGSM)
188+$(TST)/lin2txt:		$(TST)/lin2txt.o $(LIBGSMSO)
189 			$(LD) $(LFLAGS) -o $(TST)/lin2txt \
190-				$(TST)/lin2txt.o $(LIBGSM) $(LDLIB)
191+				$(TST)/lin2txt.o $(LIBGSMSO) $(LDLIB)
192
193-$(TST)/lin2cod:		$(TST)/lin2cod.o $(LIBGSM)
194+$(TST)/lin2cod:		$(TST)/lin2cod.o $(LIBGSMSO)
195 			$(LD) $(LFLAGS) -o $(TST)/lin2cod \
196-				$(TST)/lin2cod.o $(LIBGSM) $(LDLIB)
197+				$(TST)/lin2cod.o $(LIBGSMSO) $(LDLIB)
198
199-$(TST)/gsm2cod:		$(TST)/gsm2cod.o $(LIBGSM)
200+$(TST)/gsm2cod:		$(TST)/gsm2cod.o $(LIBGSMSO)
201 			$(LD) $(LFLAGS) -o $(TST)/gsm2cod \
202-				$(TST)/gsm2cod.o $(LIBGSM) $(LDLIB)
203+				$(TST)/gsm2cod.o $(LIBGSMSO) $(LDLIB)
204
205-$(TST)/cod2txt:		$(TST)/cod2txt.o $(LIBGSM)
206+$(TST)/cod2txt:		$(TST)/cod2txt.o $(LIBGSMSO)
207 			$(LD) $(LFLAGS) -o $(TST)/cod2txt \
208-				$(TST)/cod2txt.o $(LIBGSM) $(LDLIB)
209+				$(TST)/cod2txt.o $(LIBGSMSO) $(LDLIB)
210
211-$(TST)/cod2lin:		$(TST)/cod2lin.o $(LIBGSM)
212+$(TST)/cod2lin:		$(TST)/cod2lin.o $(LIBGSMSO)
213 			$(LD) $(LFLAGS) -o $(TST)/cod2lin \
214-				$(TST)/cod2lin.o $(LIBGSM) $(LDLIB)
215+				$(TST)/cod2lin.o $(LIBGSMSO) $(LDLIB)
216--
2172.13.3
218
219