#!/bin/bash #NEED:git ##DEP:ndpi #DEP:libpcap #DEP:sqlite #DEP:mysql56 #DEP:glib2 #DEP:libxml2 #DEP:rrdtool #NEED:groff #DEP:zlib #DEP:curl ##DEP:drv_pf_ring #######Essential package info. #Change these if autodetection fails. #Name of the Syn-3 package that we are going to create NAME=`basename $0|sed 's/.SlackBuild//'` #git clone http://github.com/ntop/ntopng.git || exit 1 #Archive of the sourcefiles to unpack #SRC_ARC=`ls *.tar.* *.zip 2>/dev/null` SRC_ARC=ntopng-dev.zip #Version of the sourcefiles VER=`echo $SRC_ARC| sed 's/.*-//g' | sed 's/\.tar\..*$//g' | sed 's/\.zip$//g'` #VER=`cd ntopng; git describe --tags|sed 's/-/_/g'` #Architecture that the created binaries run on. #Use noarch for scripts. ARCH=`uname -m` #from this point on, exit on errors: set -e ########Build and create the pacakge. #Uncomment the stuff that you dont want or need #Unpack source #(uncomment if not needed) syn3_unpack $SRC_ARC #Directory where the sourcefiles are unpacked. #(you might have to adjust this if autodetection fails) SRC_DIR=`ls -c|head -1` #SRC_DIR=ntopng #apply patches #patch -p1 -d $SRC_DIR < no_zc.patch || exit 1 pushd $SRC_DIR #AUTOMAKE: Configure #Some usefull stuff you sometimes need to set: #export LDFLAGS="-L/usr/X11/lib/ -L/usr/lib/mysql/" #export LD_LIBRARY_PATH=/usr/lib/mysql #export VPATH=$LD_LIBRARY_PATH #export CFLAGS="-std=c89" #export CFLAGS="-fgnu89-inline" #If "multiple definition of `foo'" Also see http://gcc.gnu.org/gcc-4.3/porting_to.html #get ndpi sources pushd .. #git clone http://github.com/ntop/nDPI.git unzip nDPI-dev.zip mv nDPI-dev nDPI #git clone -b 1.8 https://github.com/ntop/nDPI.git cd nDPI ./autogen.sh make $MAKE_OPTS popd MAKE_OPTS="" ./autogen.sh ./configure --prefix=/usr || exit 1 #AUTOMAKE: Compile make $MAKE_OPTS || exit 1 #AUTOMAKE: Test (optional) if grep ^test: Makefile; then make pkgconfigdir=/usr/lib/pkgconfig $MAKE_OPTS install || exit 1 make $MAKE_OPTS test || exit 1 elif grep ^check: Makefile; then make pkgconfigdir=/usr/lib/pkgconfig $MAKE_OPTS install || exit 1 make $MAKE_OPTS check || exit 1 fi #AUTOMAKE: Install mkdir -p /tmp/pkg &>/dev/null make pkgconfigdir=/usr/lib/pkgconfig install_prefix=/tmp/pkg DESTDIR=/tmp/pkg INSTALL_ROOT=/tmp/pkg install_root=/tmp/pkg $MAKE_OPTS install || exit 1 popd #strip bins and other stuff syn3_strip /tmp/pkg || exit 1 #move development stuff and create seperate development package syn3_move_dev /tmp/pkg /tmp/pkgdev || exit 1 syn3_makepkg /tmp/pkgdev $NAME""_dev $VER $ARCH || exit 1 #make main package syn3_makepkg /tmp/pkg $NAME $VER $ARCH || exit 1