From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6642 invoked by alias); 6 Aug 2005 11:37:53 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 6624 invoked by uid 22791); 6 Aug 2005 11:37:44 -0000 Received: from postfix3-2.free.fr (HELO postfix3-2.free.fr) (213.228.0.169) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Sat, 06 Aug 2005 11:37:44 +0000 Received: from [82.239.100.53] (coudert.name [82.239.100.53]) by postfix3-2.free.fr (Postfix) with ESMTP id 285D7C0DC; Sat, 6 Aug 2005 13:37:42 +0200 (CEST) Message-ID: <42F4A108.1050903@gmail.com> Date: Sat, 06 Aug 2005 11:37:00 -0000 From: FX Coudert User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317) MIME-Version: 1.0 To: patch , gcc@gcc.gnu.org Subject: [patch] Fix i386-mingw32 build failure Content-Type: multipart/mixed; boundary="------------030200000708060207030501" X-SW-Source: 2005-08/txt/msg00203.txt.bz2 This is a multi-part message in MIME format. --------------030200000708060207030501 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-length: 848 PING ** 2 Attached patch fixes PR bootstrap/22259 (right now, a simple ./configure && make build fails on i386-mingw32). It creates a special case for in-tree as, collect-ld and nm scripts: since mingw32 cannot spawn shell scripts, it copies $(ORIGINAL_AS_FOR_TARGET), $(ORIGINAL_LD_FOR_TARGET) and $(ORIGINAL_NM_FOR_TARGET) in the tree. There has been discussion on whether this is the best way to do things (see thread from http://gcc.gnu.org/ml/gcc-patches/2005-07/msg01193.html), but nobody suggested another patch that actually makes build possible on i386-mingw32. And, from what I have understood, none of the mingw maintainers have anything against the patch, but they can't approve it. Can someone with approval privilege over the build system look at this, and OK it? (it's a very simple patch) Thanks, FX :ADDPATCH build: --------------030200000708060207030501 Content-Type: text/plain; name="building.ChangeLog" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="building.ChangeLog" Content-length: 204 2005-08-06 Francois-Xavier Coudert PR bootstrap/22259 * Makfile.in (stamp-as, stamp-collect-ld, stamp-nm): Add special case for mingw32 since it cannot spawn shell scripts. --------------030200000708060207030501 Content-Type: text/plain; name="building.diff" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="building.diff" Content-length: 2019 Index: gcc/Makefile.in =================================================================== RCS file: /cvsroot/gcc/gcc/gcc/Makefile.in,v retrieving revision 1.1534 diff -p -u -r1.1534 Makefile.in --- gcc/Makefile.in 3 Aug 2005 14:18:34 -0000 1.1534 +++ gcc/Makefile.in 6 Aug 2005 11:29:02 -0000 @@ -1228,10 +1228,15 @@ stamp-as: $(ORIGINAL_AS_FOR_TARGET) echo $(LN) $< as$(exeext); \ $(LN) $< as$(exeext) || cp $< as$(exeext) ;; \ *) \ - rm -f as; \ - echo '#!$(SHELL)' > as; \ - echo 'exec $(ORIGINAL_AS_FOR_TARGET) "$$@"' >> as ; \ - chmod +x as ;; \ + rm -f as$(exeext); \ + case "$(build)" in \ + *mingw32*) \ + cp $(ORIGINAL_AS_FOR_TARGET) as$(exeext) ;; \ + *) \ + echo '#!$(SHELL)' > as; \ + echo 'exec $(ORIGINAL_AS_FOR_TARGET) "$$@"' >> as ; \ + chmod +x as ;; \ + esac \ esac echo timestamp > $@ @@ -1245,9 +1250,14 @@ stamp-collect-ld: $(ORIGINAL_LD_FOR_TARG $(LN) $< collect-ld$(exeext) || cp $< collect-ld$(exeext) ;; \ *) \ rm -f collect-ld$(exeext); \ - echo '#!$(SHELL)' > collect-ld; \ - echo 'exec $(ORIGINAL_LD_FOR_TARGET) "$$@"' >> collect-ld ; \ - chmod +x collect-ld ;; \ + case "$(build)" in \ + *mingw32*) \ + cp $(ORIGINAL_LD_FOR_TARGET) collect-ld$(exeext) ;; \ + *) \ + echo '#!$(SHELL)' > collect-ld; \ + echo 'exec $(ORIGINAL_LD_FOR_TARGET) "$$@"' >> collect-ld ; \ + chmod +x collect-ld ;; \ + esac \ esac echo timestamp > $@ @@ -1261,9 +1271,14 @@ stamp-nm: $(ORIGINAL_NM_FOR_TARGET) $(LN) $< nm$(exeext) || cp $< nm$(exeext) ;; \ *) \ rm -f nm$(exeext); \ - echo '#!$(SHELL)' > nm; \ - echo 'exec $(ORIGINAL_NM_FOR_TARGET) "$$@"' >> nm ; \ - chmod +x nm ;; \ + case "$(build)" in \ + *mingw32*) \ + cp $(ORIGINAL_NM_FOR_TARGET) nm$(exeext) ;; \ + *) \ + echo '#!$(SHELL)' > nm; \ + echo 'exec $(ORIGINAL_NM_FOR_TARGET) "$$@"' >> nm ; \ + chmod +x nm ;; \ + esac \ esac echo timestamp > $@ --------------030200000708060207030501--