mirror of
https://github.com/MariaDB/server.git
synced 2025-01-15 19:42:28 +01:00
79 lines
2.8 KiB
Bash
Executable file
79 lines
2.8 KiB
Bash
Executable file
#!/bin/bash
|
|
#
|
|
# MariaDB SQL server.
|
|
# Copyright (C) 2010 Kristian Nielsen and Monty Program AB
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; version 2 of the License.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA.
|
|
|
|
|
|
# This script's purpose is to build the binary tarball packages for MariaDB
|
|
# (currently only on Linux systems).
|
|
#
|
|
# Thus BUILD/compile-bintar from the appropriate source tarball will reproduce
|
|
# such a release, provided the build environment (gcc version etc.) matches
|
|
# (use scripts/make_binary_distribution after running this script to actually
|
|
# create the binary tarball package).
|
|
#
|
|
# Note that packages are built from source tarballs not bzr checkouts.
|
|
# Therefore, this script assumes autotools have already been run.
|
|
#
|
|
# We link libc dynamically, otherwise we get lots of problems loading
|
|
# .so files at runtime (either system stuff like NSS, or server
|
|
# plugins).
|
|
#
|
|
# We link libgcc statically to avoid reduce nasty library version dependencies.
|
|
|
|
test -f Makefile && make distclean
|
|
|
|
path=`dirname $0`
|
|
. $path/util.sh
|
|
|
|
SYSTEM_TYPE="$(uname -o)"
|
|
MACHINE_TYPE="$(uname -m)"
|
|
|
|
# We cannot have a slash '/' in tarfile name.
|
|
SYSTEM_TYPE="$(echo ${SYSTEM_TYPE} | sed -e 's/GNU\///')"
|
|
|
|
# Get correct options for architecture into CPUOPT.
|
|
get_cpuopt
|
|
# Get correct -j option into AM_MAKEFLAGS
|
|
get_make_parallel_flag
|
|
|
|
# Use gcc rather than g++ to avoid linking libstdc++.so (which we don't need).
|
|
FLAGS="-O2 -fno-omit-frame-pointer -g -pipe -Wall $CPUOPT"
|
|
|
|
# Don't press on in case of error.
|
|
set -e
|
|
|
|
CC="gcc -static-libgcc" CXX="g++ -static-libgcc" CFLAGS="$FLAGS" CXXFLAGS="$FLAGS" \
|
|
./configure \
|
|
--prefix=/usr/local/mysql \
|
|
--exec-prefix=/usr/local/mysql \
|
|
--libexecdir=/usr/local/mysql/bin \
|
|
--localstatedir=/usr/local/mysql/data \
|
|
\
|
|
--with-comment="(MariaDB - http://mariadb.com/)" \
|
|
--with-system-type="${SYSTEM_TYPE}" \
|
|
--with-machine-type="${MACHINE_TYPE}" \
|
|
\
|
|
--enable-shared --enable-static \
|
|
--with-client-ldflags=-static --with-mysqld-ldflags=-static \
|
|
--enable-thread-safe-client --enable-local-infile --with-big-tables \
|
|
--without-docs --with-extra-charsets=all \
|
|
--with-libwrap --with-ssl --with-readline --with-libevent --with-zlib-dir=bundled \
|
|
--with-partition --with-embedded-server \
|
|
--with-plugins=max \
|
|
--without-plugin-innodb_plugin
|
|
|
|
make $AM_MAKEFLAGS
|