X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/641204dfbdb9fc870cdd2e7f9e3169a44693e7bf..1df847bedf888087c3e91f2f7b961f18128986ae:/projects/stargazer/build diff --git a/projects/stargazer/build b/projects/stargazer/build index 3d4b1f92..ff2269e1 100755 --- a/projects/stargazer/build +++ b/projects/stargazer/build @@ -1,4 +1,4 @@ - #!/bin/sh +#!/bin/sh # $Revision: 1.57 $ # $Author: faust $ @@ -7,7 +7,7 @@ # Installation path prefix -PREFIX="" +#PREFIX="" # Binaries access bits @@ -17,33 +17,13 @@ BIN_MODE=0755 DATA_MODE=0644 -# Binaries and data files owner - -OWNER=root - -# Name of the firebird's group -# Need for chown directory with firebird db - -FIREBIRD_GROUP=firebird - -# Database address -# Firebird must have priviledges to read/write for specified path - -DB_ADDRESS="localhost:/var/stargazer/stargazer.fdb" - -# Database user -# This user must have priviledges to create database - -DB_USER="stg" - -# Database password +# Dir access bits -DB_PASSWORD="123456" +DIR_MODE=0755 -# Full path to isql utility -# Note: Debian users have to specify path to isql-fb utility +# Binaries and data files owner -FIREBIRD_ISQL="/opt/firebird/bin/isql" +OWNER=root OS=unknown sys=`uname -s` @@ -55,7 +35,7 @@ MIN_XMLRPCC_VERSION="1.06.27" XMLRPC_FEATURES="c++2 abyss-server" -if [ -z $1 ] +if [ -z "$1" ] then DEFS="$DEFS -DNDEBUG" MAKEOPTS="-j1" @@ -64,7 +44,7 @@ else then DEFS="$DEFS -DDEBUG" MAKEOPTS="-j1" - CXXFLAGS="$CXXFLAGS -g3 -W -Wall" + CXXFLAGS="$CXXFLAGS -ggdb3 -W -Wall" else DEFS="$DEFS -DNDEBUG" MAKEOPTS="-j1" @@ -90,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" @@ -108,15 +89,15 @@ echo "########################################################################## echo " Building STG 2.4 for $sys $release" echo "#############################################################################" -STG_LIBS="stg_logger.lib - stg_locker.lib +STG_LIBS="logger.lib + locker.lib crypto.lib common.lib - script_executer.lib + scriptexecuter.lib conffiles.lib - hostallow.lib pinger.lib - dotconfpp.lib" + dotconfpp.lib + smux.lib" PLUGINS="authorization/ao authorization/inetaccess @@ -124,6 +105,7 @@ PLUGINS="authorization/ao other/ping other/rscript other/radius + other/smux store/files capture/cap_nf" @@ -133,7 +115,6 @@ then PLUGINS="$PLUGINS capture/ether_linux capture/ipq_linux" - SHELL="/bin/bash" LIB_THREAD=-lpthread else if [ "$OS" = "bsd" ] @@ -152,12 +133,40 @@ else PLUGINS="$PLUGINS capture/ether_freebsd capture/divert_freebsd" - SHELL="/usr/local/bin/bash" fi +if [ -z "$CC" ] +then + CC=gcc +fi + +if [ -z "$CXX" ] +then + CXX=g++ +fi + +echo -n "Checking CC... " +$CC --version > /dev/null 2> /dev/null +if [ $? != 0 ] +then + echo "FAIL!" + echo "$CC not found" + exit; +fi +echo "found" +echo -n "Checking CXX... " +$CXX --version > /dev/null 2> /dev/null +if [ $? != 0 ] +then + echo "FAIL!" + echo "$CXX not found" + exit; +fi +echo "found" + echo -n "Checking endianess... " echo "int main() { int probe = 0x00000001; return *(char *)&probe; }" > build_check.c -gcc $CXXFLAGS $LDFLAGS build_check.c -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -o fake if [ $? != 0 ] then echo "FAIL!" @@ -169,10 +178,12 @@ else then ARCH=le CXXFLAGS="$CXXFLAGS -DARCH_LE" + CFLAGS="$CFLAGS -DARCH_LE" echo "Little Endian" else ARCH=be CXXFLAGS="$CXXFLAGS -DARCH_BE" + CFLAGS="$CFLAGS -DARCH_BE" echo "Big Endian" fi fi @@ -180,7 +191,7 @@ rm -f fake echo -n "Checking for -lexpat... " echo "int main() { return 0; }" > build_check.c -gcc $CXXFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lexpat -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_EXPAT=no @@ -192,7 +203,7 @@ fi rm -f fake echo -n "Checking for -lfbclient... " -gcc $CXXFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null +$CC $CFLAGS $LDFLAGS build_check.c -lfbclient $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_FBCLIENT=no @@ -209,7 +220,7 @@ if [ $? != 0 ] then echo "no"; echo -n "Checking for -lmysqlclient... " - gcc $CXXFLAGS $LDFLAGS build_check.c -lmysqlclient_r $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lmysqlclient_r $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_MYSQLCLIENT=no @@ -228,7 +239,6 @@ else CHECK_MYSQLCLIENT=no echo "no" else - #CXXFLAGS="$CXXFLAGS $MYSQL_CFLAGS" echo "[$MYSQL_CFLAGS]" echo -n "Checking for mysql_config --libs_r... " MYSQL_LDFLAGS=`mysql_config --libs_r 2> /dev/null` @@ -238,7 +248,6 @@ else echo "no" else CHECK_MYSQLCLIENT=yes - #LDFLAGS="$LDFLAGS $MYSQL_LDFLAGS" echo "[$MYSQL_LDFLAGS]" fi fi @@ -250,7 +259,7 @@ if [ $? != 0 ] then echo "no"; echo -n "Checking for -lpq... " - gcc $CXXFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lpq $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_PQ=no @@ -289,7 +298,7 @@ if [ $? != 0 ] then echo "no"; echo -n "Checking for -lxmlrpc... " - gcc $CXXFLAGS $LDFLAGS build_check.c -lxmlrpc $LIB_THREAD -o fake > /dev/null 2> /dev/null + $CC $CFLAGS $LDFLAGS build_check.c -lxmlrpc $LIB_THREAD -o fake > /dev/null 2> /dev/null if [ $? != 0 ] then CHECK_XMLRPC=no @@ -326,6 +335,22 @@ else fi fi +echo -n "Checking for linux/netfilter_ipv4/ip_queue.h... " +echo "#include " > build_check.c +echo "#include " >> 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" + echo "yes" +fi +rm -f fake + rm -f build_check.c if [ "$CHECK_EXPAT" != "yes" ] @@ -387,21 +412,17 @@ do echo -n "$plugin " >> $CONFFILE done echo "" >> $CONFFILE -echo "SHELL=$SHELL" >> $CONFFILE echo "CXXFLAGS=$CXXFLAGS" >> $CONFFILE +echo "CFLAGS=$CFLAGS" >> $CONFFILE echo "LDFLAGS=$LDFLAGS" >> $CONFFILE echo "LIB_THREAD=$LIB_THREAD" >> $CONFFILE echo "PREFIX=$PREFIX" >> $CONFFILE echo "BIN_MODE=$BIN_MODE" >> $CONFFILE echo "DATA_MODE=$DATA_MODE" >> $CONFFILE +echo "DIR_MODE=$DIR_MODE" >> $CONFFILE echo "OWNER=$OWNER" >> $CONFFILE echo "VAR_DIR=$VAR_DIR" >> $CONFFILE echo "ETC_DIR=$ETC_DIR" >> $CONFFILE -echo "DB_ADDRESS=$DB_ADDRESS" >> $CONFFILE -echo "DB_USER=$DB_USER" >> $CONFFILE -echo "DB_PASSWORD=$DB_PASSWORD" >> $CONFFILE -echo "FIREBIRD_ISQL=$FIREBIRD_ISQL" >> $CONFFILE -echo "FIREBIRD_GROUP=$FIREBIRD_GROUP" >> $CONFFILE mkdir -p modules