autotools.sh 1.61 KB
Newer Older
1
2
3
4
5
6
# Continuous integration build script for opusfile.
# This script is run by automated frameworks to verify commits
# see https://mf4.xiph.org/jenkins/job/opusfile-autotools/

# This is intended to be run from the top-level source directory.

7
8
set -x

9
10
11
# WARNING: clobbers outside the current tree!
rm  -f ../opus
ln -s /srv/jenkins/jobs/opus/workspace ../opus
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
rm  -f ../ogg
ln -s /srv/jenkins/jobs/libogg/workspace ../ogg

# HACK: libtool can't link a dynamic library to a static
# library, and the 'unix' makefile build can't link to
# a libopus.la. As a work around, hack our own pkg-config
# file for the uninstalled opus library we want to build
# against.
cat <<EOF > opus-ininstalled.pc
# Opus codec uninstalled pkg-config file
# hacked up for the opusfile autotools build.

libdir=\${pcfiledir}/../opus
includedir=\${libdir}/include

Name: opus uninstalled for opusfile
Description: Opus IETF audio codec (not installed)
Version: 1.0.1
Requires:
Conflicts:
Libs: \${libdir}/libopus.la -lm
Cflags: -I\${includedir}
EOF

cat <<EOF > ogg-uninstalled.pc
# ogg uninstalled pkg-config file
# hacked up for the opusfile autotools build

libdir=\${pcfiledir}/../ogg/src
includedir=\${pcfiledir}/../ogg/include

Name: ogg uninstalled for opusfile
Description: ogg is a library for manipulating ogg bitstreams (not installed)
Version: 1.3.0
Requires:
Conflicts:
Libs: \${libdir}/libogg.la
Cflags: -I\${includedir}
EOF

PKG_CONFIG_PATH=$PWD
53
54
55

# compile
./autogen.sh
56
./configure PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
57
58
59
60
make clean
make

# verify distribution target
61
make distcheck PKG_CONFIG_PATH=${PKG_CONFIG_PATH}
62
63
64

# build the documentation
make -C doc/latex