summaryrefslogtreecommitdiff
path: root/contrib/scripts/install_prereq
diff options
context:
space:
mode:
authorDavid M. Lee <dlee@digium.com>2013-04-01 20:10:47 +0000
committerDavid M. Lee <dlee@digium.com>2013-04-01 20:10:47 +0000
commitd4e25a456e73189044927d96f2bc26a7e4b96a50 (patch)
tree14c2532b69adc2ee2ef596c6a4f00fea6c542eb6 /contrib/scripts/install_prereq
parent8c5367226baa1e24f4440da6aed1ce84b65a58ac (diff)
install_prereq: Build jansson from source, when necessary
When r383579 was committed, it made Jansson a required dependency. While libjansson-dev and jansson-devel are available on recent distros, some older (but still supported) distros don't have it. There's a pull request[1] to get it into repoforge, but that still doesn't help everyone. (And helps no one until the pull request is merged and packages are built). This patch adds Jansson install from source to the install_unpackaged() function. There are a few gotcha's, which makes this change not completely trivial. * Since Jansson may be installed by a package, don't install from source if a package installation can be found * libresample may also be installed via package, so I added a similar check to that. * Since Jansson installs into /usr/local, this patch also adds /usr/local/lib to /etc/ld.so.conf.d so that the library can be found. * The alternative was to install into /usr, but then it gets complicated having to deal with EL's /usr/lib{32,64} shenanigans. [1]: https://github.com/repoforge/rpms/pull/250 Review: https://reviewboard.asterisk.org/r/2414/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@384488 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'contrib/scripts/install_prereq')
-rwxr-xr-xcontrib/scripts/install_prereq26
1 files changed, 21 insertions, 5 deletions
diff --git a/contrib/scripts/install_prereq b/contrib/scripts/install_prereq
index 150009f90..21ba1e019 100755
--- a/contrib/scripts/install_prereq
+++ b/contrib/scripts/install_prereq
@@ -38,6 +38,8 @@ PACKAGES_OBSD="popt gmake wget libxml libogg libvorbis curl iksemel spandsp spee
KVERS=`uname -r`
+JANSSON_VER=2.4
+
case "$1" in
test) testcmd=echo ;;
install) testcmd='' ;;
@@ -101,11 +103,25 @@ install_unpackaged() {
make && make install
cd ..
- echo "*** Installing libresample ***"
- svn co http://svn.digium.com/svn/thirdparty/libresample/trunk libresample-trunk
- cd libresample-trunk
- ./configure && make && make install
- cd ..
+ # Only install libresample if it wasn't installed via package
+ if ! test -f /usr/include/libresample.h; then
+ echo "*** Installing libresample ***"
+ svn co http://svn.digium.com/svn/thirdparty/libresample/trunk libresample-trunk
+ cd libresample-trunk
+ ./configure && make && make install
+ cd ..
+ fi
+
+ # Only install Jansson if it wasn't installed via package
+ if ! test -f /usr/include/jansson.h; then
+ echo "*** Installing jansson ***"
+ wget -O - http://www.digip.org/jansson/releases/jansson-${JANSSON_VER}.tar.gz | zcat | tar -xf -
+ cd jansson-${JANSSON_VER}
+ ./configure && make all && make install
+ cd ..
+ echo "/usr/local/lib" > /etc/ld.so.conf.d/usr_local.conf
+ /sbin/ldconfig
+ fi
}
if in_test_mode; then