- initial import into devel
This commit is contained in:
parent
d34a71537b
commit
7f1e4e8884
@ -0,0 +1 @@
|
||||
gsm-1.0.12.tar.gz
|
15
gsm-64bit.patch
Normal file
15
gsm-64bit.patch
Normal file
@ -0,0 +1,15 @@
|
||||
--- gsm-1.0-pl12/inc/private.h.64bit 2006-04-26 21:17:01.000000000 +0200
|
||||
+++ gsm-1.0-pl12/inc/private.h 2007-05-11 00:25:23.000000000 +0200
|
||||
@@ -10,10 +10,10 @@
|
||||
#define PRIVATE_H
|
||||
|
||||
typedef short word; /* 16 bit signed int */
|
||||
-typedef long longword; /* 32 bit signed int */
|
||||
+typedef int longword; /* 32 bit signed int */
|
||||
|
||||
typedef unsigned short uword; /* unsigned word */
|
||||
-typedef unsigned long ulongword; /* unsigned longword */
|
||||
+typedef unsigned int ulongword; /* unsigned longword */
|
||||
|
||||
struct gsm_state {
|
||||
|
115
gsm-makefile.patch
Normal file
115
gsm-makefile.patch
Normal file
@ -0,0 +1,115 @@
|
||||
diff -ur gsm-1.0-pl10/Makefile gsm-1.0-pl10.patched/Makefile
|
||||
--- gsm-1.0-pl10/Makefile 1996-07-02 16:36:06.000000000 +0200
|
||||
+++ gsm-1.0-pl10.patched/Makefile 2003-07-05 23:27:23.000000000 +0200
|
||||
@@ -30,6 +30,10 @@
|
||||
######### define this, and read about the GSM_OPT_WAV49 option in the
|
||||
######### manual page on gsm_option(3).
|
||||
|
||||
+PG =
|
||||
+#PG = -g -pg
|
||||
+######### Profiling flags. If you don't know what that means, leave it blank
|
||||
+
|
||||
# Choose a compiler. The code works both with ANSI and K&R-C.
|
||||
# Use -DNeedFunctionPrototypes to compile with, -UNeedFunctionPrototypes to
|
||||
# compile without, function prototypes in the header files.
|
||||
@@ -44,7 +48,7 @@
|
||||
# CCFLAGS = -c -O
|
||||
|
||||
CC = gcc -ansi -pedantic
|
||||
-CCFLAGS = -c -O2 -DNeedFunctionPrototypes=1
|
||||
+CCFLAGS = -c $(RPM_OPT_FLAGS) -D_REENTRANT -DNeedFunctionPrototypes=1
|
||||
|
||||
LD = $(CC)
|
||||
|
||||
@@ -81,7 +85,7 @@
|
||||
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,16 +95,16 @@
|
||||
|
||||
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
|
||||
-RMFLAGS =
|
||||
+RMFLAGS = -f
|
||||
FIND = find
|
||||
COMPRESS = compress
|
||||
COMPRESSFLAGS =
|
||||
@@ -129,17 +133,18 @@
|
||||
# DEBUG = -DNDEBUG
|
||||
######### Remove -DNDEBUG to enable assertions.
|
||||
|
||||
-CFLAGS = $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
|
||||
+CFLAGS = $(PG) $(CCFLAGS) $(SASR) $(DEBUG) $(MULHACK) $(FAST) $(LTP_CUT) \
|
||||
$(WAV49) $(CCINC) -I$(INC)
|
||||
######### It's $(CC) $(CFLAGS)
|
||||
|
||||
-LFLAGS = $(LDFLAGS) $(LDINC)
|
||||
+LFLAGS = $(PG) $(LDFLAGS) $(LDINC)
|
||||
######### It's $(LD) $(LFLAGS)
|
||||
|
||||
|
||||
# Targets
|
||||
|
||||
LIBGSM = $(LIB)/libgsm.a
|
||||
+LIBGSMSO = $(LIB)/libgsm.so
|
||||
|
||||
TOAST = $(BIN)/toast
|
||||
UNTOAST = $(BIN)/untoast
|
||||
@@ -279,7 +284,7 @@
|
||||
|
||||
# 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 +304,28 @@
|
||||
|
||||
# The basic API: libgsm
|
||||
|
||||
+$(LIBGSMSO): $(LIB) $(GSM_OBJECTS)
|
||||
+ $(LD) -o $@.1.0.12 -shared -Xlinker -soname -Xlinker libgsm.so.1 $(GSM_OBJECTS) -lc
|
||||
+ ln -fs libgsm.so.1.0.12 lib/libgsm.so.1
|
||||
+ ln -fs libgsm.so.1.0.12 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)
|
||||
+ $(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
|
43
gsm-warnings.patch
Normal file
43
gsm-warnings.patch
Normal file
@ -0,0 +1,43 @@
|
||||
--- gsm-1.0-pl12/src/code.c.warn 2006-04-26 21:16:50.000000000 +0200
|
||||
+++ gsm-1.0-pl12/src/code.c 2007-05-11 00:26:52.000000000 +0200
|
||||
@@ -9,8 +9,8 @@
|
||||
#include "config.h"
|
||||
|
||||
|
||||
-#ifdef HAS_STDLIB_H
|
||||
-#include <stdlib.h>
|
||||
+#ifdef HAS_STRING_H
|
||||
+#include <string.h>
|
||||
#else
|
||||
# include "proto.h"
|
||||
extern char * memcpy P((char *, char *, int));
|
||||
--- gsm-1.0-pl12/src/toast.c.warn 2006-04-26 21:14:26.000000000 +0200
|
||||
+++ gsm-1.0-pl12/src/toast.c 2007-05-11 00:26:52.000000000 +0200
|
||||
@@ -6,6 +6,8 @@
|
||||
|
||||
/* $Header: /home/fedora/jkeating/pkgs/rpms/gsm/devel/gsm-warnings.patch,v 1.1 2007/05/11 23:18:21 rathann Exp $ */
|
||||
|
||||
+#include <stdio.h>
|
||||
+#include <getopt.h>
|
||||
#include "toast.h"
|
||||
|
||||
/* toast -- lossy sound compression using the gsm library.
|
||||
--- gsm-1.0-pl12/add-test/add_test.c.warn 2006-04-26 21:14:25.000000000 +0200
|
||||
+++ gsm-1.0-pl12/add-test/add_test.c 2007-05-11 00:28:03.000000000 +0200
|
||||
@@ -9,6 +9,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
+#include <unistd.h>
|
||||
|
||||
#include "gsm.h"
|
||||
|
||||
@@ -29,7 +30,7 @@
|
||||
longword M_gsm_L_mult P((word op1, word op2));
|
||||
longword M_gsm_L_add P((longword op1, longword op2));
|
||||
|
||||
-help()
|
||||
+void help(void)
|
||||
{
|
||||
puts( " add a b sub a b mult a b div a b" );
|
||||
puts( "L_add A B L_sub A B L_mult A B mult_r a b" );
|
183
gsm.spec
Normal file
183
gsm.spec
Normal file
@ -0,0 +1,183 @@
|
||||
Name: gsm
|
||||
Version: 1.0.12
|
||||
Release: 2%{?dist}
|
||||
Summary: Shared libraries for GSM speech compressor
|
||||
|
||||
Group: System Environment/Libraries
|
||||
License: MIT
|
||||
URL: http://kbs.cs.tu-berlin.de/~jutta/toast.html
|
||||
Source: http://kbs.cs.tu-berlin.de/~jutta/gsm/%{name}-%{version}.tar.gz
|
||||
Patch0: %{name}-makefile.patch
|
||||
Patch1: %{name}-warnings.patch
|
||||
Patch2: %{name}-64bit.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
|
||||
%define srcver 1.0-pl12
|
||||
|
||||
%description
|
||||
Contains runtime shared libraries for libgsm, an implementation of
|
||||
the European GSM 06.10 provisional standard for full-rate speech
|
||||
transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse
|
||||
excitation/long term prediction) coding at 13 kbit/s.
|
||||
|
||||
GSM 06.10 compresses frames of 162 13-bit samples (8 kHz sampling
|
||||
rate, i.e. a frame rate of 50 Hz) into 260 bits; for compatibility
|
||||
with typical UNIX applications, our implementation turns frames of 160
|
||||
16-bit linear samples into 33-byte frames (1650 Bytes/s).
|
||||
The quality of the algorithm is good enough for reliable speaker
|
||||
recognition; even music often survives transcoding in recognizable
|
||||
form (given the bandwidth limitations of 8 kHz sampling rate).
|
||||
|
||||
The interfaces offered are a front end modelled after compress(1), and
|
||||
a library API. Compression and decompression run faster than realtime
|
||||
on most SPARCstations. The implementation has been verified against the
|
||||
ETSI standard test patterns.
|
||||
|
||||
%package tools
|
||||
Summary: GSM speech compressor tools
|
||||
Group: Applications/Multimedia
|
||||
|
||||
%description tools
|
||||
Contains command line utilities for libgsm, an implementation of
|
||||
the European GSM 06.10 provisional standard for full-rate speech
|
||||
transcoding, prI-ETS 300 036, which uses RPE/LTP (residual pulse
|
||||
excitation/long term prediction) coding at 13 kbit/s.
|
||||
|
||||
%package devel
|
||||
Summary: Header files and development libraries for libgsm
|
||||
Group: Development/Libraries
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description devel
|
||||
Contains header files and development libraries for libgsm, an
|
||||
implementation of the European GSM 06.10 provisional standard for
|
||||
full-rate speech transcoding, prI-ETS 300 036, which uses RPE/LTP
|
||||
(residual pulse excitation/long term prediction) coding at 13 kbit/s.
|
||||
|
||||
%prep
|
||||
%setup -n gsm-%{srcver} -q
|
||||
%patch0 -p1 -b .mk
|
||||
%patch1 -p1 -b .warn
|
||||
%patch2 -p1 -b .64bit
|
||||
|
||||
%build
|
||||
export RPM_OPT_FLAGS="$RPM_OPT_FLAGS -fPIC";
|
||||
make %{?_smp_mflags} all
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT%{_bindir}
|
||||
mkdir -p $RPM_BUILD_ROOT%{_includedir}/gsm
|
||||
mkdir -p $RPM_BUILD_ROOT%{_libdir}
|
||||
mkdir -p $RPM_BUILD_ROOT%{_mandir}/{man1,man3}
|
||||
|
||||
make install \
|
||||
INSTALL_ROOT=$RPM_BUILD_ROOT%{_prefix} \
|
||||
GSM_INSTALL_INC=$RPM_BUILD_ROOT%{_includedir}/gsm \
|
||||
GSM_INSTALL_LIB=$RPM_BUILD_ROOT%{_libdir}
|
||||
|
||||
cp -prv $RPM_BUILD_DIR/gsm-%{srcver}/lib/*.so* $RPM_BUILD_ROOT%{_libdir}
|
||||
|
||||
# some apps look for this in /usr/include
|
||||
ln -s gsm/gsm.h $RPM_BUILD_ROOT%{_includedir}
|
||||
|
||||
rm -f ${RPM_BUILD_ROOT}%{_libdir}/lib*.a
|
||||
|
||||
|
||||
%check
|
||||
# This is to ensure that the patch creates the proper library version.
|
||||
[ -f ${RPM_BUILD_ROOT}%{_libdir}/libgsm.so.%{version} ]
|
||||
make addtst
|
||||
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc ChangeLog COPYRIGHT MACHINES README
|
||||
%{_libdir}/libgsm.so.*
|
||||
|
||||
%files tools
|
||||
%{_bindir}/tcat
|
||||
%{_bindir}/toast
|
||||
%{_bindir}/untoast
|
||||
%{_mandir}/man1/toast.1*
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%dir %{_includedir}/gsm
|
||||
%{_includedir}/gsm/gsm.h
|
||||
%{_includedir}/gsm.h
|
||||
%{_libdir}/libgsm.so
|
||||
%{_mandir}/man3/*
|
||||
|
||||
%changelog
|
||||
* Fri May 11 2007 Dominik Mierzejewski <rpm[AT]greysector.net> 1.0.12-2
|
||||
- fix some warnings
|
||||
- fix 64bit testsuite issue as described at gsm homepage
|
||||
- add compatibility header symlink
|
||||
- split off binaries into a separate package
|
||||
|
||||
* Sun Apr 15 2007 Michael Schwendt <mschwendt[AT]users.sf.net> 1.0.12-1
|
||||
- Update to Release 1.0 Patchlevel 12.
|
||||
- Build with -fPIC not just for non-ix86.
|
||||
- Add check section to ensure proper library version.
|
||||
- Remove static library.
|
||||
|
||||
* Fri Oct 06 2006 Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info> 1.0.10-12
|
||||
- rebuilt for unwind info generation, broken in gcc-4.1.1-21
|
||||
|
||||
* Tue Sep 26 2006 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-11
|
||||
- rebuild for FC6
|
||||
|
||||
* Thu Mar 09 2006 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
|
||||
- switch to new release field
|
||||
|
||||
* Tue Feb 28 2006 Andreas Bierfert <andreas.bierfert[AT]lowlatency.de>
|
||||
- add dist
|
||||
|
||||
* Mon Jun 27 2005 David Woodhouse <dwmw2@infradead.org>
|
||||
- 1.0.10-0.lvn.10: Clean up installation
|
||||
|
||||
* Sat Jun 25 2005 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info>
|
||||
- 1.0.10-0.lvn.9: mv libgsm.a only when needed
|
||||
|
||||
* Fri Dec 31 2004 Thorsten Leemhuis <fedora[AT]leemhuis[DOT]info>
|
||||
- 1.0.10-0.lvn.8: Use -fPIC on non ix86
|
||||
|
||||
* Tue Mar 02 2004 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-0.lvn.7: moved to rpm.livna.org
|
||||
|
||||
* Tue Mar 02 2004 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-0.fdr.7: applied patch from Ville, remove epoch since it's allowed
|
||||
|
||||
* Sat Sep 13 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 0:1.0.10-0.fdr.6: remove second makeinstall
|
||||
|
||||
* Sun Sep 07 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 0:1.0.10-0.fdr.5
|
||||
- added back epochs, I surrender
|
||||
- fix RPM_OPT_FLAGS hackery
|
||||
|
||||
* Fri Jul 18 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-0.fdr.4: remove epoch mentions
|
||||
|
||||
* Sat Jul 05 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-0.fdr.3
|
||||
- pull in RPM_OPT_FLAGS in patch instead of using perl to wedge it in
|
||||
- fix group
|
||||
- -p'ize ldconfig
|
||||
|
||||
* Tue Jun 10 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 1.0.10-0.fdr.2
|
||||
- Fix libgsm.so.* being files instead of symlinks
|
||||
|
||||
* Thu May 29 2003 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
- 0:1.0.10-0.fdr.1: initial RPM release
|
Loading…
Reference in New Issue
Block a user