aboutsummaryrefslogtreecommitdiffstats
path: root/audio
diff options
context:
space:
mode:
authorsobomax <sobomax@FreeBSD.org>2006-08-12 04:55:54 +0800
committersobomax <sobomax@FreeBSD.org>2006-08-12 04:55:54 +0800
commita502cd121bc15e386da28b26a9b6d86aec351776 (patch)
tree5f342d14dfc67740e15a6f4f94137cca907269d6 /audio
parent2e33cbf05c8aa85ed9f6e8e9b866b8517596d932 (diff)
downloadfreebsd-ports-gnome-a502cd121bc15e386da28b26a9b6d86aec351776.tar.gz
freebsd-ports-gnome-a502cd121bc15e386da28b26a9b6d86aec351776.tar.zst
freebsd-ports-gnome-a502cd121bc15e386da28b26a9b6d86aec351776.zip
Update to 1.0.12.
Diffstat (limited to 'audio')
-rw-r--r--audio/gsm/Makefile7
-rw-r--r--audio/gsm/distinfo6
-rw-r--r--audio/gsm/files/patch-aa55
-rw-r--r--audio/gsm/files/patch-ab651
4 files changed, 273 insertions, 446 deletions
diff --git a/audio/gsm/Makefile b/audio/gsm/Makefile
index 73b6b819ca15..6a3e522565e8 100644
--- a/audio/gsm/Makefile
+++ b/audio/gsm/Makefile
@@ -6,9 +6,10 @@
#
PORTNAME= gsm
-PORTVERSION= 1.0.10
+PORTVERSION= 1.0.12
CATEGORIES= audio
-MASTER_SITES= ftp://ftp.dvo.ru/pub/Gentoo/distfiles/ \
+MASTER_SITES= http://kbs.cs.tu-berlin.de/~jutta/gsm/ \
+ ftp://ftp.dvo.ru/pub/Gentoo/distfiles/ \
ftp://ftp.gbnet.net/pub/digium/telephony/gnophone/ \
ftp://216.27.40.102/pub/gnophone/ \
ftp://ftp.gin.cz/pub/mirrors/ftp.digium.com/pub/telephony/gnophone/ \
@@ -17,7 +18,7 @@ MASTER_SITES= ftp://ftp.dvo.ru/pub/Gentoo/distfiles/ \
MAINTAINER= ports@FreeBSD.org
COMMENT= Audio converter and library for converting u-law to gsm encoding
-WRKSRC= ${WRKDIR}/gsm-1.0-pl10
+WRKSRC= ${WRKDIR}/gsm-1.0-pl12
INSTALLS_SHLIB= yes
diff --git a/audio/gsm/distinfo b/audio/gsm/distinfo
index 9dd9c549175d..6a39f3dea100 100644
--- a/audio/gsm/distinfo
+++ b/audio/gsm/distinfo
@@ -1,3 +1,3 @@
-MD5 (gsm-1.0.10.tar.gz) = 4b148480f82e96d274248e13880ec873
-SHA256 (gsm-1.0.10.tar.gz) = ddab700db455e13bcf9bc0592b320e61c6a7c692fb3cef7881b14b2df1a39069
-SIZE (gsm-1.0.10.tar.gz) = 65928
+MD5 (gsm-1.0.12.tar.gz) = 8909828c601e82e842e6a0ceade60a4e
+SHA256 (gsm-1.0.12.tar.gz) = dde4e62e4ce35af29a15d26beca2fc0f98c0219553927453425cda01f16e4de4
+SIZE (gsm-1.0.12.tar.gz) = 62156
diff --git a/audio/gsm/files/patch-aa b/audio/gsm/files/patch-aa
index 1d48f4bd09cd..196e0bba47ad 100644
--- a/audio/gsm/files/patch-aa
+++ b/audio/gsm/files/patch-aa
@@ -1,42 +1,13 @@
-*** inc/config.h.orig Tue Jul 2 18:32:27 1996
---- inc/config.h Fri Oct 25 17:18:49 1996
-***************
-*** 13,21 ****
- /*efine HAS_SYSV_SIGNAL 1 /* sigs not blocked/reset? */
-
- #define HAS_STDLIB_H 1 /* /usr/include/stdlib.h */
-! /*efine HAS_LIMITS_H 1 /* /usr/include/limits.h */
- #define HAS_FCNTL_H 1 /* /usr/include/fcntl.h */
-! /*efine HAS_ERRNO_DECL 1 /* errno.h declares errno */
-
- #define HAS_FSTAT 1 /* fstat syscall */
- #define HAS_FCHMOD 1 /* fchmod syscall */
---- 13,21 ----
- /*efine HAS_SYSV_SIGNAL 1 /* sigs not blocked/reset? */
-
- #define HAS_STDLIB_H 1 /* /usr/include/stdlib.h */
-! #define HAS_LIMITS_H 1 /* /usr/include/limits.h */
- #define HAS_FCNTL_H 1 /* /usr/include/fcntl.h */
-! #define HAS_ERRNO_DECL 1 /* errno.h declares errno */
-
- #define HAS_FSTAT 1 /* fstat syscall */
- #define HAS_FCHMOD 1 /* fchmod syscall */
-***************
-*** 28,35 ****
- /*efine HAS_STRINGS_H 1 /* /usr/include/strings.h */
-
- #define HAS_UNISTD_H 1 /* /usr/include/unistd.h */
-! #define HAS_UTIME 1 /* POSIX utime(path, times) */
-! /*efine HAS_UTIMES 1 /* use utimes() syscall instead */
- #define HAS_UTIME_H 1 /* UTIME header file */
- /*efine HAS_UTIMBUF 1 /* struct utimbuf */
- /*efine HAS_UTIMEUSEC 1 /* microseconds in utimbuf? */
---- 28,35 ----
- /*efine HAS_STRINGS_H 1 /* /usr/include/strings.h */
-
- #define HAS_UNISTD_H 1 /* /usr/include/unistd.h */
-! /*efine HAS_UTIME 1 /* POSIX utime(path, times) */
-! #define HAS_UTIMES 1 /* use utimes() syscall instead */
- #define HAS_UTIME_H 1 /* UTIME header file */
- /*efine HAS_UTIMBUF 1 /* struct utimbuf */
- /*efine HAS_UTIMEUSEC 1 /* microseconds in utimbuf? */
+--- inc/config.h.orig Wed Apr 26 12:14:26 2006
++++ inc/config.h Fri Aug 11 13:44:23 2006
+@@ -28,8 +28,8 @@
+ /*efine HAS_STRINGS_H 1 /* /usr/include/strings.h */
+
+ #define HAS_UNISTD_H 1 /* /usr/include/unistd.h */
+-#define HAS_UTIME 1 /* POSIX utime(path, times) */
+-/*efine HAS_UTIMES 1 /* use utimes() syscall instead */
++/*efine HAS_UTIME 1 /* POSIX utime(path, times) */
++#define HAS_UTIMES 1 /* use utimes() syscall instead */
+ #define HAS_UTIME_H 1 /* UTIME header file */
+ #define HAS_UTIMBUF 1 /* struct utimbuf */
+ /*efine HAS_UTIMEUSEC 1 /* microseconds in utimbuf? */
diff --git a/audio/gsm/files/patch-ab b/audio/gsm/files/patch-ab
index beff87387778..eba4d10a6672 100644
--- a/audio/gsm/files/patch-ab
+++ b/audio/gsm/files/patch-ab
@@ -1,398 +1,253 @@
-*** Makefile.orig Tue Jul 2 23:36:06 1996
---- Makefile Tue Dec 7 00:06:25 1999
-***************
-*** 7,17 ****
- SASR = -DSASR
- ######### Define SASR if >> is a signed arithmetic shift (-1 >> 1 == -1)
-
-! MULHACK = -DUSE_FLOAT_MUL
- ######### Define this if your host multiplies floats faster than integers,
- ######### e.g. on a SPARCstation.
-
-! FAST = -DFAST
- ######### Define together with USE_FLOAT_MUL to enable the GSM library's
- ######### approximation option for incorrect, but good-enough results.
-
---- 7,19 ----
- SASR = -DSASR
- ######### Define SASR if >> is a signed arithmetic shift (-1 >> 1 == -1)
-
-! #MULHACK = -DUSE_FLOAT_MUL # Don't define it for FreeBSD, cause SIGFPE
-! MULHACK =
- ######### Define this if your host multiplies floats faster than integers,
- ######### e.g. on a SPARCstation.
-
-! #FAST = -DFAST
-! FAST =
- ######### Define together with USE_FLOAT_MUL to enable the GSM library's
- ######### approximation option for incorrect, but good-enough results.
-
-***************
-*** 43,50 ****
- # CC = /usr/lang/acc
- # CCFLAGS = -c -O
-
-! CC = gcc -ansi -pedantic
-! CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1
-
- LD = $(CC)
-
---- 45,52 ----
- # CC = /usr/lang/acc
- # CCFLAGS = -c -O
-
-! #CC = gcc -ansi -pedantic
-! CCFLAGS = -c -DNeedFunctionPrototypes=1
-
- LD = $(CC)
-
-***************
-*** 59,69 ****
---- 61,73 ----
- ######### Includes needed by $(CC)
-
- # LDINC = -L/usr/gnu/lib/gcc-2.1/gcc-lib/sparc-sun-sunos4.1.2/2.1
-+ LDINC = -L$(LIB)
- ######### Library paths needed by $(LD)
-
- # LDLIB = -lgcc
- ######### Additional libraries needed by $(LD)
-
-+ #PREFIX= /usr/local
-
- # Where do you want to install libraries, binaries, a header file
- # and the manual pages?
-***************
-*** 71,77 ****
- # Leave INSTALL_ROOT empty (or just don't execute "make install") to
- # not install gsm and toast outside of this directory.
-
-! INSTALL_ROOT =
-
- # Where do you want to install the gsm library, header file, and manpages?
- #
---- 75,81 ----
- # Leave INSTALL_ROOT empty (or just don't execute "make install") to
- # not install gsm and toast outside of this directory.
-
-! INSTALL_ROOT = $(PREFIX)
-
- # Where do you want to install the gsm library, header file, and manpages?
- #
-***************
-*** 80,86 ****
-
- 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
-
-
---- 84,90 ----
-
- GSM_INSTALL_ROOT = $(INSTALL_ROOT)
- GSM_INSTALL_LIB = $(GSM_INSTALL_ROOT)/lib
-! GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/include
- GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3
-
-
-***************
-*** 106,111 ****
---- 110,116 ----
- COMPRESSFLAGS =
- # RANLIB = true
- RANLIB = ranlib
-+ RM = rm -f
-
- #
- # You shouldn't have to configure below this line if you're porting.
-***************
-*** 129,146 ****
- # DEBUG = -DNDEBUG
- ######### Remove -DNDEBUG to enable assertions.
-
-! CFLAGS = $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
- $(WAV49) $(CCINC) -I$(INC)
- ######### It's $(CC) $(CFLAGS)
-
- LFLAGS = $(LDFLAGS) $(LDINC)
- ######### It's $(LD) $(LFLAGS)
-
-
- # Targets
-
-! LIBGSM = $(LIB)/libgsm.a
-!
- TOAST = $(BIN)/toast
- UNTOAST = $(BIN)/untoast
- TCAT = $(BIN)/tcat
---- 134,156 ----
- # DEBUG = -DNDEBUG
- ######### Remove -DNDEBUG to enable assertions.
-
-! CFLAGS += $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
- $(WAV49) $(CCINC) -I$(INC)
- ######### It's $(CC) $(CFLAGS)
-
- LFLAGS = $(LDFLAGS) $(LDINC)
- ######### It's $(LD) $(LFLAGS)
-
-+ .SUFFIXES: .c .so .o
-
- # Targets
-
-! LIBGSM = libgsm.a
-! .if ${PORTOBJFORMAT} == elf
-! SOLIBGSM = libgsm.so.1
-! .else
-! SOLIBGSM = libgsm.so.1.1
-! .endif
- TOAST = $(BIN)/toast
- UNTOAST = $(BIN)/untoast
- TCAT = $(BIN)/tcat
-***************
-*** 257,269 ****
- # Install targets
-
- GSM_INSTALL_TARGETS = \
-! $(GSM_INSTALL_LIB)/libgsm.a \
- $(GSM_INSTALL_INC)/gsm.h \
- $(GSM_INSTALL_MAN)/gsm.3 \
- $(GSM_INSTALL_MAN)/gsm_explode.3 \
- $(GSM_INSTALL_MAN)/gsm_option.3 \
- $(GSM_INSTALL_MAN)/gsm_print.3
-
- TOAST_INSTALL_TARGETS = \
- $(TOAST_INSTALL_BIN)/toast \
- $(TOAST_INSTALL_BIN)/tcat \
---- 267,281 ----
- # Install targets
-
- GSM_INSTALL_TARGETS = \
-! $(GSM_INSTALL_LIB)/$(LIBGSM) \
-! $(GSM_INSTALL_LIB)/$(SOLIBGSM) \
- $(GSM_INSTALL_INC)/gsm.h \
- $(GSM_INSTALL_MAN)/gsm.3 \
- $(GSM_INSTALL_MAN)/gsm_explode.3 \
- $(GSM_INSTALL_MAN)/gsm_option.3 \
- $(GSM_INSTALL_MAN)/gsm_print.3
-
-+
- TOAST_INSTALL_TARGETS = \
- $(TOAST_INSTALL_BIN)/toast \
- $(TOAST_INSTALL_BIN)/tcat \
-***************
-*** 277,285 ****
- $(CC) $(CFLAGS) $?
- @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1
-
- # Target rules
-
-! all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
- @-echo $(ROOT): Done.
-
- tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
---- 289,300 ----
- $(CC) $(CFLAGS) $?
- @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1
-
-+ .c.so:
-+ ${CC} -fpic -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
-+
- # Target rules
-
-! all: $(LIB)/$(LIBGSM) $(LIB)/$(SOLIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
- @-echo $(ROOT): Done.
-
- tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
-***************
-*** 299,322 ****
-
- # The basic API: libgsm
-
-! $(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)
-
- $(UNTOAST): $(BIN) $(TOAST)
-! -rm $(RMFLAGS) $(UNTOAST)
-! $(LN) $(TOAST) $(UNTOAST)
-
- $(TCAT): $(BIN) $(TOAST)
-! -rm $(RMFLAGS) $(TCAT)
-! $(LN) $(TOAST) $(TCAT)
-
-
- # The local bin and lib directories
---- 314,345 ----
-
- # The basic API: libgsm
-
-! $(LIB)/$(SOLIBGSM): $(LIB) $(GSM_OBJECTS:S/o$/so/g)
-! .if ${PORTOBJFORMAT} == elf
-! $(CC) -o $@ -shared -Wl,-soname,$(SOLIBGSM) $(GSM_OBJECTS:S/o$/so/g)
-! .else
-! ld -Bshareable -o $@ $(GSM_OBJECTS:S/o$/so/g)
-! .endif
-! (cd $(LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`)
-!
-! $(LIB)/$(LIBGSM): $(LIB) $(GSM_OBJECTS)
-! $(RM) $(RMFLAGS) $(LIBGSM)
-! $(AR) $(ARFLAGS) $(LIB)/$(LIBGSM) $(GSM_OBJECTS)
-! $(RANLIB) $(LIB)/$(LIBGSM)
-
-
- # Toast, Untoast and Tcat -- the compress-like frontends to gsm.
-
-! $(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIB)/$(LIBGSM)
-! $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) -lgsm $(LDLIB)
-
- $(UNTOAST): $(BIN) $(TOAST)
-! $(RM) $(RMFLAGS) $(UNTOAST)
-! $(LN) -sf $(TOAST) $(UNTOAST)
-
- $(TCAT): $(BIN) $(TOAST)
-! $(RM) $(RMFLAGS) $(TCAT)
-! $(LN) -sf $(TOAST) $(TCAT)
-
-
- # The local bin and lib directories
-***************
-*** 342,403 ****
-
- gsmuninstall:
- -if [ x"$(GSM_INSTALL_ROOT)" != x ] ; then \
-! rm $(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \
- fi
-
- toastuninstall:
- -if [ x"$(TOAST_INSTALL_ROOT)" != x ] ; then \
-! rm $(RMFLAGS) $(TOAST_INSTALL_TARGETS); \
- fi
-
- $(TOAST_INSTALL_BIN)/toast: $(TOAST)
-! -rm $@
-! cp $(TOAST) $@
-! chmod 755 $@
-
- $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast
-! -rm $@
-! ln $? $@
-
- $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast
-! -rm $@
-! ln $? $@
-
- $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
- $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
- $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
- $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
- $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
- $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-!
-! $(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM)
-! -rm $@
-! cp $? $@
-! chmod 444 $@
-
-
- # Distribution
-
---- 365,431 ----
-
- gsmuninstall:
- -if [ x"$(GSM_INSTALL_ROOT)" != x ] ; then \
-! $(RM)$(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \
- fi
-
- toastuninstall:
- -if [ x"$(TOAST_INSTALL_ROOT)" != x ] ; then \
-! $(RM)$(RMFLAGS) $(TOAST_INSTALL_TARGETS); \
- fi
-
- $(TOAST_INSTALL_BIN)/toast: $(TOAST)
-! $(RM) $@
-! ${BSD_INSTALL_PROGRAM} $(TOAST) $@
-
- $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast
-! $(RM) $@
-! $(LN) -sf toast $@
-
- $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast
-! $(RM) $@
-! $(LN) -sf toast $@
-
- $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1
-! $(RM) $@
-! ${BSD_INSTALL_MAN} $? $@
-!
-! $(TOAST_INSTALL_MAN)/untoast.1: $(MAN)/toast.1
-! $(RM) $@
-! $(LN) -sf toast.1 $@
-!
-! $(TOAST_INSTALL_MAN)/tcat.1: $(MAN)/toast.1
-! $(RM) $@
-! $(LN) -sf toast.1 $@
-
- $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3
-! $(RM) $@
-! ${BSD_INSTALL_MAN} $? $@
-
- $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3
-! $(RM) $@
-! ${BSD_INSTALL_MAN} $? $@
-
- $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3
-! $(RM) $@
-! ${BSD_INSTALL_MAN} $? $@
-
- $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3
-! $(RM) $@
-! ${BSD_INSTALL_MAN} $? $@
-
- $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h
-! $(RM) $@
-! ${BSD_INSTALL_DATA} $? $@
-
-+ $(GSM_INSTALL_LIB)/$(LIBGSM): $(LIB)/$(LIBGSM)
-+ $(RM) $@
-+ ${BSD_INSTALL_DATA} $? $@
-+ $(RANLIB) $@
-+
-+ $(GSM_INSTALL_LIB)/$(SOLIBGSM): $(LIB)/$(SOLIBGSM)
-+ $(RM) $@
-+ ${BSD_INSTALL_DATA} $? $@
-+ (cd $(GSM_INSTALL_LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`)
-
- # Distribution
-
+--- Makefile.orig Wed Apr 26 12:14:26 2006
++++ Makefile Fri Aug 11 13:46:15 2006
+@@ -43,8 +43,8 @@
+ # CC = /usr/lang/acc
+ # CCFLAGS = -c -O
+
+-CC = gcc -ansi -pedantic
+-CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1
++#CC = gcc -ansi -pedantic
++CCFLAGS = -c -DNeedFunctionPrototypes=1
+
+ LD = $(CC)
+
+@@ -59,11 +59,13 @@
+ ######### Includes needed by $(CC)
+
+ # LDINC = -L/usr/gnu/lib/gcc-2.1/gcc-lib/sparc-sun-sunos4.1.2/2.1
++LDINC = -L$(LIB)
+ ######### Library paths needed by $(LD)
+
+ # LDLIB = -lgcc
+ ######### Additional libraries needed by $(LD)
+
++#PREFIX= /usr/local
+
+ # Where do you want to install libraries, binaries, a header file
+ # and the manual pages?
+@@ -71,7 +73,7 @@
+ # Leave INSTALL_ROOT empty (or just don't execute "make install") to
+ # not install gsm and toast outside of this directory.
+
+-INSTALL_ROOT =
++INSTALL_ROOT = $(PREFIX)
+
+ # Where do you want to install the gsm library, header file, and manpages?
+ #
+@@ -80,7 +82,7 @@
+
+ GSM_INSTALL_ROOT = $(INSTALL_ROOT)
+ GSM_INSTALL_LIB = $(GSM_INSTALL_ROOT)/lib
+-GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/inc
++GSM_INSTALL_INC = $(GSM_INSTALL_ROOT)/include
+ GSM_INSTALL_MAN = $(GSM_INSTALL_ROOT)/man/man3
+
+
+@@ -106,6 +108,7 @@
+ COMPRESSFLAGS =
+ # RANLIB = true
+ RANLIB = ranlib
++RM = rm -f
+
+ #
+ # You shouldn't have to configure below this line if you're porting.
+@@ -129,18 +132,23 @@
+ # DEBUG = -DNDEBUG
+ ######### Remove -DNDEBUG to enable assertions.
+
+-CFLAGS = $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
++CFLAGS += $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
+ $(WAV49) $(CCINC) -I$(INC)
+ ######### It's $(CC) $(CFLAGS)
+
+ LFLAGS = $(LDFLAGS) $(LDINC)
+ ######### It's $(LD) $(LFLAGS)
+
++.SUFFIXES: .c .so .o
+
+ # Targets
+
+-LIBGSM = $(LIB)/libgsm.a
+-
++LIBGSM = libgsm.a
++.if ${PORTOBJFORMAT} == elf
++SOLIBGSM = libgsm.so.1
++.else
++SOLIBGSM = libgsm.so.1.1
++.endif
+ TOAST = $(BIN)/toast
+ UNTOAST = $(BIN)/untoast
+ TCAT = $(BIN)/tcat
+@@ -257,13 +265,15 @@
+ # Install targets
+
+ GSM_INSTALL_TARGETS = \
+- $(GSM_INSTALL_LIB)/libgsm.a \
++ $(GSM_INSTALL_LIB)/$(LIBGSM) \
++ $(GSM_INSTALL_LIB)/$(SOLIBGSM) \
+ $(GSM_INSTALL_INC)/gsm.h \
+ $(GSM_INSTALL_MAN)/gsm.3 \
+ $(GSM_INSTALL_MAN)/gsm_explode.3 \
+ $(GSM_INSTALL_MAN)/gsm_option.3 \
+ $(GSM_INSTALL_MAN)/gsm_print.3
+
++
+ TOAST_INSTALL_TARGETS = \
+ $(TOAST_INSTALL_BIN)/toast \
+ $(TOAST_INSTALL_BIN)/tcat \
+@@ -277,9 +287,12 @@
+ $(CC) $(CFLAGS) $?
+ @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1
+
++.c.so:
++ ${CC} -fpic -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET}
++
+ # Target rules
+
+-all: $(LIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
++all: $(LIB)/$(LIBGSM) $(LIB)/$(SOLIBGSM) $(TOAST) $(TCAT) $(UNTOAST)
+ @-echo $(ROOT): Done.
+
+ tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result
+@@ -299,24 +312,32 @@
+
+ # The basic API: libgsm
+
+-$(LIBGSM): $(LIB) $(GSM_OBJECTS)
+- -rm $(RMFLAGS) $(LIBGSM)
+- $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS)
+- $(RANLIB) $(LIBGSM)
++$(LIB)/$(SOLIBGSM): $(LIB) $(GSM_OBJECTS:S/o$/so/g)
++.if ${PORTOBJFORMAT} == elf
++ $(CC) -o $@ -shared -Wl,-soname,$(SOLIBGSM) $(GSM_OBJECTS:S/o$/so/g)
++.else
++ ld -Bshareable -o $@ $(GSM_OBJECTS:S/o$/so/g)
++.endif
++ (cd $(LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`)
++
++$(LIB)/$(LIBGSM): $(LIB) $(GSM_OBJECTS)
++ $(RM) $(RMFLAGS) $(LIBGSM)
++ $(AR) $(ARFLAGS) $(LIB)/$(LIBGSM) $(GSM_OBJECTS)
++ $(RANLIB) $(LIB)/$(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) $(LIB)/$(LIBGSM)
++ $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) -lgsm $(LDLIB)
+
+ $(UNTOAST): $(BIN) $(TOAST)
+- -rm $(RMFLAGS) $(UNTOAST)
+- $(LN) $(TOAST) $(UNTOAST)
++ $(RM) $(RMFLAGS) $(UNTOAST)
++ $(LN) -sf $(TOAST) $(UNTOAST)
+
+ $(TCAT): $(BIN) $(TOAST)
+- -rm $(RMFLAGS) $(TCAT)
+- $(LN) $(TOAST) $(TCAT)
++ $(RM) $(RMFLAGS) $(TCAT)
++ $(LN) -sf $(TOAST) $(TCAT)
+
+
+ # The local bin and lib directories
+@@ -342,62 +363,67 @@
+
+ gsmuninstall:
+ -if [ x"$(GSM_INSTALL_ROOT)" != x ] ; then \
+- rm $(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \
++ $(RM)$(RMFLAGS) $(GSM_INSTALL_TARGETS) ; \
+ fi
+
+ toastuninstall:
+ -if [ x"$(TOAST_INSTALL_ROOT)" != x ] ; then \
+- rm $(RMFLAGS) $(TOAST_INSTALL_TARGETS); \
++ $(RM)$(RMFLAGS) $(TOAST_INSTALL_TARGETS); \
+ fi
+
+ $(TOAST_INSTALL_BIN)/toast: $(TOAST)
+- -rm $@
+- cp $(TOAST) $@
+- chmod 755 $@
++ $(RM) $@
++ ${BSD_INSTALL_PROGRAM} $(TOAST) $@
+
+ $(TOAST_INSTALL_BIN)/untoast: $(TOAST_INSTALL_BIN)/toast
+- -rm $@
+- ln $? $@
++ $(RM) $@
++ $(LN) -sf toast $@
+
+ $(TOAST_INSTALL_BIN)/tcat: $(TOAST_INSTALL_BIN)/toast
+- -rm $@
+- ln $? $@
++ $(RM) $@
++ $(LN) -sf toast $@
+
+ $(TOAST_INSTALL_MAN)/toast.1: $(MAN)/toast.1
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_MAN} $? $@
++
++$(TOAST_INSTALL_MAN)/untoast.1: $(MAN)/toast.1
++ $(RM) $@
++ $(LN) -sf toast.1 $@
++
++$(TOAST_INSTALL_MAN)/tcat.1: $(MAN)/toast.1
++ $(RM) $@
++ $(LN) -sf toast.1 $@
+
+ $(GSM_INSTALL_MAN)/gsm.3: $(MAN)/gsm.3
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_MAN} $? $@
+
+ $(GSM_INSTALL_MAN)/gsm_option.3: $(MAN)/gsm_option.3
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_MAN} $? $@
+
+ $(GSM_INSTALL_MAN)/gsm_explode.3: $(MAN)/gsm_explode.3
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_MAN} $? $@
+
+ $(GSM_INSTALL_MAN)/gsm_print.3: $(MAN)/gsm_print.3
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_MAN} $? $@
+
+ $(GSM_INSTALL_INC)/gsm.h: $(INC)/gsm.h
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++ $(RM) $@
++ ${BSD_INSTALL_DATA} $? $@
+
+-$(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM)
+- -rm $@
+- cp $? $@
+- chmod 444 $@
++$(GSM_INSTALL_LIB)/$(LIBGSM): $(LIB)/$(LIBGSM)
++ $(RM) $@
++ ${BSD_INSTALL_DATA} $? $@
++ $(RANLIB) $@
+
++$(GSM_INSTALL_LIB)/$(SOLIBGSM): $(LIB)/$(SOLIBGSM)
++ $(RM) $@
++ ${BSD_INSTALL_DATA} $? $@
++ (cd $(GSM_INSTALL_LIB); $(LN) -sf $(SOLIBGSM) `echo $(SOLIBGSM) | sed 's/\.so.*$$/.so/'`)
+
+ # Distribution
+