X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=build-all;h=9f7c23671b197518a9b614b5616f52c4c8da0dd0;hb=909fa999c0180aba479959080bd434ad98930c49;hp=86eb12af2f845a25c6d80edda10caac68e5e78cd;hpb=9c78378bebc1a9f3d400f422df8ede9efea57dea;p=util-vserver.git
diff --git a/build-all b/build-all
index 86eb12a..9f7c236 100755
--- a/build-all
+++ b/build-all
@@ -17,9 +17,10 @@
set -e
+BDIR=Build-$(hostname)
J=-j8
-confflags="-C --enable-maintainer-mode --prefix=/usr --sysconfdir=/etc --localstatedir=/var"
+confflags="-C --enable-maintainer-mode --prefix=/usr --sysconfdir=/etc --localstatedir=/var $CONFIGURE_FLAGS"
configure="`pwd`/configure $confflags"
make=eval\ "${CLEAN:+make $J silent.clean;} \
echo -e \"== executing 'make all'...\" && \
@@ -28,7 +29,13 @@ make=eval\ "${CLEAN:+make $J silent.clean;} \
make $J ${SILENT:+-s silent.}check"
LANG=C
-CPPFLAGS='-D_FORTIFY_SOURCE=99'
+
+case $(arch) in
+ (x86_64) ARCH_CFLAGS=' -m64';;
+ (i?86) ARCH_CFLAGS=' -m32';;
+esac
+
+CPPFLAGS=-D_FORTIFY_SOURCE=99$ARCH_CFLAGS
## Usage: xtermTitle
function xtermTitle
@@ -49,8 +56,8 @@ function operate()
mkdir -p $d && cd $d
- test -z "$CLEAN" || rm -f config.cache
- test -e Makefile || CCACHE_DISABLE=1 $configure "$@"
+ test -z "$CLEAN" || rm -f config.cache
+ test -e Makefile -a -z "$CONFIGURE_FLAGS"|| CCACHE_DISABLE=1 $configure "$@"
$make
cd -
}
@@ -58,7 +65,10 @@ function operate()
case "$1" in
dist)
test -e Makefile || \
- CFLAGS='-O0 -g3' CXXFLAGS='-O0 -g3' CPPFLAGS=$CPPFLAGS \
+ env \
+ CFLAGS="-O0 -g3$ARCH_CFLAGS" \
+ CXXFLAGS="-O0 -g3$ARCH_CFLAGS" \
+ CPPFLAGS="$CPPFLAGS" \
./configure $confflags
$make
exit
@@ -80,17 +90,21 @@ case "$1" in
}
esac
-test -d "Build" || {
- d=$(mktemp -d /tmp/build-ensc.XXXXXX)
- rm -f Build
- ln -sf $d Build
+test -d "$BDIR" || {
+ d=$(mktemp -t -d build-ensc.XXXXXX)
+ rm -f $BDIR
+ ln -sf $d $BDIR
}
-operate Build/diet-noopt CPPFLAGS=$CPPFLAGS CFLAGS='-O0 -g3' CXXFLAGS='-O0 -g3'
-operate Build/diet-opt --enable-release CPPFLAGS=$CPPFLAGS
-operate Build/nodiet-noopt --disable-dietlibc CPPFLAGS=$CPPFLAGS CFLAGS='-O0 -g3' CXXFLAGS='-O0 -g3'
-operate Build/nodiet-opt --enable-release --disable-dietlibc CPPFLAGS=$CPPFLAGS
-operate Build/gcc32-opt --enable-release --disable-dietlibc CPPFLAGS=$CPPFLAGS CC='ccache gcc32' CXX='ccache g++'
+noopt_flags=-O0\ -g3
+opt_flags=-O2\ -g
+ldflags=$ARCH_CFLAGS
+
+operate $BDIR/diet-noopt CPPFLAGS="$CPPFLAGS" CFLAGS="$noopt_flags" CXXFLAGS="$noopt_flags" LDFLAGS="$ldflags"
+operate $BDIR/diet-opt --enable-release CPPFLAGS="$CPPFLAGS" CFLAGS="$opt_flags" CXXFLAGS="$opt_flags" LDFLAGS="$ldflags"
+operate $BDIR/nodiet-noopt --disable-dietlibc CPPFLAGS="$CPPFLAGS" CFLAGS="$noopt_flags" CXXFLAGS="$noopt_flags" LDFLAGS="$ldflags"
+operate $BDIR/nodiet-opt --enable-release --disable-dietlibc CPPFLAGS="$CPPFLAGS" CFLAGS="$opt_flags" CXXFLAGS="$opt_flags" LDFLAGS="$ldflags"
+#operate $BDIR/gcc32-opt --enable-release --disable-dietlibc CPPFLAGS="$CPPFLAGS" CC='ccache gcc32' CXX='ccache g++' CFLAGS="$opt_flags" CXXFLAGS="$opt_flags" LDFLAGS="$ldflags"
-operate Build/diet-opt-api --enable-release --enable-apis=NOLEGACY CPPFLAGS=$CPPFLAGS
-operate Build/nodiet-opt-api --enable-release --enable-apis=NOLEGACY --disable-dietlibc CPPFLAGS=$CPPFLAGS
+operate $BDIR/diet-opt-api --enable-release --enable-apis=NOLEGACY CPPFLAGS="$CPPFLAGS" CFLAGS="$opt_flags" CXXFLAGS="$opt_flags" LDFLAGS="$ldflags"
+operate $BDIR/nodiet-opt-api --enable-release --enable-apis=NOLEGACY --disable-dietlibc CPPFLAGS="$CPPFLAGS" CFLAGS="$opt_flags" CXXFLAGS="$opt_flags" LDFLAGS="$ldflags"