From patchwork Wed Nov 14 13:08:19 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yann Diorcet X-Patchwork-Id: 198901 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id E47372C007A for ; Thu, 15 Nov 2012 00:08:42 +1100 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=sourceware.org; s=default; x=1353503323; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Received:Content-Type:MIME-Version:Content-Transfer-Encoding: Subject:Message-Id:User-Agent:Date:From:To:Cc:Mailing-List: Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive: List-Post:List-Help:Sender:Delivered-To; bh=NW/raQFRAGzoiCL6QAO3 gSvaIuc=; b=HtWyEXDUPCXorW3AOaAKPvE2USkHPC9mB/tC0MNn1aX9qYMfZs0o Kk6FEETeJwQmsfhIZMg/wcOYKSMqY4J++JRmdqj+NCDsSdds30qHIP/X5B78DJ37 0esV/EqHNUJbC1sv7Xznr1edub/sXvyiFK2AFSIGvuoD7Etkyg5f30U= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=sourceware.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:Received:Received:Content-Type:MIME-Version:Content-Transfer-Encoding:Subject:X-Mercurial-Node:Message-Id:User-Agent:Date:From:To:Cc:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=eFnAoWdeFRgeYJM4LGLm7zUJcKjjR7LJYlqYCcG9lIA0izAZqQXFCejci9Cq7L HOATkqJo63zSxClr/SjFNA+viqYEF3wxMJOg/YeF/4tAVg97Kei05OH1DPt4qPqF ouf/pWp8GfrY2VTBPB23f/6lvemDFoU5wylp5pYQVv4I4=; Received: (qmail 24062 invoked by alias); 14 Nov 2012 13:08:37 -0000 Received: (qmail 23876 invoked by uid 22791); 14 Nov 2012 13:08:36 -0000 X-SWARE-Spam-Status: No, hits=-2.3 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, KHOP_RCVD_TRUST, LONGWORDS, RCVD_IN_DNSWL_LOW, RCVD_IN_HOSTKARMA_YE, TW_BG X-Spam-Check-By: sourceware.org Received: from mail-wg0-f43.google.com (HELO mail-wg0-f43.google.com) (74.125.82.43) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 14 Nov 2012 13:08:27 +0000 Received: by mail-wg0-f43.google.com with SMTP id dq11so153560wgb.12 for ; Wed, 14 Nov 2012 05:08:25 -0800 (PST) Received: by 10.180.100.132 with SMTP id ey4mr6901116wib.9.1352898505247; Wed, 14 Nov 2012 05:08:25 -0800 (PST) Received: from [127.0.1.1] ([2a01:e35:2ec9:ab70:a00:27ff:fec3:c819]) by mx.google.com with ESMTPS id ei1sm2371708wid.7.2012.11.14.05.08.23 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 14 Nov 2012 05:08:24 -0800 (PST) MIME-Version: 1.0 Subject: [PATCH] Replace the 32-bit-only mingw32 with mingw-w64 that is capable X-Mercurial-Node: b045ac08fc9eac2e5ee356f4898ae7968b85805d Message-Id: User-Agent: Mercurial-patchbomb/2.2.2 Date: Wed, 14 Nov 2012 14:08:19 +0100 From: Yann Diorcet To: "Yann E. MORIN" Cc: crossgcc@sourceware.org X-IsSubscribed: yes Mailing-List: contact crossgcc-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: crossgcc-owner@sourceware.org Delivered-To: mailing list crossgcc@sourceware.org # HG changeset patch # User Yann Diorcet # Date 1352898349 -3600 # Node ID b045ac08fc9eac2e5ee356f4898ae7968b85805d # Parent cfb1783d4cb8b588ca9d7f4d8e8a3394e10b1c97 Replace the 32-bit-only mingw32 with mingw-w64 that is capable of building toolchains for both 32-bit and 64-bit Windows. kernel/mingw: replace mingw32 with generic Windows kernel/windows: New windows kernel supporting 32 and 64 bit arch libc/mingw: Remove old options patches: Remove old mingw libc options' patches Signed-off-by: "Yann Diorcet" --- For unsubscribe information see http://sourceware.org/lists.html#faq diff -r cfb1783d4cb8 -r b045ac08fc9e config/kernel.in --- a/config/kernel.in Fri Nov 09 18:22:31 2012 +0100 +++ b/config/kernel.in Wed Nov 14 14:05:49 2012 +0100 @@ -7,7 +7,7 @@ config BARE_METAL bool -config MINGW32 +config WINDOWS bool # Each target OS (aka kernel) that support shared libraries can select diff -r cfb1783d4cb8 -r b045ac08fc9e config/kernel/mingw32.in --- a/config/kernel/mingw32.in Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,33 +0,0 @@ -# mingw32 config options - -## depends on EXPERIMENTAL && ( ARCH_x86 && ARCH_32 ) -## -## select MINGW32 -## -## help Build a toolchain targeting systems running Windows as host - -choice - bool - prompt "Windows api version" - -# Don't remove next line -# CT_INSERT_VERSION_BELOW -config W32API_V_3_14 - bool - prompt "3.14" - -config W32API_V_select - bool - prompt "Other version" - -endchoice - -config W32API_VERSION - string - prompt "W32 api version" if W32API_V_select -# Don't remove next line -# CT_INSERT_VERSION_STRING_BELOW - default "3.14" if W32API_V_3_14 - help - Enter the version number of the windows api files to use - diff -r cfb1783d4cb8 -r b045ac08fc9e config/kernel/windows.in --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/config/kernel/windows.in Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,7 @@ +# windows config options + +## depends on EXPERIMENTAL && ( ARCH_x86 ) +## +## select WINDOWS +## +## help Build a toolchain targeting systems running Windows as host diff -r cfb1783d4cb8 -r b045ac08fc9e config/libc/eglibc.in --- a/config/libc/eglibc.in Fri Nov 09 18:22:31 2012 +0100 +++ b/config/libc/eglibc.in Wed Nov 14 14:05:49 2012 +0100 @@ -1,6 +1,6 @@ # eglibc options -## depends on ! MINGW32 && ! BARE_METAL && ARCH_USE_MMU +## depends on ! WINDOWS && ! BARE_METAL && ARCH_USE_MMU ## ## select LIBC_SUPPORT_NPTL ## select LIBC_SUPPORT_LINUXTHREADS diff -r cfb1783d4cb8 -r b045ac08fc9e config/libc/glibc.in --- a/config/libc/glibc.in Fri Nov 09 18:22:31 2012 +0100 +++ b/config/libc/glibc.in Wed Nov 14 14:05:49 2012 +0100 @@ -1,6 +1,6 @@ # glibc options -## depends on ! MINGW32 && ! BARE_METAL && ARCH_USE_MMU +## depends on ! WINDOWS && ! BARE_METAL && ARCH_USE_MMU ## ## select LIBC_SUPPORT_NPTL ## diff -r cfb1783d4cb8 -r b045ac08fc9e config/libc/mingw.in --- a/config/libc/mingw.in Fri Nov 09 18:22:31 2012 +0100 +++ b/config/libc/mingw.in Wed Nov 14 14:05:49 2012 +0100 @@ -1,6 +1,6 @@ # mingw options -## depends on MINGW32 +## depends on WINDOWS ## ## select LIBC_SUPPORT_WIN32THREADS ## @@ -8,26 +8,33 @@ choice bool - prompt "Mingw runtime version" + prompt "Windows API version" # Don't remove next line # CT_INSERT_VERSION_BELOW -config MINGWRT_V_3_18 +config WINAPI_V_2_0_7 bool - prompt "3.18" + prompt "2.0.7" -config MINGWRT_V_select +config WINAPI_V_select bool prompt "Other version" endchoice -config MINGWRT_VERSION +config WINAPI_VERSION string - prompt "Mingw runtime version" if MINGWRT_V_select + prompt "Windoows API version" if WINAPI_V_select # Don't remove next line # CT_INSERT_VERSION_STRING_BELOW - default "3.18" if MINGWRT_V_3_18 + default "2.0.7" if WINAPI_V_2_0_7 help - Enter the version number of the mingw runtime files to use + Enter the version number of the Windows API files to use +config MINGW_DIRECTX + bool + prompt "Include DirectX development files" + +config MINGW_DDK + bool + prompt "Include DDK development files" diff -r cfb1783d4cb8 -r b045ac08fc9e config/libc/mingw.in.2 --- a/config/libc/mingw.in.2 Fri Nov 09 18:22:31 2012 +0100 +++ b/config/libc/mingw.in.2 Wed Nov 14 14:05:49 2012 +0100 @@ -1,72 +1,1 @@ # Part-2 of mingw C library options: development libraries - -config MINGW_DIRECTX - bool - prompt "Include DirectX development files" - -config MINGW_OPENGL - bool - prompt "Include OpenGL development files" - -config MINGW_PDCURSES - bool - prompt "Include PDCurses (NCurses library) development files" - -choice - bool - prompt "PDCurses library version" - depends on MINGW_PDCURSES - -config MINGW_PDCURSES_V_3_4 - bool - prompt "3.4" - -# CT_INSERT_VERSION_ABOVE -# Don't remove above line! - -config MINGW_PDCURSES_V_select - bool - prompt "Other version" - -endchoice - -config MINGW_PDCURSES_VERSION - string - prompt "PDCurses library version" if MINGW_PDCURSES_V_select - default "3.4" if MINGW_PDCURSES_V_3_4 -# CT_INSERT_VERSION_STRING_ABOVE -# Don't remove above line! - help - Enter the version number of the PDCurses library to use - -config MINGW_GNURX - bool - prompt "Include GnuRX (regex library) development files" - -choice - bool - prompt "GnuRX library version" - depends on MINGW_GNURX - -config MINGW_GNURX_V_2_5_1 - bool - prompt "2.5.1" - -# CT_INSERT_VERSION_ABOVE -# Don't remove above line! - -config MINGW_GNURX_V_select - bool - prompt "Other version" - -endchoice - -config MINGW_GNURX_VERSION - string - prompt "GnuRX library version" if MINGW_GNURX_V_select - default "2.5.1" if MINGW_GNURX_V_2_5_1 -# CT_INSERT_VERSION_STRING_ABOVE -# Don't remove above line! - help - Enter the version number of the Regex library to use - diff -r cfb1783d4cb8 -r b045ac08fc9e config/libc/uClibc.in --- a/config/libc/uClibc.in Fri Nov 09 18:22:31 2012 +0100 +++ b/config/libc/uClibc.in Wed Nov 14 14:05:49 2012 +0100 @@ -1,6 +1,6 @@ # uClibc options -## depends on ! MINGW32 && ! BARE_METAL +## depends on ! WINDOWS && ! BARE_METAL ## ## select LIBC_SUPPORT_LINUXTHREADS ## select LIBC_SUPPORT_THREADS_NONE diff -r cfb1783d4cb8 -r b045ac08fc9e patches/PDCurses/3.4/mingw32_cross_compile.patch --- a/patches/PDCurses/3.4/mingw32_cross_compile.patch Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,87 +0,0 @@ ---- PDCurses-3.4.orig/win32/mingwin32.mak 2009-11-02 13:50:11.000000000 +0100 -+++ PDCurses-3.4/win32/mingwin32.mak 2009-11-02 13:53:43.000000000 +0100 -@@ -18,7 +18,7 @@ - - PDCURSES_WIN_H = $(osdir)/pdcwin.h - --CC = gcc -+CC = $(CROSS_COMPILE)gcc - - ifeq ($(DEBUG),Y) - CFLAGS = -g -Wall -DPDCDEBUG -@@ -30,8 +30,8 @@ - - CFLAGS += -I$(PDCURSES_SRCDIR) - --BASEDEF = $(PDCURSES_SRCDIR)\exp-base.def --WIDEDEF = $(PDCURSES_SRCDIR)\exp-wide.def -+BASEDEF = $(PDCURSES_SRCDIR)/exp-base.def -+WIDEDEF = $(PDCURSES_SRCDIR)/exp-wide.def - - DEFDEPS = $(BASEDEF) - -@@ -46,17 +46,17 @@ - - DEFFILE = pdcurses.def - --LINK = gcc -+LINK = $(CROSS_COMPILE)gcc - - ifeq ($(DLL),Y) - CFLAGS += -DPDC_DLL_BUILD -- LIBEXE = gcc $(DEFFILE) -+ LIBEXE = $(CROSS_COMPILE)gcc $(DEFFILE) - LIBFLAGS = -Wl,--out-implib,pdcurses.a -shared -o - LIBCURSES = pdcurses.dll - LIBDEPS = $(LIBOBJS) $(PDCOBJS) $(DEFFILE) - CLEAN = $(LIBCURSES) *.a $(DEFFILE) - else -- LIBEXE = ar -+ LIBEXE = $(CROSS_COMPILE)ar - LIBFLAGS = rcv - LIBCURSES = pdcurses.a - LIBDEPS = $(LIBOBJS) $(PDCOBJS) -@@ -70,24 +70,24 @@ - libs: $(LIBCURSES) - - clean: -- -del *.o -- -del *.exe -- -del $(CLEAN) -+ -rm *.o -+ -rm *.exe -+ -rm $(CLEAN) - - demos: $(DEMOS) -- strip *.exe -+ $(CROSS_COMPILE)strip *.exe - - $(DEFFILE): $(DEFDEPS) - echo LIBRARY pdcurses > $@ - echo EXPORTS >> $@ -- type $(BASEDEF) >> $@ -+ cat $(BASEDEF) >> $@ - ifeq ($(WIDE),Y) -- type $(WIDEDEF) >> $@ -+ cat $(WIDEDEF) >> $@ - endif - - $(LIBCURSES) : $(LIBDEPS) - $(LIBEXE) $(LIBFLAGS) $@ $? -- -copy pdcurses.a panel.a -+ -cp pdcurses.a panel.a - - $(LIBOBJS) $(PDCOBJS) : $(PDCURSES_HEADERS) - $(PDCOBJS) : $(PDCURSES_WIN_H) ---- PDCurses-3.4.orig/curses.h 2009-11-03 14:12:18.000000000 +0100 -+++ PDCurses-3.4./curses.h 2009-11-03 14:14:09.000000000 +0100 -@@ -82,7 +82,9 @@ - * - */ - -+#ifndef __bool_true_false_are_defined - typedef unsigned char bool; /* PDCurses Boolean type */ -+#endif - - #ifdef CHTYPE_LONG - # if _LP64 diff -r cfb1783d4cb8 -r b045ac08fc9e patches/mingw-libgnurx/2.5.1/build-static-library.patch --- a/patches/mingw-libgnurx/2.5.1/build-static-library.patch Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,103 +0,0 @@ ---- mingw-libgnurx-2.5.1.orig/configure 2009-11-03 08:19:15.000000000 +0100 -+++ mingw-libgnurx-2.5.1/configure 2009-11-03 08:31:37.000000000 +0100 -@@ -273,7 +273,7 @@ - PACKAGE_STRING='MinGW libgnurx 2.5.1' - PACKAGE_BUGREPORT='https://sourceforge.net/tracker/?group_id=2435&atid=102435' - --ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CC_QUALIFIED DLLVERSION ZIPCMD ZIPEXT MSVCLIB ac_ct_MSVCLIB GNURX_LIB install_dev LIBOBJS LTLIBOBJS' -+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CC_QUALIFIED AR DLLVERSION ZIPCMD ZIPEXT MSVCLIB ac_ct_MSVCLIB GNURX_LIB install_dev LIBOBJS LTLIBOBJS' - ac_subst_files='' - - # Initialize some variables set by options. -@@ -2190,21 +2190,54 @@ - - fi - rm -f conftest.err conftest.$ac_objext conftest.$ac_ext --ac_ext=c --ac_cpp='$CPP $CPPFLAGS' --ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' --ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' --ac_compiler_gnu=$ac_cv_c_compiler_gnu - -- ac_ext=c -+ -+for ac_prog in ar; do -+set dummy ${ac_tool_prefix}$ac_prog; ac_word=$2 -+echo "$as_me:$LINENO: checking for $ac_word" >&5 -+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 -+if test "${ac_cv_prog_AR+set}" = set; then -+ echo $ECHO_N "(cached) $ECHO_C" >&6 -+else -+ if test -n "$AR"; then -+ ac_cv_prog_AR="$AR" # Let the user override the test. -+else -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then -+ ac_cv_prog_AR="$ac_tool_prefix$ac_prog" -+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 -+ break 2 -+ fi -+done -+done -+ -+ test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" -+fi -+fi -+AR=$ac_cv_prog_AR -+if test -n "$AR"; then -+ echo "$as_me:$LINENO: result: $AR" >&5 -+echo "${ECHO_T}$AR" >&6 -+else -+ echo "$as_me:$LINENO: result: no" >&5 -+echo "${ECHO_T}no" >&6 -+fi -+done -+ -+ac_ext=c - ac_cpp='$CPP $CPPFLAGS' - ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' - ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' - ac_compiler_gnu=$ac_cv_c_compiler_gnu - -- popCFLAGS=$CFLAGS -- echo 'int main(void){return 0;}' > conftest.$ac_ext -- echo "$as_me:$LINENO: checking whether $CC accepts the -mthreads option" >&5 -+popCFLAGS=$CFLAGS -+echo 'int main(void){return 0;}' > conftest.$ac_ext -+echo "$as_me:$LINENO: checking whether $CC accepts the -mthreads option" >&5 - echo $ECHO_N "checking whether $CC accepts the -mthreads option... $ECHO_C" >&6 - CFLAGS="$popCFLAGS $CC_QUALIFIED -mthreads" - if (eval $ac_compile) 2>&5; then -@@ -3038,6 +3069,7 @@ - s,@EXEEXT@,$EXEEXT,;t t - s,@OBJEXT@,$OBJEXT,;t t - s,@CC_QUALIFIED@,$CC_QUALIFIED,;t t -+s,@AR@,$AR,;t t - s,@DLLVERSION@,$DLLVERSION,;t t - s,@ZIPCMD@,$ZIPCMD,;t t - s,@ZIPEXT@,$ZIPEXT,;t t ---- mingw-libgnurx-2.5.1.orig/Makefile.in 2009-11-03 08:17:49.000000000 +0100 -+++ mingw-libgnurx-2.5.1/Makefile.in 2009-11-03 08:57:37.000000000 +0100 -@@ -39,6 +39,7 @@ - mandir = @mandir@ - - CC = @CC_QUALIFIED@ -+AR = @AR@ - CFLAGS = @CFLAGS@ -I ${srcdir} - LDFLAGS = @LDFLAGS@ - -@@ -67,8 +68,8 @@ - libgnurx-$(DLLVERSION).dll libgnurx.dll.a: $(OBJECTS) - $(CC) $(CFLAGS) -shared -o libgnurx-$(DLLVERSION).dll $(LDFLAGS) $(OBJECTS) - --libregex.a: libgnurx.dll.a -- cp -p libgnurx.dll.a $@ -+libregex.a: $(OBJECTS) -+ $(AR) cru $@ $(OBJECTS) - - gnurx.lib: libgnurx-$(DLLVERSION).dll diff -r cfb1783d4cb8 -r b045ac08fc9e samples/i686-pc-mingw32/crosstool.config --- a/samples/i686-pc-mingw32/crosstool.config Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,20 +0,0 @@ -CT_EXPERIMENTAL=y -CT_LOCAL_TARBALLS_DIR="${HOME}/src" -CT_SAVE_TARBALLS=y -CT_LOG_EXTRA=y -CT_ARCH_ARCH="i686" -CT_ARCH_x86=y -CT_TARGET_VENDOR="pc" -CT_KERNEL_mingw32=y -CT_BINUTILS_V_2_21_1a=y -CT_BINUTILS_PLUGINS=y -CT_CC_V_4_4_5=y -CT_CC_LANG_CXX=y -CT_MINGW_DIRECTX=y -CT_MINGW_OPENGL=y -CT_MINGW_PDCURSES=y -CT_MINGW_GNURX=y -CT_GMP_V_4_3_2=y -CT_MPFR_V_2_4_1=y -CT_PPL_V_0_10_2=y -CT_CLOOG_V_0_15_10=y diff -r cfb1783d4cb8 -r b045ac08fc9e samples/i686-pc-mingw32/reported.by --- a/samples/i686-pc-mingw32/reported.by Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -reporter_name="Bart vdr. Meulen " -reporter_url="" -reporter_comment="Config to build cross-compiler with mingw as kernel type" diff -r cfb1783d4cb8 -r b045ac08fc9e samples/i686-unknown-mingw32/crosstool.config --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/samples/i686-unknown-mingw32/crosstool.config Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,18 @@ +CT_EXPERIMENTAL=y +CT_LOCAL_TARBALLS_DIR="${HOME}/src" +CT_SAVE_TARBALLS=y +CT_LOG_EXTRA=y +CT_ARCH_ARCH="i686" +CT_ARCH_32=y +CT_ARCH_x86=y +CT_KERNEL_windows=y +CT_BINUTILS_V_2_21_1a=y +CT_BINUTILS_PLUGINS=y +CT_CC_V_4_5_2=y +CT_CC_LANG_CXX=y +CT_MINGW_DIRECTX=y +CT_MINGW_DDK=y +CT_GMP_V_4_3_2=y +CT_MPFR_V_2_4_2=y +CT_PPL_V_0_10_2=y +CT_CLOOG_V_0_15_10=y diff -r cfb1783d4cb8 -r b045ac08fc9e samples/i686-unknown-mingw32/reported.by --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/samples/i686-unknown-mingw32/reported.by Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,4 @@ +reporter_name="Yann Diorcet " +reporter_url="" +reporter_comment="Config to build cross-compiler with mingw as kernel type for +32 bits Windows target" diff -r cfb1783d4cb8 -r b045ac08fc9e samples/x86_64-unknown-mingw32/crosstool.config --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/samples/x86_64-unknown-mingw32/crosstool.config Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,17 @@ +CT_EXPERIMENTAL=y +CT_LOCAL_TARBALLS_DIR="${HOME}/src" +CT_SAVE_TARBALLS=y +CT_LOG_EXTRA=y +CT_ARCH_64=y +CT_ARCH_x86=y +CT_KERNEL_windows=y +CT_BINUTILS_V_2_21_1a=y +CT_BINUTILS_PLUGINS=y +CT_CC_V_4_5_2=y +CT_CC_LANG_CXX=y +CT_MINGW_DIRECTX=y +CT_MINGW_DDK=y +CT_GMP_V_4_3_2=y +CT_MPFR_V_2_4_2=y +CT_PPL_V_0_10_2=y +CT_CLOOG_V_0_15_10=y diff -r cfb1783d4cb8 -r b045ac08fc9e samples/x86_64-unknown-mingw32/reported.by --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/samples/x86_64-unknown-mingw32/reported.by Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,4 @@ +reporter_name="Yann Diorcet " +reporter_url="" +reporter_comment="Config to build cross-compiler with mingw as kernel type for +64 bits Windows target" diff -r cfb1783d4cb8 -r b045ac08fc9e scripts/build/kernel/mingw32.sh --- a/scripts/build/kernel/mingw32.sh Fri Nov 09 18:22:31 2012 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -# This file declares functions to install the kernel headers for mingw -# Copyright 2009 Bart vdr. Meulen -# Licensed under the GPL v2. See COPYING in the root of this package - -CT_DoKernelTupleValues() { - CT_TARGET_KERNEL="mingw32" - CT_TARGET_SYS= -} - -do_kernel_get() { - CT_GetFile "w32api-${CT_W32API_VERSION}-mingw32-src" \ - http://downloads.sourceforge.net/sourceforge/mingw -} - -do_kernel_extract() { - CT_Extract "w32api-${CT_W32API_VERSION}-mingw32-src" -} - -do_kernel_headers() { - CT_DoStep INFO "Installing kernel headers" - - mkdir -p "${CT_HEADERS_DIR}" - cp -r ${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32-src/include/* \ - ${CT_HEADERS_DIR} - - CT_EndStep -} diff -r cfb1783d4cb8 -r b045ac08fc9e scripts/build/kernel/windows.sh --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/build/kernel/windows.sh Wed Nov 14 14:05:49 2012 +0100 @@ -0,0 +1,22 @@ +# This file declares functions to install the kernel headers for mingw64 +# Copyright 2012 Yann Diorcet +# Licensed under the GPL v2. See COPYING in the root of this package + +CT_DoKernelTupleValues() { + # Even we compile for x86_64 target architecture, the target OS have to + # bet mingw32 (require by gcc and mingw-w64) + CT_TARGET_KERNEL="mingw32" + CT_TARGET_SYS= +} + +do_kernel_get() { + : +} + +do_kernel_extract() { + : +} + +do_kernel_headers() { + : +} diff -r cfb1783d4cb8 -r b045ac08fc9e scripts/build/libc/mingw.sh --- a/scripts/build/libc/mingw.sh Fri Nov 09 18:22:31 2012 +0100 +++ b/scripts/build/libc/mingw.sh Wed Nov 14 14:05:49 2012 +0100 @@ -1,36 +1,16 @@ -do_libc_get() { - CT_GetFile "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" \ - http://downloads.sourceforge.net/sourceforge/mingw +# Copyright 2012 Yann Diorcet +# Licensed under the GPL v2. See COPYING in the root of this package - if [ -n "${CT_MINGW_DIRECTX}" ]; then - CT_GetFile "directx-devel" \ - http://www.libsdl.org/extras/win32/common - fi - if [ -n "${CT_MINGW_OPENGL}" ]; then - CT_GetFile "opengl-devel" \ - http://www.libsdl.org/extras/win32/common - fi - if [ -n "${CT_MINGW_PDCURSES}" ]; then - CT_GetFile "PDCurses-${CT_MINGW_PDCURSES_VERSION}" \ - http://downloads.sourceforge.net/sourceforge/pdcurses - fi - if [ -n "${CT_MINGW_GNURX}" ]; then - CT_GetFile "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src" \ - http://downloads.sourceforge.net/sourceforge/mingw - fi +do_libc_get() { + CT_GetFile "mingw-w64-v${CT_WINAPI_VERSION}" \ + http://downloads.sourceforge.net/sourceforge/mingw-w64 } do_libc_extract() { - CT_Extract "mingwrt-${CT_MINGWRT_VERSION}-mingw32-src" - - if [ -n "${CT_MINGW_PDCURSES}" ]; then - CT_Extract "PDCurses-${CT_MINGW_PDCURSES_VERSION}" - CT_Patch "PDCurses" "${CT_MINGW_PDCURSES_VERSION}" - fi - if [ -n "${CT_MINGW_GNURX}" ]; then - CT_Extract "mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src" - CT_Patch "mingw-libgnurx" "${CT_MINGW_GNURX_VERSION}-src" - fi + CT_Extract "mingw-w64-v${CT_WINAPI_VERSION}" + CT_Pushd "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/" + CT_Patch nochdir mingw-w64 "${CT_WINAPI_VERSION}" + CT_Popd } do_libc_check_config() { @@ -38,119 +18,65 @@ } do_libc_start_files() { + local -a sdk_opts CT_DoStep INFO "Installing C library headers" - CT_DoLog EXTRA "Installing MinGW Runtime headers" - mkdir -p "${CT_HEADERS_DIR}" - cp -r ${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32-src/include/* \ - ${CT_HEADERS_DIR} + case "${CT_MINGW_DIRECTX}:${CT_MINGW_DDK}" in + y:y) sdk_opt="--enable-sdk=all";; + y:) sdk_opt="--enable-sdk=directx";; + :y) sdk_opt="--enable-sdk=ddk";; + :) sdk_opt="";; + esac + + CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-headers" + + CT_DoLog EXTRA "Configuring Headers" + + CT_DoExecLog CFG \ + "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-headers/configure" \ + --build=${CT_BUILD} \ + --host=${CT_TARGET} \ + --prefix=/usr \ + "${sdk_opt}" \ + + CT_DoLog EXTRA "Compile Headers" + CT_DoExecLog ALL make + + CT_DoLog EXTRA "Installing Headers" + CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} + + CT_Popd # It seems mingw is strangely set up to look into /mingw instead of # /usr (notably when looking for the headers). This symlink is # here to workaround this, and seems to be here to last... :-/ - CT_DoExecLog ALL ln -sv "usr" "${CT_SYSROOT_DIR}/mingw" + CT_DoExecLog ALL ln -sv "usr/${CT_TARGET}" "${CT_SYSROOT_DIR}/mingw" CT_EndStep } do_libc() { - CT_DoStep INFO "Building MinGW files" + CT_DoStep INFO "Building mingw-w64 files" - CT_DoLog EXTRA "Configuring W32-API" + CT_DoLog EXTRA "Configuring mingw-w64-crt" - mkdir -p "${CT_BUILD_DIR}/build-w32api" - cd "${CT_BUILD_DIR}/build-w32api" + CT_mkdir_pushd "${CT_BUILD_DIR}/build-mingw-w64-crt" - CT_DoExecLog CFG \ - CFLAGS="-I${CT_HEADERS_DIR}" \ - LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \ - "${CT_SRC_DIR}/w32api-${CT_W32API_VERSION}-mingw32-src/configure" \ - --prefix=${CT_SYSROOT_DIR} \ - --includedir=${CT_HEADERS_DIR} \ - --host=${CT_TARGET} + CT_DoExecLog CFG \ + "${CT_SRC_DIR}/mingw-w64-v${CT_WINAPI_VERSION}/mingw-w64-crt/configure" \ + --prefix=/usr \ + --build=${CT_BUILD} \ + --host=${CT_TARGET} \ - CT_DoLog EXTRA "Building W32-API" + CT_DoLog EXTRA "Building mingw-w64-crt" CT_DoExecLog ALL make ${JOBSFLAGS} - CT_DoLog EXTRA "Installing W32-API" - CT_DoExecLog ALL make install - - CT_DoLog EXTRA "Configuring MinGW Runtime" - - mkdir -p "${CT_BUILD_DIR}/build-mingwrt" - cd "${CT_BUILD_DIR}/build-mingwrt" - - CT_DoExecLog CFG \ - CFLAGS="-I${CT_HEADERS_DIR}" \ - LDFLAGS="-L${CT_SYSROOT_DIR}/lib" \ - "${CT_SRC_DIR}/mingwrt-${CT_MINGWRT_VERSION}-mingw32-src/configure" \ - --prefix=${CT_SYSROOT_DIR}/ \ - --includedir=${CT_HEADERS_DIR} \ - --host=${CT_TARGET} - - CT_DoLog EXTRA "Building MinGW Runtime" - CT_DoExecLog ALL make ${JOBSFLAGS} - - CT_DoLog EXTRA "Installing MinGW Runtime" - CT_DoExecLog ALL make install + CT_DoLog EXTRA "Installing mingw-w64-crt" + CT_DoExecLog ALL make install DESTDIR=${CT_SYSROOT_DIR} CT_EndStep } do_libc_finish() { - CT_DoStep INFO "Installing MinGW Development libraries" - - CT_Pushd "${CT_SYSROOT_DIR}" - if [ -n "${CT_MINGW_DIRECTX}" ]; then - CT_DoLog EXTRA "Installing DirectX development package" - CT_Extract nochdir "directx-devel" - fi - if [ -n "${CT_MINGW_OPENGL}" ]; then - CT_DoLog EXTRA "Installing OpenGL development package" - CT_Extract nochdir "opengl-devel" - fi - CT_Popd - - if [ -n "${CT_MINGW_PDCURSES}" ]; then - CT_DoLog EXTRA "Building PDCurses development files" - mkdir -p "${CT_BUILD_DIR}/build-pdcurses" - cd "${CT_BUILD_DIR}/build-pdcurses" - - make -f ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/win32/mingwin32.mak libs \ - PDCURSES_SRCDIR=${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION} \ - CROSS_COMPILE=${CT_TARGET}- - - CT_DoLog EXTRA "Installing PDCurses development files" - chmod a+r ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h - cp ${CT_SRC_DIR}/PDCurses-${CT_MINGW_PDCURSES_VERSION}/*.h \ - ${CT_HEADERS_DIR}/ - cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libpdcurses.a - cp pdcurses.a ${CT_SYSROOT_DIR}/lib/libncurses.a - fi - - if [ -n "${CT_MINGW_GNURX}" ]; then - CT_DoLog EXTRA "Configuring GnuRX development files" - - mkdir -p "${CT_BUILD_DIR}/build-gnurx" - cd "${CT_BUILD_DIR}/build-gnurx" - - CT_DoExecLog CFG \ - CFLAGS="${CT_CFLAGS_FOR_TARGET}" \ - "${CT_SRC_DIR}/mingw-libgnurx-${CT_MINGW_GNURX_VERSION}-src/configure" \ - --build=${CT_BUILD} \ - --host=${CT_TARGET} \ - --prefix=${CT_SYSROOT_DIR} \ - --includedir=${CT_HEADERS_DIR} \ - --enable-shared \ - --enable-static - - CT_DoLog EXTRA "Building GnuRX development files" - CT_DoExecLog ALL make ${JOBSFLAGS} - - CT_DoLog EXTRA "Installing GnuRX development files" - CT_DoExecLog ALL make install-dev - fi - - CT_EndStep + : } -