summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTobias Klauser <tklauser@distanz.ch>2013-06-28 14:28:06 +0200
committerTobias Klauser <tklauser@distanz.ch>2013-06-28 14:31:42 +0200
commit7199a4fe1d6f66722158d73d4403f8dad8637bd1 (patch)
tree54a1e738ccf0fb2664719aeb3a8f86da1cfd922a
parent1c0833268c7179494aecabc5f0fae643715a7a98 (diff)
configure: Check for presence of pkg-config and ccache binaries
Check whether pkg-config and ccache are in the PATH. A missing pkg-config will cause the configure script to abort with an error. The presence of ccache is written to Config and used by the Makefile to conditionally make use of it. Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
-rw-r--r--Makefile2
-rwxr-xr-xconfigure34
2 files changed, 35 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index ee03d86..9ad9db5 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ TOOLS ?= netsniff-ng trafgen astraceroute flowtop ifpps bpfc curvetun mausezahn
PREFIX ?=
# Disable if you don't want it
-CCACHE ?= ccache
+CCACHE ?= $(CONFIG_CCACHE)
# Location of installation paths.
SBINDIR = $(PREFIX)/usr/sbin
diff --git a/configure b/configure
index ed1eacd..fd8211e 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,7 @@
#!/bin/bash
# This isn't a configure generated by autoconf!
+MISSING_PKG_CONFIG=0
MISSING_DEFS=0
MISSING_NACL=0
@@ -9,6 +10,31 @@ MISSING_NACL=0
TMPDIR=$(mktemp -d config.XXXXXX)
trap 'status=$?; rm -rf $TMPDIR; exit $status' EXIT HUP INT QUIT TERM
+check_pkg_config()
+{
+ echo -n "[*] Checking pkg-config ... "
+
+ if [ "x$(which pkg-config)" == "x" ] ; then
+ echo "[NO]"
+ MISSING_PKG_CONFIG=1
+ else
+ echo "[YES]"
+ fi
+}
+
+check_ccache()
+{
+ echo -n "[*] Checking ccache ... "
+
+ if [ "x$(which ccache)" == "x" ] ; then
+ echo "[NO]"
+ echo "CONFIG_CCACHE=" >> Config
+ else
+ echo "[YES]"
+ echo "CONFIG_CCACHE=ccache" >> Config
+ fi
+}
+
check_nacl()
{
echo -n "[*] Checking nacl ... "
@@ -172,6 +198,14 @@ EOF
}
echo "# This file is autogenerated by the configure script" > Config
+check_pkg_config
+
+if [ "$MISSING_PKG_CONFIG" == "1" ] ; then
+ echo "[!] pkg-config is not installed on your system or not in the PATH"
+ exit 1
+fi
+
+check_ccache
check_nacl
check_libnl
check_tpacket