]> git.stg.codes - stg.git/blobdiff - projects/stargazer/build
Fix libs order (for --as-needed)
[stg.git] / projects / stargazer / build
index 4771a8f4837e01faf1640088b3a866824eb23ae6..01d9605415605d89aebce41e59dc0e51a067dd97 100755 (executable)
@@ -7,7 +7,7 @@
 
 # Installation path prefix
 
-PREFIX=""
+#PREFIX=""
 
 # Binaries access bits
 
@@ -17,6 +17,10 @@ BIN_MODE=0755
 
 DATA_MODE=0644
 
+# Dir access bits
+
+DIR_MODE=0755
+
 # Binaries and data files owner
 
 OWNER=root
@@ -55,7 +59,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 +68,7 @@ else
     then
         DEFS="$DEFS -DDEBUG"
         MAKEOPTS="-j1"
-        CXXFLAGS="$CXXFLAGS -g3 -W -Wall"
+        CXXFLAGS="$CXXFLAGS -ggdb3 -W -Wall"
     else
         DEFS="$DEFS -DNDEBUG"
         MAKEOPTS="-j1"
@@ -108,15 +112,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 +128,7 @@ PLUGINS="authorization/ao
          other/ping
          other/rscript
          other/radius
+         other/smux
          store/files
          capture/cap_nf"
 
@@ -155,9 +160,38 @@ else
     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 +203,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 +216,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 +228,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 +245,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 +264,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 +273,6 @@ else
             echo "no"
         else
             CHECK_MYSQLCLIENT=yes
-            #LDFLAGS="$LDFLAGS $MYSQL_LDFLAGS"
             echo "[$MYSQL_LDFLAGS]"
         fi
     fi
@@ -250,7 +284,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 +323,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
@@ -389,11 +423,13 @@ 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