X-Git-Url: http://git.samba.org/?a=blobdiff_plain;f=generic.fns;h=74e1a677ac1fbcc229a380f0c4030b3f4b79134e;hb=561b560df38027a7c9b87a6b690f604798948138;hp=f4327a089b2722b848d81d39be95751f109d1c08;hpb=f39ce095f7f12e6f811702a61517afc6648036bd;p=build-farm.git diff --git a/generic.fns b/generic.fns index f4327a08..74e1a677 100644 --- a/generic.fns +++ b/generic.fns @@ -1,42 +1,83 @@ per_run_hook -for compiler in gcc cc icc; do +global_lock +system=`uname` + +ENVCFLAGS=$CFLAGS +cur_compiler_sum="" +last_compiler_sum="" + +if [ "x$compilers" = "x" ]; then + compilers="gcc cc icc" +fi + +for compiler in $compilers; do + + echo "working with compiler $compiler" # arrgh, "which" gives no err code on solaris path=`which $compiler` if [ -x "$path" ]; then + # We do not want to build with the same compiler twice + # cc is a symlink to gcc on some systems + cur_compiler_sum="`sum $path | sed 's/ .*//'`" + test x"$cur_compiler_sum" = x"" && { + cur_compiler_sum="$path" + } + test x"$last_compiler_sum" = x"$cur_compiler_sum" && { + continue; + } + last_compiler_sum="$cur_compiler_sum" + if $compiler -v 2>&1 | grep gcc.version > /dev/null; then isgcc=1 - CFLAGS="-Wall" - export CFLAGS + CFLAGS="$ENVCFLAGS -Wall -g" else - CFLAGS="" - export CFLAGS isgcc=0 + CFLAGS="$ENVCFLAGS -g" fi + + CFLAGS_THIS_COMPILER=`eval CFLAGS_$compiler 2>/dev/null` + if [ $? = 0 ] ; then + CFLAGS="$CFLAGS_THIS_COMPILER $CFLAGS" + fi + export CFLAGS + + TDB_NO_FSYNC=1 + export TDB_NO_FSYNC + test_tree samba_4_0_test . $compiler + TDB_NO_FSYNC=0 + export TDB_NO_FSYNC + if [ $compiler = gcc -o $isgcc = 0 ]; then - test_tree samba_3_0 source $compiler - test_tree rsync . $compiler - test_tree distcc . $compiler - test_tree ccache . $compiler - test_tree talloc . $compiler - test_tree tdb . $compiler + . common.fns test_tree lorikeet-heimdal . $compiler - # only attempt samba4 if we have perl - if which perl > /dev/null; then - test_tree samba4 source $compiler - test_tree smb-build . $compiler + # only attempt samba-gtk if we have perl and gtk+-2.0 + if which perl > /dev/null && which pkg-config > /dev/null && pkg-config --exists gtk+-2.0; then + test_tree samba-gtk . $compiler + fi + + TDB_NO_FSYNC=1 + export TDB_NO_FSYNC + test_tree samba_3_current source3 $compiler + test_tree samba_3_next source3 $compiler + TDB_NO_FSYNC=0 + export TDB_NO_FSYNC + + # by default build ppp only on SunOS or Linux systems + if [ "$system" = Linux -o "$system" = SunOS ]; then + test_tree ppp . $compiler fi fi fi -done - -# by default build ppp only on SunOS or Linux systems -system=`uname` -if [ "$system" = Linux -o "$system" = SunOS ]; then - test_tree ppp . gcc -fi + # only attempt pidl if we have perl + if which perl > /dev/null; then + test_tree pidl . cc + fi + +done +global_unlock