aboutsummaryrefslogtreecommitdiff
path: root/libtheora/libtheora.SlackBuild
blob: 153566c166b4afff45e95862f980fefc21e988dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
#!/bin/bash
#
# Heavily based on the Slackware 10.2 SlackBuild
# http://www.theora.org
#
# got it from http://www.slacky.it/download/libraries/libtheora/1.0alpha5/src/libtheora.SlackBuild
# small changes by rhatto
#

CWD="`pwd`"

if [ -f "/etc/slackbuildrc" ]; then
  source /etc/slackbuildrc
fi

if [ -f "~/.slackbuildrc" ]; then
  source ~/.slackbuildrc
fi

PACKAGE="libtheora"
VERSION=${VERSION:=1.0alpha6}
ARCH=${ARCH:-i486}
TARGET=${TARGET:=$ARCH}
BUILD=${BUILD:=1rha}
TMP=${TMP:=/tmp}
SRC_DIR=${SRC:=$CWD}

RTOOL="wget"
PACKAGE_EXT="bz2"
SRC="$PACKAGE-$VERSION.tar.$PACKAGE_EXT"
URL="http://downloads.xiph.org/releases/theora/$SRC"

if [ "$PACKAGE_EXT" == "bz2" ]; then
  tarflag="j"
else
  tarflag="z"
fi

if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then
  wget "$URL" -O "$SRC_DIR/$SRC"
fi

if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mcpu=i686"
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mcpu=i686"
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2"
fi

if [ "$ARCH" == "x86_64" ]; then
  LIBDIR="/usr/lib64"
else
  LIBDIR="/usr/lib"
fi

if [ ! -d $TMP ]; then
  mkdir -p $TMP
fi

if [ ! -d $PKG ]; then
  mkdir -p $PKG
fi

NAME="$PACKAGE"
PKG=$TMP/package-$PACKAGE

cd $TMP
tar xvf$tarflag $SRC_DIR/$SRC
cd $NAME-$VERSION
chown -R root.root .

find . -perm 777 -exec chmod 755 {} \;

CFLAGS="$SLKCFLAGS" CXXFLAGS="$SLKCFLAGS" \
./configure --prefix=/usr --disable-static --libdir=$LIBDIR --program-prefix="" --program-suffix="" $TARGET-slackware-linux

make
make install DESTDIR=$PKG

mkdir -p $PKG/usr/doc/$NAME-$VERSION
mv $PKG/usr/share/doc/$NAME-$VERSION/* $PKG/usr/doc/$NAME-$VERSION
cp -a COPYING README $PKG/usr/doc/$NAME-$VERSION
rm -rf $PKG/usr/share
ln -sf /usr/lib/libtheora.so.0.2.0 $PKG/usr/lib/libtheora.so

( cd $PKG
  find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
  find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
)

mkdir -p $PKG/install
cat << EOF > $PKG/install/slack-desc
# 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-----------------------------------------------------|
libtheora: Libtheora
libtheora:
libtheora: Theora is an open video codec being developed by the Xiph.org
libtheora: Foundation as part of their Ogg project (It is a project that aims
libtheora: to integrate On2's VP3 video codec, Ogg Vorbis audio codec and Ogg
libtheora: multimedia container formats into a multimedia solution that can
libtheora: compete with MPEG-4 format).
libtheora:
libtheora:
libtheora:
libtheora:
EOF

cd $PKG

echo 'chroot . /sbin/ldconfig' > install/doinst.sh

makepkg -l y -c n $TMP/$NAME-$VERSION-$ARCH-$BUILD.tgz

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP/$NAME-$VERSION
 rm -rf $PKG
fi