diff options
Diffstat (limited to 'libraries/gsm/patches/gsm-1.0.13-shared.patch')
-rw-r--r-- | libraries/gsm/patches/gsm-1.0.13-shared.patch | 151 |
1 files changed, 151 insertions, 0 deletions
diff --git a/libraries/gsm/patches/gsm-1.0.13-shared.patch b/libraries/gsm/patches/gsm-1.0.13-shared.patch new file mode 100644 index 0000000000000..fc99e2c30437f --- /dev/null +++ b/libraries/gsm/patches/gsm-1.0.13-shared.patch @@ -0,0 +1,151 @@ +diff -ur gsm-1.0-pl13.orig/Makefile gsm-1.0-pl13/Makefile +--- gsm-1.0-pl13.orig/Makefile 2006-04-26 22:14:26.000000000 +0300 ++++ gsm-1.0-pl13/Makefile 2009-09-08 14:50:02.000000000 +0300 +@@ -96,7 +96,7 @@ + # Other tools + + SHELL = /bin/sh +-LN = ln ++LN = ln -s + BASENAME = basename + AR = ar + ARFLAGS = cr +@@ -140,6 +140,7 @@ + # Targets + + LIBGSM = $(LIB)/libgsm.a ++LIBGSMSO= $(LIB)/libgsm.so + + TOAST = $(BIN)/toast + UNTOAST = $(BIN)/untoast +@@ -203,24 +204,43 @@ + + # Object files + +-GSM_OBJECTS = $(SRC)/add.o \ +- $(SRC)/code.o \ +- $(SRC)/debug.o \ +- $(SRC)/decode.o \ +- $(SRC)/long_term.o \ +- $(SRC)/lpc.o \ +- $(SRC)/preprocess.o \ +- $(SRC)/rpe.o \ +- $(SRC)/gsm_destroy.o \ +- $(SRC)/gsm_decode.o \ +- $(SRC)/gsm_encode.o \ +- $(SRC)/gsm_explode.o \ +- $(SRC)/gsm_implode.o \ +- $(SRC)/gsm_create.o \ +- $(SRC)/gsm_print.o \ +- $(SRC)/gsm_option.o \ +- $(SRC)/short_term.o \ +- $(SRC)/table.o ++STATIC_GSM_OBJECTS = $(SRC)/add.o \ ++ $(SRC)/code.o \ ++ $(SRC)/debug.o \ ++ $(SRC)/decode.o \ ++ $(SRC)/long_term.o \ ++ $(SRC)/lpc.o \ ++ $(SRC)/preprocess.o \ ++ $(SRC)/rpe.o \ ++ $(SRC)/gsm_destroy.o \ ++ $(SRC)/gsm_decode.o \ ++ $(SRC)/gsm_encode.o \ ++ $(SRC)/gsm_explode.o \ ++ $(SRC)/gsm_implode.o \ ++ $(SRC)/gsm_create.o \ ++ $(SRC)/gsm_print.o \ ++ $(SRC)/gsm_option.o \ ++ $(SRC)/short_term.o \ ++ $(SRC)/table.o ++ ++SHARED_GSM_OBJECTS = $(SRC)/add.lo \ ++ $(SRC)/code.lo \ ++ $(SRC)/debug.lo \ ++ $(SRC)/decode.lo \ ++ $(SRC)/long_term.lo \ ++ $(SRC)/lpc.lo \ ++ $(SRC)/preprocess.lo \ ++ $(SRC)/rpe.lo \ ++ $(SRC)/gsm_destroy.lo \ ++ $(SRC)/gsm_decode.lo \ ++ $(SRC)/gsm_encode.lo \ ++ $(SRC)/gsm_explode.lo \ ++ $(SRC)/gsm_implode.lo \ ++ $(SRC)/gsm_create.lo \ ++ $(SRC)/gsm_print.lo \ ++ $(SRC)/gsm_option.lo \ ++ $(SRC)/short_term.lo \ ++ $(SRC)/table.lo + + TOAST_OBJECTS = $(SRC)/toast.o \ + $(SRC)/toast_lin.o \ +@@ -228,7 +248,7 @@ + $(SRC)/toast_alaw.o \ + $(SRC)/toast_audio.o + +-OBJECTS = $(GSM_OBJECTS) $(TOAST_OBJECTS) ++OBJECTS = $(STATIC_GSM_OBJECTS) $(SHARED_GSM_OBJECTS) $(TOAST_OBJECTS) + + # Manuals + +@@ -277,9 +297,12 @@ + $(CC) $(CFLAGS) $? + @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1 + ++%.lo: %.c ++ $(CC) $(CFLAGS) -fPIC -c $< -o $@ ++ + # Target rules + +-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST) ++all: $(LIBGSM) $(LIBGSMSO) $(TOAST) $(TCAT) $(UNTOAST) + @-echo $(ROOT): Done. + + tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result +@@ -299,24 +322,29 @@ + + # The basic API: libgsm + +-$(LIBGSM): $(LIB) $(GSM_OBJECTS) ++$(LIBGSMSO): $(LIB) $(SHARED_GSM_OBJECTS) ++ $(LD) $(LFLAGS) -o $@.1.0.13 -shared -Xlinker -soname -Xlinker libgsm.so.1 $(SHARED_GSM_OBJECTS) -lc ++ ln -fs libgsm.so.1.0.13 lib/libgsm.so.1 ++ ln -fs libgsm.so.1.0.13 lib/libgsm.so ++ ++$(LIBGSM): $(LIB) $(STATIC_GSM_OBJECTS) + -rm $(RMFLAGS) $(LIBGSM) +- $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS) ++ $(AR) $(ARFLAGS) $(LIBGSM) $(STATIC_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) ++ $(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 +@@ -426,7 +454,9 @@ + + clean: semi-clean + -rm $(RMFLAGS) $(LIBGSM) $(ADDTST)/add \ +- $(TOAST) $(TCAT) $(UNTOAST) \ ++ $(LIBGSMSO) $(LIB)/libgsm.so.1.0.13 \ ++ $(LIB)libgsm.so.1 \ ++ $(TOAST) $(TCAT) $(UNTOAST) \ + $(ROOT)/gsm-1.0.tar.Z + + |