From 7c987d10f012e2f175344fa2c28b36f073bda293 Mon Sep 17 00:00:00 2001 From: Ian Lynagh Date: Sun, 17 Jun 2012 21:49:18 +0100 Subject: [PATCH] Switch to using the 'rubenvb' mingw builds --- aclocal.m4 | 15 +++++---------- configure.ac | 7 +++---- mk/config.mk.in | 6 +++--- rts/PosixSource.h | 4 ++++ 4 files changed, 15 insertions(+), 17 deletions(-) diff --git a/aclocal.m4 b/aclocal.m4 index d873034b1a..a43b24ae36 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -363,18 +363,13 @@ AC_DEFUN([FP_SETTINGS], [ if test "$windows" = YES then - if test "$HostArch" = "x86_64" - then - mingw_bin_prefix=x86_64-w64-mingw32- - else - mingw_bin_prefix= - fi - SettingsCCompilerCommand="\$topdir/../mingw/bin/${mingw_bin_prefix}gcc.exe" + mingw_bin_prefix=mingw/bin/ + SettingsCCompilerCommand="\$topdir/../${mingw_bin_prefix}gcc.exe" SettingsCCompilerFlags="$CONF_CC_OPTS_STAGE2 $CONF_GCC_LINKER_OPTS_STAGE2" - SettingsArCommand="\$topdir/../mingw/bin/${mingw_bin_prefix}ar.exe" + SettingsArCommand="\$topdir/../${mingw_bin_prefix}ar.exe" SettingsPerlCommand='$topdir/../perl/perl.exe' - SettingsDllWrapCommand="\$topdir/../mingw/bin/${mingw_bin_prefix}dllwrap.exe" - SettingsWindresCommand="\$topdir/../mingw/bin/${mingw_bin_prefix}windres.exe" + SettingsDllWrapCommand="\$topdir/../${mingw_bin_prefix}dllwrap.exe" + SettingsWindresCommand="\$topdir/../${mingw_bin_prefix}windres.exe" SettingsTouchCommand='$topdir/touchy.exe' else SettingsCCompilerCommand="$WhatGccIsCalled" diff --git a/configure.ac b/configure.ac index f631fd3131..e1b4db0d73 100644 --- a/configure.ac +++ b/configure.ac @@ -315,25 +315,24 @@ then PATH=`pwd`/inplace/mingw/bin:$PATH inplace/mingw/bin/realgcc.exe driver/gcc/gcc.c driver/utils/cwrapper.c driver/utils/getLocation.c -Idriver/utils -o inplace/mingw/bin/gcc.exe AC_MSG_NOTICE([In-tree mingw tree created]) fi - mingwbin="$hardtop/inplace/mingw/bin/" else # NB. If you update the tarballs to a new version of gcc, don't # forget to tweak the paths in driver/gcc/gcc.c. if ! test -d inplace/mingw || - test inplace/mingw -ot ghc-tarballs/mingw64/mingw-w64-bin_*.zip + test inplace/mingw -ot ghc-tarballs/mingw64/*.tar.bz2 then AC_MSG_NOTICE([Making in-tree mingw tree]) rm -rf inplace/mingw mkdir inplace/mingw ( cd inplace/mingw && - unzip ../../ghc-tarballs/mingw64/mingw-w64-bin_*.zip + tar -jxf ../../ghc-tarballs/mingw64/*.tar.bz2 ) AC_MSG_NOTICE([In-tree mingw tree created]) fi - mingwbin="$hardtop/inplace/mingw/bin/x86_64-w64-mingw32-" fi + mingwbin="$hardtop/inplace/mingw/bin/" CC="${mingwbin}gcc.exe" LD="${mingwbin}ld.exe" NM="${mingwbin}nm.exe" diff --git a/mk/config.mk.in b/mk/config.mk.in index 1cf8685383..36b277b979 100644 --- a/mk/config.mk.in +++ b/mk/config.mk.in @@ -627,7 +627,7 @@ endif ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32" WINDRES = $(INPLACE_MINGW)/bin/windres else ifeq "$(TARGETPLATFORM)" "x86_64-unknown-mingw32" -WINDRES = $(INPLACE_MINGW)/bin/x86_64-w64-mingw32-windres +WINDRES = $(INPLACE_MINGW)/bin/windres endif #----------------------------------------------------------------------------- @@ -637,7 +637,7 @@ HaveLibMingwEx = @HaveLibMingwEx@ ifeq "$(TARGETPLATFORM)" "i386-unknown-mingw32" DLLTOOL = inplace/mingw/bin/dlltool.exe else ifeq "$(TARGETPLATFORM)" "x86_64-unknown-mingw32" -DLLTOOL = inplace/mingw/bin/x86_64-w64-mingw32-dlltool.exe +DLLTOOL = inplace/mingw/bin/dlltool.exe endif #----------------------------------------------------------------------------- @@ -771,7 +771,7 @@ endif REAL_SHELL = $(SHELL) ifeq "$(TARGETPLATFORM)" "x86_64-unknown-mingw32" -STRIP_CMD = $(TOP)/inplace/mingw/bin/x86_64-w64-mingw32-strip.exe +STRIP_CMD = $(TOP)/inplace/mingw/bin/strip.exe else STRIP_CMD = strip endif diff --git a/rts/PosixSource.h b/rts/PosixSource.h index 56e08abb0e..da7b69e85d 100644 --- a/rts/PosixSource.h +++ b/rts/PosixSource.h @@ -25,6 +25,10 @@ // On both GNU libc and FreeBSD, _ISOC99_SOURCE is implied by // _XOPEN_SOURCE==600, but on Solaris it is an error to omit it. #define _ISOC99_SOURCE +// Defining __USE_MINGW_ANSI_STDIO is the most portable way to tell +// mingw that we want to use the standard %lld style format specifiers, +// rather than the Windows %I64d style +#define __USE_MINGW_ANSI_STDIO 1 #endif #if defined(darwin_HOST_OS) -- GitLab