diff -Naur mono-original/mono-3.0.1/configure.in mono-3.0.1/configure.in --- mono-original/mono-3.0.1/configure.in 2012-11-06 00:25:01.000000000 +0200 +++ mono-3.0.1/configure.in 2012-12-01 13:52:44.000000000 +0200 @@ -2455,7 +2455,16 @@ sizeof_register=8 target_byte_order=G_BIG_ENDIAN ;; - + arm*-darwin*) + TARGET=ARM; + arch_target=arm; + AC_DEFINE(TARGET_ARM, 1, [...]) + ACCESS_UNALIGNED="no" + CPPFLAGS="$CPPFLAGS -DARM_FPU_VFP=1 -D__ARM_EABI__ -DHAVE_ARMV6=1" + # libgc's gc_locks.h depends on this + NESTED_LIBGC_FLAGS="$NESTED_LIBGC_FLAGS -DHAVE_ARMV6" + with_tls=pthread + ;; powerpc64-xbox360-linux-gnu) TARGET=POWERPC64 arch_target=powerpc64 diff -Naur mono-original/mono-3.0.1/eglib/src/eglib-remap.h mono-3.0.1/eglib/src/eglib-remap.h --- mono-original/mono-3.0.1/eglib/src/eglib-remap.h 2012-11-06 00:26:12.000000000 +0200 +++ mono-3.0.1/eglib/src/eglib-remap.h 2012-12-01 14:02:51.000000000 +0200 @@ -1,3 +1,6 @@ +#include <crt_externs.h> +#define environ (* _NSGetEnviron()) + #define g_array_append monoeg_g_array_append #define g_array_append_vals monoeg_g_array_append_vals #define g_array_free monoeg_g_array_free diff -Naur mono-original/mono-3.0.1/mono/io-layer/processes.h mono-3.0.1/mono/io-layer/processes.h --- mono-original/mono-3.0.1/mono/io-layer/processes.h 2012-11-06 00:24:45.000000000 +0200 +++ mono-3.0.1/mono/io-layer/processes.h 2012-12-01 13:55:08.000000000 +0200 @@ -16,6 +16,9 @@ #include <mono/io-layer/access.h> #include <mono/io-layer/versioninfo.h> +#include <crt_externs.h> +#define environ (* _NSGetEnviron()) + G_BEGIN_DECLS typedef enum { @@ -164,25 +167,25 @@ #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xfff) extern gboolean ShellExecuteEx (WapiShellExecuteInfo *sei); -extern gboolean CreateProcess (const gunichar2 *appname, - const gunichar2 *cmdline, - WapiSecurityAttributes *process_attrs, - WapiSecurityAttributes *thread_attrs, - gboolean inherit_handles, guint32 create_flags, - gpointer environ, const gunichar2 *cwd, - WapiStartupInfo *startup, - WapiProcessInformation *process_info); +extern gboolean CreateProcess (const gunichar2 *appname, const gunichar2 *cmdline, + WapiSecurityAttributes *process_attrs G_GNUC_UNUSED, + WapiSecurityAttributes *thread_attrs G_GNUC_UNUSED, + gboolean inherit_handles, guint32 create_flags, + gpointer new_environ, const gunichar2 *cwd, + WapiStartupInfo *startup, + WapiProcessInformation *process_info); extern gboolean CreateProcessWithLogonW (const gunichar2 *username, - const gunichar2 *domain, - const gunichar2 *password, - const guint32 logonFlags, - const gunichar2 *appname, - const gunichar2 *cmdline, - guint32 create_flags, - gpointer environ, - const gunichar2 *cwd, - WapiStartupInfo *startup, - WapiProcessInformation *process_info); + const gunichar2 *domain, + const gunichar2 *password, + const guint32 logonFlags, + const gunichar2 *appname, + const gunichar2 *cmdline, + guint32 create_flags, + gpointer env, + const gunichar2 *cwd, + WapiStartupInfo *startup, + WapiProcessInformation *process_info); + #define LOGON_WITH_PROFILE 0x00000001 #define LOGON_NETCREDENTIALS_ONLY 0x00000002 diff -Naur mono-original/mono-3.0.1/mono/mini/Makefile.in mono-3.0.1/mono/mini/Makefile.in --- mono-original/mono-3.0.1/mono/mini/Makefile.in 2012-11-06 00:26:46.000000000 +0200 +++ mono-3.0.1/mono/mini/Makefile.in 2012-12-01 15:30:03.000000000 +0200 @@ -633,14 +633,14 @@ CCASFLAGS = @CCASFLAGS@ CCDEPMODE = @CCDEPMODE@ CC_FOR_BUILD = @CC_FOR_BUILD@ -CFLAGS = @CFLAGS@ -CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ +CFLAGS = -g -O0 -fno-strict-aliasing -Wdeclaration-after-statement -g -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wwrite-strings -Wno-switch-enum -Werror-implicit-function-declaration +CFLAGS_FOR_BUILD = -g -O0 CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ +CXXFLAGS = -g -O0 CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ --- mono-original/mono-3.0.1/mono/mini/mini-arm.c 2012-11-06 00:24:45.000000000 +0200 +++ mono-3.0.1/mono/mini/mini-arm.c 2012-12-02 00:14:50.000000000 +0200 @@ -15,6 +15,7 @@ #include <mono/metadata/appdomain.h> #include <mono/metadata/debug-helpers.h> #include <mono/utils/mono-mmap.h> +#include <libkern/OSCacheControl.h> #include "mini-arm.h" #include "cpu-arm.h"