summaryrefslogtreecommitdiffstats
path: root/BUILD/compile-dist
diff options
context:
space:
mode:
Diffstat (limited to 'BUILD/compile-dist')
-rwxr-xr-xBUILD/compile-dist82
1 files changed, 82 insertions, 0 deletions
diff --git a/BUILD/compile-dist b/BUILD/compile-dist
new file mode 100755
index 00000000..64147b7a
--- /dev/null
+++ b/BUILD/compile-dist
@@ -0,0 +1,82 @@
+#!/bin/sh
+# Copyright (c) 2004-2008 MySQL AB, 2008, 2009 Sun Microsystems, Inc.
+# Use is subject to license terms.
+#
+# 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 St, Fifth Floor, Boston, MA 02110-1335 USA
+
+#
+# This script's purpose is to update the automake/autoconf helper scripts and
+# to run a plain "configure" without any special compile flags. Only features
+# that affect the content of the source distribution are enabled. The resulting
+# tree can then be picked up by "make dist" to create the "pristine source
+# package" that is used as the basis for all other binary builds.
+#
+test -f Makefile && make maintainer-clean
+
+path=`dirname $0`
+. $path/autorun.sh
+
+gmake=
+for x in gmake gnumake make; do
+ if $x --version 2>/dev/null | grep GNU > /dev/null; then
+ gmake=$x
+ break;
+ fi
+done
+
+if [ -z "$gmake" ]; then
+ # Our build may not depend on GNU make, but I wouldn't count on it
+ echo "Please install GNU make, and ensure it is in your path as gnumake, gmake, or make" >&2
+ exit 2
+fi
+
+# Default to gcc for CC and CXX
+if test -z "$CXX" ; then
+ export CXX
+ CXX=g++
+ # Set some required compile options
+ if test -z "$CXXFLAGS" ; then
+ export CXXFLAGS
+ CXXFLAGS="-felide-constructors -fno-exceptions"
+ fi
+fi
+
+if test -z "$CC" ; then
+ export CC
+ CC=gcc
+fi
+
+
+# Use ccache, if available
+if ccache -V > /dev/null 2>&1
+then
+ if echo "$CC" | grep -v ccache > /dev/null
+ then
+ export CC
+ CC="ccache $CC"
+ fi
+ if echo "$CXX" | grep -v ccache > /dev/null
+ then
+ export CXX
+ CXX="ccache $CXX"
+ fi
+fi
+
+# Make sure to enable all features that affect "make dist"
+# Remember that configure restricts the man pages to the configured features !
+./configure \
+ --with-embedded-server \
+ --with-perfschema \
+ --with-plugins=max
+$gmake -j4