This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PING [4.1 regression, patch] build i686-pc-mingw32


I'd prefer that Danny review this but neither of us has the right to
approve this patch.

Well, then, who has the right to approve such a patch?


However, it seems like you're adding extra stuff to the Makefile where
it is already trying to do the right thing if $(LN) fails.  Couldn't LN
just be declared as "cp" for mingw or, alternatively, couldn't it be
defined as some failing command so that the cp in the failing condition
would be invoked?

Well, perhaps I wasn't clear enough on what is the problem:


-	case "$<" in \
-	  ./*) ;; \
-	  ../*) \
-	     echo $(LN) $< as$(exeext); \
-	     $(LN) $< as$(exeext) || cp $< as$(exeext) ;; \
-	  *) echo '#!$(SHELL)' > as; echo 'exec $< "$$@"' >> as ; \
-	     chmod +x as ;; \
+	case "$(build)" in \
+	  *mingw32*) \
+	    cp $< as$(exeext) ;; \
+	  *) \
+	    case "$<" in \
+	      ./*) ;; \
+	      ../*) \
+	        echo $(LN) $< as$(exeext); \
+	        $(LN) $< as$(exeext) || cp $< as$(exeext) ;; \
+	      *) echo '#!$(SHELL)' > as; echo 'exec $< "$$@"' >> as ; \
+	        chmod +x as ;; \
+	    esac \

The cases with ./*) and ../*) already well handled, and just kept "as is" when $(build) is mingw32. The $(LN) command succeeds, that's not the problem.

Only the remaining case, which creates a shell script, fails on mingw32. The shell script is spawned to call the assembler, which fails. Only real win32 executables can be spawned.

FX


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]