diff --git a/audio/gsm/Makefile b/audio/gsm/Makefile new file mode 100644 index 00000000000..356f7e57395 --- /dev/null +++ b/audio/gsm/Makefile @@ -0,0 +1,22 @@ +# OpenBSD makefile for: gsm +# Version required: gsm-1.0.10 +# Date created: December 4, 1997 +# Whom: Angelos D. Keromytis +# +# $OpenBSD: Makefile,v 1.1.1.1 1997/12/05 02:07:59 angelos Exp $ +# + +DISTNAME= gsm-1.0.10 +CATEGORIES= audio +MASTER_SITES= ftp://ftp.cs.tu-berlin.de/pub/local/kbs/tubmik/gsm/ + +MAINTAINER= angelos@openbsd.org + +WRKSRC= ${WRKDIR}/gsm-1.0-pl10 +MAN1= toast.1 +MAN3= gsm.3 gsm_explode.3 gsm_option.3 gsm_print.3 + +post-install: + ${LDCONFIG} -m ${PREFIX}/lib + +.include diff --git a/audio/gsm/files/md5 b/audio/gsm/files/md5 new file mode 100644 index 00000000000..74f583166ed --- /dev/null +++ b/audio/gsm/files/md5 @@ -0,0 +1 @@ +MD5 (gsm-1.0.10.tar.gz) = 4b148480f82e96d274248e13880ec873 diff --git a/audio/gsm/patches/patch-aa b/audio/gsm/patches/patch-aa new file mode 100644 index 00000000000..1d48f4bd09c --- /dev/null +++ b/audio/gsm/patches/patch-aa @@ -0,0 +1,42 @@ +*** 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? */ diff --git a/audio/gsm/patches/patch-ab b/audio/gsm/patches/patch-ab new file mode 100644 index 00000000000..f2f9d78e4d4 --- /dev/null +++ b/audio/gsm/patches/patch-ab @@ -0,0 +1,206 @@ +*** Makefile.orig Tue Jul 2 18:36:06 1996 +--- Makefile Fri Oct 25 17:15:42 1996 +*************** +*** 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 + + +*************** +*** 129,141 **** + # 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 + +--- 133,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) + ++ .SUFFIXES: .c .so .o + + # Targets + +*************** +*** 258,263 **** +--- 263,269 ---- + + GSM_INSTALL_TARGETS = \ + $(GSM_INSTALL_LIB)/libgsm.a \ ++ $(GSM_INSTALL_LIB)/libgsm.so.1.0.10 \ + $(GSM_INSTALL_INC)/gsm.h \ + $(GSM_INSTALL_MAN)/gsm.3 \ + $(GSM_INSTALL_MAN)/gsm_explode.3 \ +*************** +*** 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 +--- 283,294 ---- + $(CC) $(CFLAGS) $? + @-mv `$(BASENAME) $@` $@ > /dev/null 2>&1 + ++ .c.so: ++ ${CC} -fpic -DPIC ${CFLAGS} -c ${.IMPSRC} -o ${.TARGET} ++ + # Target rules + +! all: $(LIBGSM) $(LIB)/libgsm.so.1.0.10 $(TOAST) $(TCAT) $(UNTOAST) + @-echo $(ROOT): Done. + + tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result +*************** +*** 299,304 **** +--- 308,316 ---- + + # The basic API: libgsm + ++ $(LIB)/libgsm.so.1.0.10: $(LIB) $(GSM_OBJECTS:S/o$/so/g) ++ ld -Bshareable -o $@ $(GSM_OBJECTS:S/o$/so/g) ++ + $(LIBGSM): $(LIB) $(GSM_OBJECTS) + -rm $(RMFLAGS) $(LIBGSM) + $(AR) $(ARFLAGS) $(LIBGSM) $(GSM_OBJECTS) +*************** +*** 308,314 **** + # 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) +--- 320,326 ---- + # Toast, Untoast and Tcat -- the compress-like frontends to gsm. + + $(TOAST): $(BIN) $(TOAST_OBJECTS) $(LIBGSM) +! $(LD) $(LFLAGS) -o $(TOAST) $(TOAST_OBJECTS) -lgsm $(LDLIB) + + $(UNTOAST): $(BIN) $(TOAST) + -rm $(RMFLAGS) $(UNTOAST) +*************** +*** 394,399 **** +--- 406,417 ---- + chmod 444 $@ + + $(GSM_INSTALL_LIB)/libgsm.a: $(LIBGSM) ++ -rm $@ ++ cp $? $@ ++ chmod 444 $@ ++ ranlib $@ ++ ++ $(GSM_INSTALL_LIB)/libgsm.so.1.0.10: $(LIB)/libgsm.so.1.0.10 + -rm $@ + cp $? $@ + chmod 444 $@ diff --git a/audio/gsm/pkg/COMMENT b/audio/gsm/pkg/COMMENT new file mode 100644 index 00000000000..7f0b66c8f52 --- /dev/null +++ b/audio/gsm/pkg/COMMENT @@ -0,0 +1 @@ +Audio converter and library for converting u-law to gsm encoding. diff --git a/audio/gsm/pkg/DESCR b/audio/gsm/pkg/DESCR new file mode 100644 index 00000000000..1436934430a --- /dev/null +++ b/audio/gsm/pkg/DESCR @@ -0,0 +1,2 @@ +gsm is a conversion package and library for converting u-law audio to +gsm encoding (which is much more efficient) and back again. diff --git a/audio/gsm/pkg/PLIST b/audio/gsm/pkg/PLIST new file mode 100644 index 00000000000..d76b762d41d --- /dev/null +++ b/audio/gsm/pkg/PLIST @@ -0,0 +1,15 @@ +bin/toast +@exec ln -fs %f %B/untoast +@exec ln -fs %f %B/untoastt +man/man1/toast.1 +@exec ln -fs %f %B/untoast.1 +@exec ln -fs %f %B/tcat.1 +man/man3/gsm.3 +man/man3/gsm_explode.3 +man/man3/gsm_option.3 +man/man3/gsm_print.3 +lib/libgsm.so.1.0.10 +@exec /sbin/ldconfig -m %B +lib/libgsm.a +@exec ranlib %D/%F +include/gsm.h