diff options
Diffstat (limited to 'libraries/ilbc')
-rw-r--r-- | libraries/ilbc/README | 4 | ||||
-rw-r--r-- | libraries/ilbc/configure | 70 | ||||
-rw-r--r-- | libraries/ilbc/extract-code.sh | 81 | ||||
-rw-r--r-- | libraries/ilbc/gips_iLBClicense.pdf | bin | 0 -> 47033 bytes | |||
-rw-r--r-- | libraries/ilbc/ilbc.SlackBuild | 91 | ||||
-rw-r--r-- | libraries/ilbc/ilbc.info | 10 | ||||
-rw-r--r-- | libraries/ilbc/slack-desc | 19 |
7 files changed, 275 insertions, 0 deletions
diff --git a/libraries/ilbc/README b/libraries/ilbc/README new file mode 100644 index 0000000000..bca15d2b9b --- /dev/null +++ b/libraries/ilbc/README @@ -0,0 +1,4 @@ +iLBC (internet Low Bitrate Codec) is a speech codec suitable for robust voice +communication over IP, and is designed for narrow band speech. The iLBC +codec enables graceful speech quality degradation in the case of lost frames, +which occurs in connection with lost or delayed IP packets. diff --git a/libraries/ilbc/configure b/libraries/ilbc/configure new file mode 100644 index 0000000000..5efa4417fb --- /dev/null +++ b/libraries/ilbc/configure @@ -0,0 +1,70 @@ +#!/bin/sh + +# Copyright 2008 Mauro Giachero (mauro dot giachero at gmail dot com) +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# Prepare iLBC build environment + +set -e + +# [1/2] Prepare some basic documentation +cat >COPYING <<EOF +The iLBC license is contained in gips_iLBClicense-1.pdf. + +If not locally available, you can fetch it from + http://www.ilbcfreeware.org/documentation/gips_iLBClicense.pdf +EOF + +# [2/2] Create a simple ilbc Makefile. +SOURCES=`echo *.c` + +cat >Makefile <<EOF +NAME = ilbc + +LIBNAME = lib\$(NAME).so +SOURCES = $SOURCES +OBJECTS = \$(SOURCES:%.c=%.o) + +CFLAGS = $CFLAGS + +DESTDIR ?= + +.PHONY: all install clean distclean + +all: \$(LIBNAME) + +\$(LIBNAME): \$(OBJECTS) + \$(CC) -lm -shared -o \$(LIBNAME) \$(OBJECTS) + +%.o: %.c + \$(CC) \$(CFLAGS) -c -o \$@ \$< + +clean: + rm -f \$(LIBNAME) \$(OBJECTS) + +distclean: clean + rm -f Makefile + +install: + mkdir -p \$(DESTDIR)/usr/lib + cp \$(LIBNAME) \$(DESTDIR)/usr/lib + mkdir -p \$(DESTDIR)/usr/include/\$(NAME) + cp *.h \$(DESTDIR)/usr/include/\$(NAME) +EOF diff --git a/libraries/ilbc/extract-code.sh b/libraries/ilbc/extract-code.sh new file mode 100644 index 0000000000..58202d1fe7 --- /dev/null +++ b/libraries/ilbc/extract-code.sh @@ -0,0 +1,81 @@ +#!/bin/sh + +# Copyright 2008 Mauro Giachero (mauro dot giachero at gmail dot com) +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# This script extracts the source code files from rfc3951.txt, which +# should be fed from stdin. +# The first command line parameter, if provided, is used as the +# extraction folder. + +set -e + +FILENAME="" + +# Create the extraction folder +if [ "$1" != "" ] ; then + mkdir -p "$1" + cd "$1" +fi + +# Jump to appendix A +while :; do + if ! IFS= read LINE ; then + echo "Error: file ended prematurely." >&2 + exit 1 + fi + + if [ "$LINE" = "APPENDIX A. Reference Implementation" ]; then + break + fi +done + +# Read the source code +while :; do + if ! IFS= read LINE ; then + break + fi + + if [ "${LINE:0:2}" = "A." ]; then # Source file begin + FILENAME=`echo ${LINE:6}` + if [ -e $FILENAME ]; then + echo "Error: file '$FILENAME' already exists!" + exit 2 + fi + echo "$FILENAME" + elif [ "${LINE:0:8}" = "Andersen" ]; then # Footer + continue + elif [ "${LINE:0:3}" = "RFC" ]; then # Header + continue + elif [ "$LINE" = "Authors' Addresses" ]; then # Appendix end + break + elif [ "$FILENAME" != "" ]; then # File content + echo "$LINE" >>$FILENAME + fi +done + +# One extra check, just in case +if [ "$FILENAME" = "" ]; then + echo "Error: no source file found!" + exit 3 +fi + +# Apparently everything went ok +exit 0 diff --git a/libraries/ilbc/gips_iLBClicense.pdf b/libraries/ilbc/gips_iLBClicense.pdf Binary files differnew file mode 100644 index 0000000000..b3a40c6ba7 --- /dev/null +++ b/libraries/ilbc/gips_iLBClicense.pdf diff --git a/libraries/ilbc/ilbc.SlackBuild b/libraries/ilbc/ilbc.SlackBuild new file mode 100644 index 0000000000..73349bf999 --- /dev/null +++ b/libraries/ilbc/ilbc.SlackBuild @@ -0,0 +1,91 @@ +#!/bin/sh + +# Slackware build script for ilbc + +# Copyright 2008 Mauro Giachero (mauro dot giachero at gmail dot com) +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=ilbc +VERSION=${VERSION:-rfc3951} +ARCH=${ARCH:-i486} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +# Code extraction is peculiar... +sh $CWD/extract-code.sh $PRGNAM-$VERSION < $CWD/$VERSION.txt +cp $CWD/configure $PRGNAM-$VERSION +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +chmod 0755 configure + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure + +sed -i -e "s|usr/lib|usr/lib$LIBDIRSUFFIX|g" Makefile + +make +make install DESTDIR=$PKG + +( cd $PKG + find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \ + xargs strip --strip-unneeded 2> /dev/null || true +) + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a COPYING $PKG/usr/doc/$PRGNAM-$VERSION +for i in $PRGNAM.SlackBuild configure extract-code.sh gips_iLBClicense.pdf ; + do cat $CWD/$i > $PKG/usr/doc/$PRGNAM-$VERSION/$i ; +done +chown -R root:root $PKG/usr/doc/ + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/libraries/ilbc/ilbc.info b/libraries/ilbc/ilbc.info new file mode 100644 index 0000000000..b5aa36b8a7 --- /dev/null +++ b/libraries/ilbc/ilbc.info @@ -0,0 +1,10 @@ +PRGNAM="ilbc" +VERSION="rfc3951" +HOMEPAGE="http://www.ilbcfreeware.org/" +DOWNLOAD="http://www.ietf.org/rfc/rfc3951.txt" +MD5SUM="984affd9bf2053064d744a2ccec82289" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +MAINTAINER="Mauro Giachero" +EMAIL="mauro dot giachero at gmail dot com" +APPROVED="rworkman" diff --git a/libraries/ilbc/slack-desc b/libraries/ilbc/slack-desc new file mode 100644 index 0000000000..a6c0a2801d --- /dev/null +++ b/libraries/ilbc/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' on +# the right side marks the last column you can put a character in. You must make +# exactly 11 lines for the formatting to be correct. It's also customary to +# leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +ilbc: iLBC (internet Low Bitrate Codec) +ilbc: +ilbc: iLBC is a speech codec suitable for robust voice communication over +ilbc: IP, and is designed for narrow band speech. The iLBC codec enables +ilbc: graceful speech quality degradation in the case of lost frames, which +ilbc: occurs in connection with lost or delayed IP packets. +ilbc: iLBC is free for non-commercial use. Please read the full license +ilbc: for details and how to use iLBC in commercial applications. +ilbc: +ilbc: Homepage: http://www.ilbcfreeware.org/ +ilbc: |