]> git.stg.codes - stg.git/blobdiff - projects/sgauthstress/build
Allowed to build sgconf_xml on Darwin.
[stg.git] / projects / sgauthstress / build
index 676938ad6ff811f7a993e2c9c760406d120ed6b2..8f3395f91ef149d49c93b2d6964299243c54d022 100755 (executable)
@@ -7,7 +7,8 @@
 
 OS=unknown
 sys=`uname -s`
-release=`uname -r | cut -b1`
+release=`uname -r`
+major=`printf "%s" "$release" | cut -d. -f1`
 BUILD_DIR=`pwd`
 CONFFILE="../../Makefile.conf"
 PREFIX="/"
@@ -16,22 +17,16 @@ DATA_MODE=0644
 DIR_MODE=0755
 OWNER=root
 
-if [ -z $1 ]
+if [ "$1" = "debug" ]
 then
-    MAKEOPTS="-j1"
-    DEBUG="no"
+   DEFS="$DEFS -DDEBUG"
+   MAKEOPTS="$MAKEOPTS -j1"
+   CFLAGS="$CFLAGS -ggdb3 -W -Wall -Wextra"
+   CXXFLAGS="$CXXFLAGS -ggdb3 -W -Wall -Wextra"
+   DEBUG="yes"
 else
-    if [ "$1" = "debug" ]
-    then
-        DEFS="-DDEBUG"
-        MAKEOPTS="-j1"
-        CFLAGS="$CFLAGS -ggdb3 -W -Wall"
-        CXXFLAGS="$CXXFLAGS -ggdb3 -W -Wall"
-        DEBUG="yes"
-    else
-        MAKEOPTS="-j1"
-        DEBUG="no"
-    fi
+   DEFS="$DEFS -DNDEBUG"
+   DEBUG="no"
 fi
 
 CFLAGS="$CFLAGS -I/usr/local/include"
@@ -41,28 +36,35 @@ LDFLAGS="$LDFLAGS -L/usr/local/lib"
 if [ "$sys" = "Linux" ]
 then
     OS=linux
-    release=""
     MAKE="make"
 fi
 
 if [ "$sys" = "FreeBSD" ]
 then
-    case $release in
+    case $major in
         4) OS=bsd;;
         5) OS=bsd5;;
         6) OS=bsd5;;
         7) OS=bsd7;;
-        8) OS=bsd7;;
-        9) OS=bsd7;;
-        *) OS=unknown;;
+        *) OS=bsd7;;
     esac
     MAKE="gmake"
 fi
 
+if [ "$sys" = "Darwin" ]
+then
+    OS=darwin
+    ETC_DIR="./inst/freebsd/etc/stargazer"
+    MAKE="gmake"
+    CFLAGS="$CFLAGS -I/opt/local/include"
+    CXXFLAGS="$CFLAGS -I/opt/local/include"
+    LDFLAGS="$LDFLAGS -L/opt/local/lib"
+fi
+
 if [ "$OS" = "unknown" ]
 then
     printf "################################################################################\n"
-    printf "# Sorry, but sgauthstress currently supported by Linux, FreeBSD 4.x-8.x        #\n"
+    printf "# Sorry, but sgauthstress is currently supported by Linux, FreeBSD and Darwin. #\n"
     printf "################################################################################\n"
     exit 1
 fi
@@ -73,7 +75,7 @@ printf "########################################################################
 
 STG_LIBS="logger.lib
           crypto.lib
-         common.lib
+          common.lib
           conffiles.lib
           dotconfpp.lib"
 
@@ -298,4 +300,10 @@ printf "BIN_MODE=$BIN_MODE\n" >> $CONFFILE
 printf "DATA_MODE=$DATA_MODE\n" >> $CONFFILE
 printf "DIR_MODE=$DIR_MODE\n" >> $CONFFILE
 printf "OWNER=$OWNER\n" >> $CONFFILE
-$MAKE $MAKEOPTS
+
+if [ "$1" != "debug" ]
+then
+    $MAKE $MAKEOPTS
+else
+    printf "\n\n\nDebug build. Type $MAKE explicitly\n"
+fi