autotools.sh 1.66 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
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.
Ralph Giles's avatar
Ralph Giles committed
20
cat <<EOF > opus-uninstalled.pc
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
# 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

# build the documentation
64
65
# currently fails on jenkins (debian stretch)
# make -C doc/latex