All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH][PPC32] Fix the 'checkbin' target
@ 2004-09-01 18:03 Tom Rini
  2004-09-01 19:20 ` Sam Ravnborg
  0 siblings, 1 reply; 2+ messages in thread
From: Tom Rini @ 2004-09-01 18:03 UTC (permalink / raw)
  To: Linus Torvalds, Sam Ravnborg; +Cc: Kernel Mailing List, Carsten Milling

Hello.

Currently, the checkbin target on PPC32 isn't quite right.  First, one
of the tests (to ensure that some instructions are known to gas) is
never actually invoked because 'checkbin' doesn't know about stuff set
in .config, so we always have the 'else' case run.  This changes to
always running the test and telling the user to upgrade to at least
binutils 2.12.1.  The next problem is that we were doing $(AS) -o
/dev/null ... in both that test, as well as another.  The problem here
is that the checkbin target is run on the install targets, meaning that
/dev/null will get unlinked when the test passes.  To get around this we
use .tmp_gas_check as the output file instead.

Assuming Sam doesn't object, I hope this can go in quickly.  Thanks.

Signed-off-by: Tom Rini <trini@kernel.crashing.org>

--- linux-2.6.orig/arch/ppc/Makefile
+++ linux-2.6/arch/ppc/Makefile
@@ -104,16 +104,15 @@ arch/$(ARCH)/kernel/asm-offsets.s: inclu
 include/asm-$(ARCH)/offsets.h: arch/$(ARCH)/kernel/asm-offsets.s
 	$(call filechk,gen-asm-offsets)
 
-ifdef CONFIG_6xx
-# Ensure this is binutils 2.12.1 (or 2.12.90.0.7) or later
-NEW_AS	:= $(shell echo dssall | $(AS) -many -o /dev/null >/dev/null 2>&1 ; echo $$?)
-GOODVER	:= 2.12.1
-else
-NEW_AS	:= 0
-endif
+# Use the file '.tmp_gas_check' for binutils tests, as gas won't output
+# to stdout and these checks are run even on install targets.
+TOUT	:= .tmp_gas_check
+# Ensure this is binutils 2.12.1 (or 2.12.90.0.7) or later for altivec
+# instructions.
+AS_ALTIVEC	:= $(shell echo dssall | $(AS) -many -o $(TOUT) >/dev/null 2>&1 ; echo $$?)
 # gcc-3.4 and binutils-2.14 are a fatal combination.
 GCC_VERSION	:= $(call cc-version)
-BAD_GCC_AS	:= $(shell echo mftb 5 | $(AS) -mppc -many -o /dev/null >/dev/null 2>&1 && echo 0 || echo 1)
+BAD_GCC_AS	:= $(shell echo mftb 5 | $(AS) -mppc -many -o $(TOUT) >/dev/null 2>&1 && echo 0 || echo 1)
 
 checkbin:
 ifeq ($(GCC_VERSION)$(BAD_GCC_AS),03041)
@@ -122,10 +121,11 @@ ifeq ($(GCC_VERSION)$(BAD_GCC_AS),03041)
 	@echo '*** Please upgrade your binutils or downgrade your gcc'
 	@false
 endif
-ifneq ($(NEW_AS),0)
+ifneq ($(AS_ALTIVEC),0)
+	echo $(AS_ALTIVEC)
 	@echo -n '*** ${VERSION}.${PATCHLEVEL} kernels no longer build '
 	@echo 'correctly with old versions of binutils.'
-	@echo '*** Please upgrade your binutils to ${GOODVER} or newer'
+	@echo '*** Please upgrade your binutils to 2.12.1 or newer'
 	@false
 endif
 	@true

-- 
Tom Rini
http://gate.crashing.org/~trini/

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

* Re: [PATCH][PPC32] Fix the 'checkbin' target
  2004-09-01 18:03 [PATCH][PPC32] Fix the 'checkbin' target Tom Rini
@ 2004-09-01 19:20 ` Sam Ravnborg
  0 siblings, 0 replies; 2+ messages in thread
From: Sam Ravnborg @ 2004-09-01 19:20 UTC (permalink / raw)
  To: Tom Rini
  Cc: Linus Torvalds, Sam Ravnborg, Kernel Mailing List, Carsten Milling

On Wed, Sep 01, 2004 at 11:03:56AM -0700, Tom Rini wrote:
> Hello.
> 
> Currently, the checkbin target on PPC32 isn't quite right.  First, one
> of the tests (to ensure that some instructions are known to gas) is
> never actually invoked because 'checkbin' doesn't know about stuff set
> in .config, so we always have the 'else' case run.  This changes to
> always running the test and telling the user to upgrade to at least
> binutils 2.12.1.  The next problem is that we were doing $(AS) -o
> /dev/null ... in both that test, as well as another.  The problem here
> is that the checkbin target is run on the install targets, meaning that
> /dev/null will get unlinked when the test passes.  To get around this we
> use .tmp_gas_check as the output file instead.
> 
> Assuming Sam doesn't object, I hope this can go in quickly.  Thanks.
> 
> Signed-off-by: Tom Rini <trini@kernel.crashing.org>

Looks good to me - and it solves the critical /dev/null
bug in ppc.

Linus please apply.

	Sam

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

end of thread, other threads:[~2004-09-01 19:18 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-09-01 18:03 [PATCH][PPC32] Fix the 'checkbin' target Tom Rini
2004-09-01 19:20 ` Sam Ravnborg

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.