summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorunknown <kent@mysql.com>2005-05-05 09:34:15 +0200
committerunknown <kent@mysql.com>2005-05-05 09:34:15 +0200
commitf98f5a922173e54f6d234443ae2f87113f774473 (patch)
tree1a32b458910667837a172fbe386d7906471aa3d5
parent2b9ae6cf23c385881b4d4ad9d9e7264000ea97df (diff)
downloadmariadb-git-f98f5a922173e54f6d234443ae2f87113f774473.tar.gz
mwcc-wrapper, compile-darwin-mwcc, mwar-wrapper:
Initial Metrowerks CodeWarrior compiler support new file support-files/MacOSX/mwar-wrapper: Initial Metrowerks CodeWarrior compiler support BUILD/compile-darwin-mwcc: Initial Metrowerks CodeWarrior compiler support support-files/MacOSX/mwcc-wrapper: Initial Metrowerks CodeWarrior compiler support
-rwxr-xr-xBUILD/compile-darwin-mwcc54
-rwxr-xr-xsupport-files/MacOSX/mwar-wrapper16
-rwxr-xr-xsupport-files/MacOSX/mwcc-wrapper48
3 files changed, 118 insertions, 0 deletions
diff --git a/BUILD/compile-darwin-mwcc b/BUILD/compile-darwin-mwcc
new file mode 100755
index 00000000000..6fd0eab7e26
--- /dev/null
+++ b/BUILD/compile-darwin-mwcc
@@ -0,0 +1,54 @@
+#! /bin/sh
+
+path=`dirname $0`
+. "$path/SETUP.sh"
+
+c_warnings=""
+cxx_warnings=""
+fast_cflags="-O3"
+base_cxxflags="-fno-handle-exceptions"
+
+# FIXME do we need to link static, not to depend on CodeWarrior libs?
+
+if [ x$MODE = x ] ; then
+ echo "You need to give an argument, 'standard', 'max', 'debug' or 'debug-max'"
+ echo "Like: MODE=standard BUILD/compile-darwin-codewarrior"
+ exit 1
+else
+ case $MODE in
+ standard|pro-gpl)
+ # FIXME pro/pro-gpl different libedit/readline
+ extra_flags="$ppc_cflags $fast_cflags"
+ ;;
+ pro)
+ # FIXME pro/pro-gpl different libedit/readline
+ extra_flags="$ppc_cflags $fast_cflags"
+ extra_configs="--with-libedit"
+ ;;
+ max)
+ extra_flags="$ppc_cflags $fast_cflags"
+ extra_configs="$max_configs"
+ ;;
+ debug)
+ extra_flags="$ppc_cflags $debug_cflags"
+ c_warnings="$c_warnings $debug_extra_warnings"
+ cxx_warnings="$cxx_warnings $debug_extra_warnings"
+ extra_configs="$debug_configs"
+ ;;
+ debug-max)
+ extra_flags="$ppc_cflags $debug_cflags $max_cflags"
+ c_warnings="$c_warnings $debug_extra_warnings"
+ cxx_warnings="$cxx_warnings $debug_extra_warnings"
+ extra_configs="$debug_configs $max_configs"
+ ;;
+ *)
+ echo "You need to give an argument, 'standard', 'max', 'debug' or 'debug-max'"
+ echo "Like: MODE=standard BUILD/compile-darwin-codewarrior"
+ exit 1
+ ;;
+ esac
+fi
+
+extra_configs="$extra_configs --with-darwin-mwcc"
+
+. "$path/FINISH.sh"
diff --git a/support-files/MacOSX/mwar-wrapper b/support-files/MacOSX/mwar-wrapper
new file mode 100755
index 00000000000..4bc5153e7ef
--- /dev/null
+++ b/support-files/MacOSX/mwar-wrapper
@@ -0,0 +1,16 @@
+#!/bin/sh
+
+# This script can only create a library, not take it apart
+# again to AR files
+
+case $1 in
+ -d*|-m*|-t*|-p*|-r*|-x*|x)
+ echo "$0: can't handle arguments $*"
+ exit 1;
+ ;;
+ -c|c|cr|cru|cu)
+ shift;
+ ;;
+esac
+
+exec mwld -lib -o $*
diff --git a/support-files/MacOSX/mwcc-wrapper b/support-files/MacOSX/mwcc-wrapper
new file mode 100755
index 00000000000..914578aca1d
--- /dev/null
+++ b/support-files/MacOSX/mwcc-wrapper
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+if [ -z "$CWINSTALL" ] ; then
+ echo "ERROR: You need to source 'mwvars' to set CWINSTALL and other variables"
+ exit 1
+fi
+
+if [ `expr "$MWMacOSXPPCLibraryFiles" : ".*BSD.*"` = 0 ] ; then
+ echo "ERROR: You need to source 'mwvars' with the 'bsd' argument"
+ exit 1
+fi
+
+# ==============================================================================
+
+# Extra options that don't change
+
+PREOPTS="-D__SCHAR_MAX__=127 -D__CHAR_BIT__=8 -ext o -gccinc"
+PREOPTS="$PREOPTS -wchar_t on -bool on -relax_pointers -align power_gcc"
+PREOPTS="$PREOPTS -stabs all -fno-handle-exceptions -Cpp_exceptions off"
+
+# ==============================================================================
+
+# We want the "PPC Specific" directory to be last, before the source
+# file. It is to work around a CodeWarrior/Apple bug, that we need a
+# Metrowersk header even though we have configured CodeWarrior to use
+# the BSD headers. But not to conflict, the directory has to be last.
+
+# FIXME this will probably break if one path contains space characters
+
+PREARGS=""
+for i in $* ; do
+ case "$i" in
+ -bind_at_load)
+ # This is a flag some version of libtool adds, when the host
+ # is "*darwin*". It doesn't check that it is gcc.
+ # FIXME add some flag?!
+ ;;
+ *.c|*.cc|*.cpp)
+ break
+ ;;
+ *)
+ PREARGS="$PREARGS $1"
+ ;;
+ esac
+ shift
+done
+#echo "mwcc $PREOPTS $PREARGS -I\"$CWINSTALL/MacOS X Support/Headers/PPC Specific\" $*"
+exec mwcc $PREOPTS $PREARGS -I"$CWINSTALL/MacOS X Support/Headers/PPC Specific" $*