Index: boot/Makefile
===================================================================
--- boot/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -30,4 +30,5 @@
 #
 
+-include ../Makefile.common
 -include ../Makefile.config
 -include ../config.defs
@@ -42,5 +43,5 @@
 .PHONY: all build clean generic_clean
 
-all: ../Makefile.config ../config.h ../config.defs build
+all: ../Makefile.common ../Makefile.config ../config.h ../config.defs build
 
 -include arch/$(BARCH)/Makefile.inc
Index: boot/Makefile.common
===================================================================
--- boot/Makefile.common	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/Makefile.common	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,4 +27,5 @@
 #
 
+-include ../Makefile.common
 -include ../Makefile.config
 
Index: boot/arch/arm32/loader/Makefile
===================================================================
--- boot/arch/arm32/loader/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/arm32/loader/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,5 +32,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: boot/arch/arm32/loader/Makefile.build
===================================================================
--- boot/arch/arm32/loader/Makefile.build	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/arm32/loader/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,4 +32,5 @@
 
 include ../../../../version
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../../config.defs
Index: boot/arch/arm32/loader/Makefile.toolchain
===================================================================
--- boot/arch/arm32/loader/Makefile.toolchain	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/arm32/loader/Makefile.toolchain	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,33 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
-
 BFD_NAME = elf32-littlearm
 BFD_ARCH = arm
-TARGET = arm-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/arm32/bin
 
 JOBFILE = ../../../../tools/jobfile.py
-
-ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-endif
-
-ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
-	AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
-endif
 
 CFLAGS = \
Index: boot/arch/ia64/loader/Makefile
===================================================================
--- boot/arch/ia64/loader/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -29,9 +29,10 @@
 
 include Makefile.common
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 
 .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: boot/arch/ia64/loader/Makefile.build
===================================================================
--- boot/arch/ia64/loader/Makefile.build	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,4 +32,5 @@
 
 include ../../../../version
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../../config.defs
@@ -60,5 +61,5 @@
 $(OUTPUT): $(OBJECTS) $(COMPONENT_OBJECTS) $(LINK)
 	$(LD) -no-check-sections -N -T $(LINK) $(COMPONENT_OBJECTS) $(OBJECTS) -o $@
-	$(MAKE) -C gefi/HelenOS PREFIX=$(GEFI_PREFIX)
+	$(MAKE) -C gefi/HelenOS
 	cp gefi/HelenOS/hello.efi ../../../../
 	cp gefi/HelenOS/image.bin ../../../../
Index: boot/arch/ia64/loader/Makefile.common
===================================================================
--- boot/arch/ia64/loader/Makefile.common	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/Makefile.common	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -31,4 +31,5 @@
 #
 
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../Makefile.common
Index: boot/arch/ia64/loader/Makefile.toolchain
===================================================================
--- boot/arch/ia64/loader/Makefile.toolchain	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/Makefile.toolchain	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,44 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
-
 BFD_NAME = elf64-ia64-little
 BFD_ARCH = ia64
-TARGET = ia64-pc-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/ia64/bin
 
 JOBFILE = ../../../../tools/jobfile.py
-
-ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-	GEFI_PREFIX =
-endif
-
-ifeq ($(COMPILER),icc)
-	CC = icc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-	GEFI_PREFIX =
-endif
-
-ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
-	AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
-	GEFI_PREFIX = $(TOOLCHAIN_DIR)/$(TARGET)-
-endif
 
 CFLAGS = \
Index: boot/arch/ia64/loader/gefi/HelenOS/Makefile
===================================================================
--- boot/arch/ia64/loader/gefi/HelenOS/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/gefi/HelenOS/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -22,5 +22,4 @@
 #
 
-prefix=$(PREFIX)
 include ../Make.defaults
 CDIR=$(TOPDIR)/..
@@ -69,3 +68,3 @@
 
 gefi:
-	$(MAKE) -C .. prefix=$(PREFIX)
+	$(MAKE) -C ..
Index: boot/arch/ia64/loader/gefi/Make.defaults
===================================================================
--- boot/arch/ia64/loader/gefi/Make.defaults	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ia64/loader/gefi/Make.defaults	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -26,4 +26,7 @@
 # lib and include under the root
 #
+
+include ../../../../../Makefile.common
+
 INSTALLROOT=/usr/local
 
@@ -31,15 +34,7 @@
 
 ARCH       = ia64
-INCDIR     = -I. -I$(CDIR)/inc -I$(CDIR)/inc/$(ARCH) -I$(CDIR)/inc/protocol 
+INCDIR     = -I. -I$(CDIR)/inc -I$(CDIR)/inc/$(ARCH) -I$(CDIR)/inc/protocol
 CPPFLAGS   = -DCONFIG_$(ARCH)
 CFLAGS     = -O2 -fpic -Wall -fshort-wchar -fno-strict-aliasing -fno-merge-constants -frename-registers -mfixed-range=f32-f127
 LDFLAGS    = -nostdlib
 INSTALL    = install
-
-CC         = $(prefix)gcc
-AS         = $(prefix)as
-LD         = $(prefix)ld
-AR         = $(prefix)ar
-RANLIB     = $(prefix)ranlib
-OBJCOPY    = $(prefix)objcopy
-OBJDUMP    = $(prefix)objdump
Index: boot/arch/mips32/loader/Makefile
===================================================================
--- boot/arch/mips32/loader/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/mips32/loader/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,5 +32,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: boot/arch/mips32/loader/Makefile.build
===================================================================
--- boot/arch/mips32/loader/Makefile.build	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/mips32/loader/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,4 +32,5 @@
 
 include ../../../../version
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../../config.defs
Index: boot/arch/mips32/loader/Makefile.toolchain
===================================================================
--- boot/arch/mips32/loader/Makefile.toolchain	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/mips32/loader/Makefile.toolchain	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,14 +27,5 @@
 #
 
-## Toolchain configuration
-#
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
-
 BFD_ARCH = mips
-TARGET = mipsel-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32/bin
 
 JOBFILE = ../../../../tools/jobfile.py
@@ -48,6 +39,4 @@
 	BFD_NAME = elf32-tradbigmips
 	BFD = ecoff-bigmips
-	TOOLCHAIN_DIR = $(CROSS_PREFIX)/mips32eb/bin
-	TARGET = mips-linux-gnu
 endif
 
@@ -55,20 +44,4 @@
 	BFD_NAME = elf32-tradlittlemips
 	BFD = binary
-endif
-
-ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-endif
-
-ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
-	AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
 endif
 
Index: boot/arch/ppc32/loader/Makefile
===================================================================
--- boot/arch/ppc32/loader/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ppc32/loader/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,5 +32,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: boot/arch/ppc32/loader/Makefile.build
===================================================================
--- boot/arch/ppc32/loader/Makefile.build	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ppc32/loader/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,4 +32,5 @@
 
 include ../../../../version
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../../config.defs
Index: boot/arch/ppc32/loader/Makefile.toolchain
===================================================================
--- boot/arch/ppc32/loader/Makefile.toolchain	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/ppc32/loader/Makefile.toolchain	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,33 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
-
 BFD_NAME = elf32-powerpc
 BFD_ARCH = powerpc:common
-TARGET = ppc-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/ppc32/bin
 
 JOBFILE = ../../../../tools/jobfile.py
-
-ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-endif
-
-ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
-	AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
-endif
 
 CFLAGS = \
Index: boot/arch/sparc64/loader/Makefile
===================================================================
--- boot/arch/sparc64/loader/Makefile	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/sparc64/loader/Makefile	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,5 +32,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: boot/arch/sparc64/loader/Makefile.build
===================================================================
--- boot/arch/sparc64/loader/Makefile.build	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/sparc64/loader/Makefile.build	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -32,4 +32,5 @@
 
 include ../../../../version
+include ../../../../Makefile.common
 include ../../../../Makefile.config
 include ../../../../config.defs
Index: boot/arch/sparc64/loader/Makefile.toolchain
===================================================================
--- boot/arch/sparc64/loader/Makefile.toolchain	(revision 9b87284b85778a67933d2a6229eb28b062b698e8)
+++ boot/arch/sparc64/loader/Makefile.toolchain	(revision 177e4ea4f278b1d53d68392d53cd40704cd0931d)
@@ -27,33 +27,8 @@
 #
 
-## Toolchain configuration
-#
-
-ifndef CROSS_PREFIX
-	CROSS_PREFIX = /usr/local
-endif
-
 BFD_NAME = elf64-sparc
 BFD_ARCH = sparc
-TARGET = sparc64-linux-gnu
-TOOLCHAIN_DIR = $(CROSS_PREFIX)/sparc64/bin
 
 JOBFILE = ../../../../tools/jobfile.py
-
-ifeq ($(COMPILER),gcc_native)
-	CC = gcc
-	AS = as
-	LD = ld
-	OBJCOPY = objcopy
-	OBJDUMP = objdump
-endif
-
-ifeq ($(COMPILER),gcc_cross)
-	CC = $(TOOLCHAIN_DIR)/$(TARGET)-gcc
-	AS = $(TOOLCHAIN_DIR)/$(TARGET)-as
-	LD = $(TOOLCHAIN_DIR)/$(TARGET)-ld
-	OBJCOPY = $(TOOLCHAIN_DIR)/$(TARGET)-objcopy
-	OBJDUMP = $(TOOLCHAIN_DIR)/$(TARGET)-objdump
-endif
 
 CFLAGS = \
