Index: kernel/Makefile
===================================================================
--- kernel/Makefile	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -31,5 +31,5 @@
 .PHONY: all clean
 
-all: ../version ../Makefile.config ../config.h ../config.defs
+all: ../version ../Makefile.common ../Makefile.config ../config.h ../config.defs
 	-[ -f $(DEPEND) ] && mv -f $(DEPEND) $(DEPEND_PREV)
 	$(MAKE) -f Makefile.build PRECHECK=$(PRECHECK)
Index: kernel/Makefile.build
===================================================================
--- kernel/Makefile.build	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -33,4 +33,5 @@
 include Makefile.common
 include ../version
+include ../Makefile.common
 include ../Makefile.config
 include ../config.defs
@@ -42,8 +43,4 @@
 INCLUDES = generic/include
 OPTIMIZATION = 3
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
 
 ## Common compiler flags
@@ -89,32 +86,16 @@
 # Makefile.inc.
 #
+
 ATSIGN ?= @
 
 ## Cross-platform assembly to start a symtab.data section
 #
+
 SYMTAB_SECTION = ".section symtab.data, \"a\", $(ATSIGN)progbits;"
 
-## Simple detection for the type of the host system
-#
-HOST = $(shell uname)
-
-## On Solaris, some utilities have slightly different names
-#
-ifeq ($(HOST),SunOS)
-	BINUTILS_PREFIX = "g"
-else
-	BINUTILS_PREFIX = ""
-endif
-
-## Toolchain configuration
+## Compilation options
 #
 
 ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	GCC = gcc
-	AS = $(BINUTILS_PREFIX)as
-	LD = $(BINUTILS_PREFIX)ld
-	OBJCOPY = $(BINUTILS_PREFIX)objcopy
-	OBJDUMP = $(BINUTILS_PREFIX)objdump
 	CFLAGS = $(GCC_CFLAGS)
 	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
@@ -122,10 +103,4 @@
 
 ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/bin/$(TARGET)-gcc
-	GCC = $(CC)
-	AS = $(TOOLCHAIN_DIR)/bin/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/bin/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/bin/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/bin/$(TARGET)-objdump
 	CFLAGS = $(GCC_CFLAGS)
 	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
@@ -133,10 +108,4 @@
 
 ifeq ($(COMPILER),icc)
-	CC = icc
-	GCC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
 	CFLAGS = $(ICC_CFLAGS)
 	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
@@ -144,10 +113,4 @@
 
 ifeq ($(COMPILER),suncc)
-	CC = suncc
-	GCC = gcc
-	AS = $(BINUTILS_PREFIX)as
-	LD = $(BINUTILS_PREFIX)ld
-	OBJCOPY = $(BINUTILS_PREFIX)objcopy
-	OBJDUMP = $(BINUTILS_PREFIX)objdump
 	CFLAGS = $(SUNCC_CFLAGS)
 	DEFS += $(CONFIG_DEFS)
@@ -156,10 +119,4 @@
 
 ifeq ($(COMPILER),clang)
-	CC = clang
-	GCC = gcc
-	AS = $(BINUTILS_PREFIX)as
-	LD = $(BINUTILS_PREFIX)ld
-	OBJCOPY = $(BINUTILS_PREFIX)objcopy
-	OBJDUMP = $(BINUTILS_PREFIX)objdump
 	CFLAGS = $(CLANG_CFLAGS)
 	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
Index: kernel/arch/abs32le/Makefile.inc
===================================================================
--- kernel/arch/abs32le/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/abs32le/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,23 +27,12 @@
 #
 
-## Toolchain configuration
-#
-
 BFD = binary
 
 ifeq ($(COMPILER),gcc_cross)
-	TOOLCHAIN_DIR = $(CROSS_PREFIX)/$(CROSS_TARGET)
-	
 	ifeq ($(CROSS_TARGET),arm32)
-		TARGET = arm-linux-gnu
 		ATSIGN = %
 	endif
 	
-	ifeq ($(CROSS_TARGET),ia32)
-		TARGET = i686-pc-linux-gnu
-	endif
-	
 	ifeq ($(CROSS_TARGET),mips32)
-		TARGET = mipsel-linux-gnu
 		GCC_CFLAGS += -mno-abicalls
 	endif
Index: kernel/arch/amd64/Makefile.inc
===================================================================
--- kernel/arch/amd64/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/amd64/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,13 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf64-x86-64
 BFD_ARCH = i386:x86-64
 BFD = binary
-TARGET = amd64-linux-gnu
 CLANG_ARCH = x86_64
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/amd64
 
 FPU_NO_CFLAGS = -mno-sse -mno-sse2
Index: kernel/arch/arm32/Makefile.inc
===================================================================
--- kernel/arch/arm32/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/arm32/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,12 +27,7 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf32-littlearm
 BFD_ARCH = arm
 BFD = binary
-TARGET = arm-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/arm32
 
 ATSIGN = %
Index: kernel/arch/ia32/Makefile.inc
===================================================================
--- kernel/arch/ia32/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/ia32/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,13 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf32-i386
 BFD_ARCH = i386
 BFD = binary
-TARGET = i686-pc-linux-gnu
 CLANG_ARCH = i386
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia32
 
 BITS = 32
Index: kernel/arch/ia64/Makefile.inc
===================================================================
--- kernel/arch/ia64/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/ia64/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,11 +27,6 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf64-little
 BFD_ARCH = ia64-elf64
-TARGET = ia64-pc-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64
 
 CMN1 = -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127
Index: kernel/arch/mips32/Makefile.inc
===================================================================
--- kernel/arch/mips32/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/mips32/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,12 +27,6 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_ARCH = mips
 BFD = binary
-TARGET = mipsel-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32
-
 GCC_CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss -mips3
 
@@ -48,6 +42,4 @@
 ifeq ($(MACHINE),bgxemul)
 	BFD_NAME = elf32-tradbigmips
-	TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32eb
-	TARGET = mips-linux-gnu
 	ENDIANESS = BE
 	GCC_CFLAGS += -D__BE__
Index: kernel/arch/ppc32/Makefile.inc
===================================================================
--- kernel/arch/ppc32/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/ppc32/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,12 +27,7 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf32-powerpc
 BFD_ARCH = powerpc:common
 BFD = binary
-TARGET = ppc-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/ppc32
 
 GCC_CFLAGS += -mcpu=powerpc -msoft-float -m32
Index: kernel/arch/sparc64/Makefile.inc
===================================================================
--- kernel/arch/sparc64/Makefile.inc	(revision 46843683b55a678b246f7735afcdf24b794d2d8f)
+++ kernel/arch/sparc64/Makefile.inc	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,12 +27,7 @@
 #
 
-## Toolchain configuration
-#
-
 BFD_NAME = elf64-sparc
 BFD_ARCH = sparc
 BFD = binary
-TARGET = sparc64-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/sparc64
 
 GCC_CFLAGS += -m64 -mcpu=ultrasparc 
