public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* Re: [patch] Fix i386-mingw32 build failure
@ 2005-08-09  0:28 Ross Ridge
  2005-08-09  7:24 ` Paolo Bonzini
  0 siblings, 1 reply; 33+ messages in thread
From: Ross Ridge @ 2005-08-09  0:28 UTC (permalink / raw)
  To: gcc

Christopher Faylor wrote:
>The consensus seemed to be that this was not the way to fix the problem.

The consensus also seemed to be that it was just an aspect of a larger
problem that no good solution had been proposed to solve yet.

>I suggested that modifying pex-* functions to understand #! scripts
>might be the best way to deal with this.

It seems to be a rather convoluted and complicated way of tricking the
newly built compiler driver to run a specific version of a program.
Especially since the #! hack currently used in the Makefile might get
replaced by some other hack.

						Ross Ridge

^ permalink raw reply	[flat|nested] 33+ messages in thread
* Re: [patch] Fix i386-mingw32 build failure
@ 2005-08-10 21:20 Ross Ridge
  2005-08-10 21:30 ` DJ Delorie
  0 siblings, 1 reply; 33+ messages in thread
From: Ross Ridge @ 2005-08-10 21:20 UTC (permalink / raw)
  To: gcc

DJ Delorie wrote:
>Supporting #! in libiberty doesn't have to stop you from enhancing gcc
>anyway ;-)

Well, it's stopping a real fix for the MinGW build failure being made.
Adding #! support to libiberty won't work because the problem scripts
have MSYS/Cygwin paths for the shell (eg. "/bin/sh") that aren't likely
to be valid to plain Windows.

						Ross Ridge

^ permalink raw reply	[flat|nested] 33+ messages in thread
* [patch] Fix i386-mingw32 build failure
@ 2005-08-06 11:37 FX Coudert
  2005-08-08 17:58 ` Christopher Faylor
  2005-08-09  7:33 ` Paolo Bonzini
  0 siblings, 2 replies; 33+ messages in thread
From: FX Coudert @ 2005-08-06 11:37 UTC (permalink / raw)
  To: patch, gcc

[-- Attachment #1: Type: text/plain, Size: 848 bytes --]

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:

[-- Attachment #2: building.ChangeLog --]
[-- Type: text/plain, Size: 204 bytes --]

2005-08-06  Francois-Xavier Coudert  <coudert@clipper.ens.fr>

	PR bootstrap/22259
	* Makfile.in (stamp-as, stamp-collect-ld, stamp-nm): Add special
	case for mingw32 since it cannot spawn shell scripts.

[-- Attachment #3: building.diff --]
[-- Type: text/plain, Size: 2019 bytes --]

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 > $@
 

^ permalink raw reply	[flat|nested] 33+ messages in thread

end of thread, other threads:[~2005-08-26  2:33 UTC | newest]

Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-08-09  0:28 [patch] Fix i386-mingw32 build failure Ross Ridge
2005-08-09  7:24 ` Paolo Bonzini
  -- strict thread matches above, loose matches on Subject: below --
2005-08-10 21:20 Ross Ridge
2005-08-10 21:30 ` DJ Delorie
2005-08-11  4:00   ` Ross Ridge
2005-08-11 18:20   ` Christopher Faylor
2005-08-11 18:34     ` DJ Delorie
2005-08-25 19:37     ` Christopher Faylor
2005-08-25 19:47       ` DJ Delorie
2005-08-25 20:06         ` Christopher Faylor
2005-08-25 20:06           ` DJ Delorie
2005-08-25 21:57             ` Christopher Faylor
2005-08-26  7:56       ` Ross Ridge
2005-08-06 11:37 FX Coudert
2005-08-08 17:58 ` Christopher Faylor
2005-08-09  7:33 ` Paolo Bonzini
2005-08-09 15:37   ` Christopher Faylor
2005-08-10 17:05     ` Mark Mitchell
2005-08-10 17:33       ` Daniel Jacobowitz
2005-08-10 17:38         ` Mark Mitchell
2005-08-10 17:58           ` Christopher Faylor
2005-08-10 18:39             ` DJ Delorie
2005-08-10 18:41             ` Mark Mitchell
2005-08-10 18:53               ` DJ Delorie
2005-08-10 19:05               ` Christopher Faylor
2005-08-10 18:37           ` DJ Delorie
2005-08-10 18:46             ` Joe Buck
2005-08-10 22:01       ` Marcin Dalecki
2005-08-10 22:29         ` Mark Mitchell
2005-08-10 22:17       ` Andreas Schwab
2005-08-10 22:32         ` Mark Mitchell
2005-08-11  9:24           ` Andreas Schwab
2005-08-09 19:47   ` FX Coudert

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).