]> git.stg.codes - stg.git/blobdiff - projects/stargazer/build
Do not compile mod_cap_ipq on systems where ip_queue is not available.
[stg.git] / projects / stargazer / build
index 1f61b2e96f4dd22a974ab881ef9fecb67298399e..da727ef9f13fe626852b4693e54a2735e8db705e 100755 (executable)
@@ -70,6 +70,7 @@ then
         6) OS=bsd5;;
         7) OS=bsd7;;
         8) OS=bsd7;;
+        9) OS=bsd7;;
         *) OS=unknown;;
     esac
     ETC_DIR="./inst/freebsd/etc/stargazer"
@@ -112,9 +113,7 @@ if [ "$OS" = "linux" ]
 then
     DEFS="$DEFS -DLINUX"
     PLUGINS="$PLUGINS
-             capture/ether_linux
-             capture/ipq_linux"
-    SHELL="/bin/bash"
+             capture/ether_linux"
     LIB_THREAD=-lpthread
 else
     if [ "$OS" = "bsd" ]
@@ -133,7 +132,6 @@ else
     PLUGINS="$PLUGINS
              capture/ether_freebsd
              capture/divert_freebsd"
-    SHELL="/usr/local/bin/bash"
 fi
 
 if [ -z "$CC" ]
@@ -336,6 +334,27 @@ else
     fi
 fi
 
+if [ "$OS" = "linux" ]
+then
+    echo -n "Checking for linux/netfilter_ipv4/ip_queue.h... "
+    echo "#include <linux/types.h>" > build_check.c
+    echo "#include <linux/netfilter_ipv4/ip_queue.h>" >> build_check.c
+    echo "int main() { return 0; }" >> build_check.c
+    $CC $CFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null
+    if [ $? != 0 ]
+    then
+        CHECK_IP_QUEUE_H=no
+        echo "no"
+    else
+        CHECK_IP_QUEUE_H=yes
+        DEFS="$DEFS HAS_IP_QUEUE_H"
+        PLUGINS="$PLUGINS
+                 capture/ipq_linux"
+        echo "yes"
+    fi
+    rm -f fake
+fi
+
 rm -f build_check.c
 
 if [ "$CHECK_EXPAT" != "yes" ]
@@ -397,7 +416,6 @@ do
     echo -n "$plugin " >> $CONFFILE
 done
 echo "" >> $CONFFILE
-echo "SHELL=$SHELL" >> $CONFFILE
 echo "CXXFLAGS=$CXXFLAGS" >> $CONFFILE
 echo "CFLAGS=$CFLAGS" >> $CONFFILE
 echo "LDFLAGS=$LDFLAGS" >> $CONFFILE