X-Git-Url: http://git.samba.org/?a=blobdiff_plain;f=generic.fns;h=25a6b2e09a738d2d40f38d3a644896d3ce56e4fb;hb=3af7f627f3b9bfc1940d5273f181180791e41f9b;hp=58c8c4e73a6279dcb0f4715bbb54cfd4ecd34d26;hpb=d557a9cf3f6b897289fec775a156f645c27fdc97;p=build-farm.git diff --git a/generic.fns b/generic.fns index 58c8c4e7..25a6b2e0 100644 --- a/generic.fns +++ b/generic.fns @@ -5,41 +5,67 @@ global_lock system=`uname` ENVCFLAGS=$CFLAGS +cur_compiler_sum="" +last_compiler_sum="" -for compiler in gcc cc icc; do +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="$ENVCFLAGS -Wall" + CFLAGS="$ENVCFLAGS -Wall -g" else isgcc=0 - CFLAGS="$ENVCFLAGS" + CFLAGS="$ENVCFLAGS -g" fi + CFLAGS_THIS_COMPILER=`eval CFLAGS_$compiler 2>/dev/null` if [ $? = 0 ] ; then - CFLAGS="$CFLAGS_THIS_COMPILER $CFLAGS" + 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 . common.fns test_tree lorikeet-heimdal . $compiler - # only attempt samba_4_0_test if we have perl - if which perl > /dev/null; then - test_tree samba_4_0_test source $compiler - fi - # 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 - test_tree samba_3_current source $compiler - test_tree samba_3_master source $compiler + TDB_NO_FSYNC=1 + export TDB_NO_FSYNC + test_tree samba_3_current source3 $compiler + test_tree samba_3_next source3 $compiler + test_tree samba_3_master 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 @@ -51,7 +77,7 @@ done # only attempt pidl if we have perl if which perl > /dev/null; then - test_tree pidl . cc build test + test_tree pidl . cc fi global_unlock