Forráskód Böngészése

2010-04-03 Marek Habersack <[email protected]>

	* configure.in: TARGET_WIN32 is defined when cross-compiling with
	MinGW

	* build-mingw32.sh: include the 4.0 profile in the zip.
	Remove cross-compilation environment bin path from PATH before
	compiling native Mono.
	Remove autotools cache directory before each compilation phase.

2010-04-03  Marek Habersack  <[email protected]>

	* process.c: when compiling with MinGW, force GetProcessId lookup
	using GetProcessAddress.

svn path=/trunk/mono/; revision=154743
Marek Habersack 15 éve
szülő
commit
6137f6e27d
5 módosított fájl, 31 hozzáadás és 2 törlés
  1. 10 0
      ChangeLog
  2. 9 2
      build-mingw32.sh
  3. 3 0
      configure.in
  4. 5 0
      mono/metadata/ChangeLog
  5. 4 0
      mono/metadata/process.c

+ 10 - 0
ChangeLog

@@ -1,3 +1,13 @@
+2010-04-03  Marek Habersack  <[email protected]>
+
+	* configure.in: TARGET_WIN32 is defined when cross-compiling with
+	MinGW
+
+	* build-mingw32.sh: include the 4.0 profile in the zip.
+	Remove cross-compilation environment bin path from PATH before
+	compiling native Mono.
+	Remove autotools cache directory before each compilation phase.
+
 2010-04-02  Marek Habersack  <[email protected]>
 
 	* configure.in: include -lkernel32 in LDFLAGS when cross-compiling

+ 9 - 2
build-mingw32.sh

@@ -4,8 +4,9 @@ MINGW=i386-mingw32msvc
 CROSS_DIR=/opt/cross/$MINGW
 COPY_DLLS="libgio*.dll libglib*.dll libgmodule*.dll libgthread*.dll libgobject*.dll"
 INSTALL_DESTDIR="$CURDIR/mono-win32"
-PROFILES="default net_2_0 moonlight net_3_5"
+PROFILES="default net_2_0 net_3_5 net_4_0 moonlight"
 TEMPORARY_PKG_CONFIG_DIR=/tmp/$RANDOM-pkg-config-$RANDOM
+ORIGINAL_PATH="$PATH"
 
 export CPPFLAGS_FOR_EGLIB CFLAGS_FOR_EGLIB CPPFLAGS_FOR_LIBGC CFLAGS_FOR_LIBGC
 
@@ -69,6 +70,7 @@ function build ()
 
     if [ -f ./Makefile ]; then
 	make distclean
+	rm -rf autom4te.cache
     fi
 
     if [ ! -d "$CURDIR/build-cross-windows" ]; then
@@ -77,13 +79,18 @@ function build ()
 
     cd "$CURDIR/build-cross-windows"
     rm -rf *
-    ../configure --prefix=$MONO_PREFIX --with-crosspkgdir=$CROSS_PKG_CONFIG_DIR --build=$BUILD --target=$MINGW --host=$MINGW --enable-parallel-mark --program-transform-name="" --with-tls=none --disable-mcs-build --disable-embed-check --enable-win32-dllmain=yes --with-libgc-threads=win32
+    ../configure --prefix=$MONO_PREFIX --with-crosspkgdir=$CROSS_PKG_CONFIG_DIR --build=$BUILD --target=$MINGW --host=$MINGW --enable-parallel-mark --program-transform-name="" --with-tls=none --disable-mcs-build --disable-embed-check --enable-win32-dllmain=yes --with-libgc-threads=win32 --with-profile4=yes
     make
     cd "$CURDIR"
 
     if [ ! -d "$CURDIR/build-cross-windows-mcs" ]; then
 	mkdir "$CURDIR/build-cross-windows-mcs"
     fi
+
+    rm -rf autom4te.cache
+    unset PATH
+    PATH="$ORIGINAL_PATH"
+    export PATH
     cd "$CURDIR/build-cross-windows-mcs"
     rm -rf *
     ../configure --prefix=$MONO_PREFIX --enable-parallel-mark

+ 3 - 0
configure.in

@@ -92,6 +92,9 @@ case "$host" in
 			# So libgc configure gets -mno-cygwin
 			export CC
 			export CXX
+		else
+			target_win32=yes
+			AC_DEFINE(TARGET_WIN32,1,[Target OS is Win32/MinGW])
 		fi
 		HOST_CC="gcc"
 		# Windows 2000 is required that includes Internet Explorer 5.01

+ 5 - 0
mono/metadata/ChangeLog

@@ -1,3 +1,8 @@
+2010-04-03  Marek Habersack  <[email protected]>
+
+	* process.c: when compiling with MinGW, force GetProcessId lookup
+	using GetProcessAddress.
+
 2010-04-02  Mark Probst  <[email protected]>
 
 	* sgen-gc.c: parse_environment_string_extract_number() must be

+ 4 - 0
mono/metadata/process.c

@@ -510,6 +510,10 @@ complete_path (const gunichar2 *appname, gchar **completed)
 	return TRUE;
 }
 
+#if defined (__MINGW32__) && defined (HAVE_GETPROCESSID)
+#undef HAVE_GETPROCESSID
+#endif
+
 #ifndef HAVE_GETPROCESSID
 /* Run-time GetProcessId detection for Windows */
 #ifdef TARGET_WIN32