mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
acbf3fa602
new file BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
145 lines
2.6 KiB
Bash
145 lines
2.6 KiB
Bash
#! /bin/sh
|
|
|
|
# show executed commands
|
|
# set -x
|
|
|
|
# stop on errors
|
|
set -e
|
|
|
|
BD=`pwd`
|
|
|
|
build=0
|
|
build_debug=0
|
|
skip_linux=0
|
|
|
|
# parse arguments
|
|
for arg do
|
|
case "$arg" in
|
|
--build) build=1 ;;
|
|
--build-debug) build_debug=1 ;;
|
|
--skip-linux) skip_linux=1 ;;
|
|
*) echo "$0: unrecognized option: $arg" ;;
|
|
esac
|
|
done
|
|
|
|
# run the auto tools
|
|
autotools()
|
|
{
|
|
for package in $BD $BD/innobase
|
|
do
|
|
echo "cd $package"
|
|
cd $package
|
|
rm -f config.cache
|
|
echo "aclocal"
|
|
aclocal
|
|
echo "autoheader"
|
|
autoheader
|
|
echo "libtoolize --force"
|
|
libtoolize --force
|
|
echo "aclocal"
|
|
aclocal
|
|
echo "automake --add-missing --force-missing"
|
|
automake --add-missing --force-missing
|
|
echo "autoconf"
|
|
autoconf
|
|
done
|
|
|
|
cd $BD
|
|
}
|
|
|
|
# check the source direcotry
|
|
echo "looking for \"$BD/sql/mysqld.cc\"..."
|
|
if test ! -r ./sql/mysqld.cc
|
|
then
|
|
echo "./netware/nwbootstrap must be started from the top source directory"
|
|
exit 1
|
|
fi
|
|
|
|
# clean
|
|
# make -j 2 -k distclean
|
|
rm -f NEW-RPMS/*
|
|
rm -f */.deps/*.P
|
|
|
|
# make files writeable
|
|
chmod -R u+rw,g+rw .
|
|
|
|
# skip linux?
|
|
if test $skip_linux -ne 1
|
|
then
|
|
echo "starting linux build..."
|
|
|
|
echo "autotools..."
|
|
autotools
|
|
|
|
echo "configuring for linux..."
|
|
./configure --without-docs --without-innodb
|
|
|
|
echo "building for linux..."
|
|
make clean all
|
|
|
|
echo "copying required linux binaries..."
|
|
rm -f */*.linux
|
|
cp extra/comp_err extra/comp_err.linux
|
|
cp libmysql/conf_to_src libmysql/conf_to_src.linux
|
|
cp libmysql/conf_to_src libmysql_r/conf_to_src.linux
|
|
cp sql/gen_lex_hash sql/gen_lex_hash.linux
|
|
cp strings/conf_to_src strings/conf_to_src.linux
|
|
|
|
echo "cleaning linux build..."
|
|
make clean distclean
|
|
fi
|
|
|
|
echo "starting netware build..."
|
|
|
|
# remove stale Makefile.in.bk files
|
|
rm -rf Makefile.in.bk
|
|
|
|
# start mw enviornment
|
|
chmod +x ./netware/nwconfigure
|
|
chmod +x ./netware/mw/mwenv
|
|
chmod +x ./netware/mw/mwasmnlm
|
|
chmod +x ./netware/mw/mwccnlm
|
|
chmod +x ./netware/mw/mwldnlm
|
|
|
|
. ./netware/mw/mwenv
|
|
|
|
# link nwconfigure
|
|
rm -f ./nwconfigure
|
|
ln ./netware/nwconfigure ./nwconfigure
|
|
|
|
# save old builds from previous run
|
|
if test -e *.tar.gz
|
|
then
|
|
rm -f *.tar.gz.old
|
|
rename .tar.gz .tar.gz.old *.tar.gz
|
|
fi
|
|
|
|
echo "autotools..."
|
|
autotools
|
|
|
|
# debug build
|
|
if test $build_debug -eq 1
|
|
then
|
|
echo "configuring for netware (debug)..."
|
|
./nwconfigure --with-debug=full
|
|
|
|
echo "building for netware (debug)..."
|
|
make clean bin-dist
|
|
|
|
# mark the debug build
|
|
rename .tar.gz -debug.tar.gz *.tar.gz
|
|
fi
|
|
|
|
# release build
|
|
if test $build -eq 1
|
|
then
|
|
echo "configuring for netware..."
|
|
./nwconfigure
|
|
|
|
echo "building for netware..."
|
|
make clean bin-dist
|
|
fi
|
|
|
|
echo "done"
|
|
|
|
|