aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/jenkins.sh
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/jenkins.sh')
-rwxr-xr-xcontrib/jenkins.sh103
1 files changed, 45 insertions, 58 deletions
diff --git a/contrib/jenkins.sh b/contrib/jenkins.sh
index 5c7317a..608e4cd 100755
--- a/contrib/jenkins.sh
+++ b/contrib/jenkins.sh
@@ -2,63 +2,50 @@
set -ex
-rm -rf deps/install
-mkdir deps || true
-cd deps
-osmo-deps.sh libosmocore
-
-cd libosmocore
-autoreconf --install --force
-./configure --prefix=$PWD/../install
-$MAKE $PARALLEL_MAKE install
-
-cd ../
-osmo-deps.sh libosmo-abis
-cd libosmo-abis
-autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$PWD/../install
-PKG_CONFIG_PATH=$PWD/..//install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE install
-
-cd ../
-osmo-deps.sh libosmo-netif
-cd libosmo-netif
-autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$PWD/../install
-PKG_CONFIG_PATH=$PWD/..//install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE install
-
-cd ../
-rm -rf libosmo-sccp
-git clone git://git.osmocom.org/libosmo-sccp
-cd libosmo-sccp
-git checkout sysmocom/iu
-autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$PWD/../install
-PKG_CONFIG_PATH=$PWD/..//install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE install
-
-cd ../
-rm -rf asn1c
-git clone git://git.osmocom.org/asn1c
-cd asn1c
-git checkout aper-prefix
-autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$PWD/../install
-PKG_CONFIG_PATH=$PWD/..//install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE install
-
-cd ../
-osmo-deps.sh libasn1c
-cd libasn1c
-autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/../install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure --prefix=$PWD/../install
-PKG_CONFIG_PATH=$PWD/..//install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE install
-
-
-cd ../../
+base="$PWD"
+deps="$base/deps"
+inst="$deps/install"
+
+mkdir "$deps" || true
+rm -rf "$inst"
+
+build_dep() {
+ project="$1"
+ branch="$2"
+ if [ -z "$project" ]; then
+ echo "internal failure"
+ exit 1
+ fi
+ cd "$deps"
+ rm -rf "$project"
+ osmo-deps.sh "$project"
+ cd "$project"
+ if [ -n "$branch" ]; then
+ git checkout "$branch"
+ fi
+ autoreconf --install --force
+ ./configure --prefix="$inst"
+ $MAKE $PARALLEL_MAKE install
+}
+
+build_dep libosmocore
+
+# All below builds want this PKG_CONFIG_PATH
+export PKG_CONFIG_PATH="$inst/lib/pkgconfig:$PKG_CONFIG_PATH"
+
+build_dep libosmo-abis
+build_dep libosmo-netif sysmocom/sctp
+build_dep libosmo-sccp sysmocom/iu
+build_dep libasn1c
+
+# the asn1c binary is used by the 'regen' target below
+build_dep asn1c aper-prefix
+
+cd "$base"
autoreconf --install --force
-PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH ./configure
-PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE
-PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE check
+./configure
+PATH="$inst/bin:$PATH" $MAKE $PARALLEL_MAKE -C src regen
+$MAKE $PARALLEL_MAKE
+LD_LIBRARY_PATH="$inst/lib" $MAKE check
# distcheck is broken
-#PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE distcheck
-PATH=$PWD/deps/install/bin:$PATH PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE -C src regen
-PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH $MAKE $PARALLEL_MAKE
-PKG_CONFIG_PATH=$PWD/deps/install/lib/pkgconfig:$PKG_CONFIG_PATH LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE check
+#LD_LIBRARY_PATH=$PWD/deps/install/lib $MAKE distcheck