Index: kernel/Makefile
===================================================================
--- kernel/Makefile	(revision 19b5929b357667e70f55eb86ec26eb8227ae5636)
+++ kernel/Makefile	(revision 0fc1e5d76be00c32f5334cd23903352fdd5fd5bf)
@@ -54,10 +54,14 @@
 ICC_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros ../config.h \
 	-fno-builtin -Wall -Wmissing-prototypes -Werror \
-	-nostdlib -nostdinc \
-	-wd170
+	-nostdlib -nostdinc -wd170
 
 SUNCC_CFLAGS = -I$(INCLUDES) -xO$(OPTIMIZATION) \
 	-xnolib -xc99=all -features=extensions \
 	-erroff=E_ZERO_SIZED_STRUCT_UNION
+
+CLANG_CFLAGS = -I$(INCLUDES) -O$(OPTIMIZATION) -imacros ../config.h \
+	-fexec-charset=UTF-8 -fwide-exec-charset=UTF-32$(ENDIANESS) \
+	-finput-charset=UTF-8 -fno-builtin -Wall -Wextra -Wno-unused-parameter \
+	-Wmissing-prototypes -nostdlib -nostdinc -pipe
 
 LFLAGS = -M
@@ -109,5 +113,17 @@
 endif
 
-ifeq ($(COMPILER),icc_native)
+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
+	LIBDIR = $(TOOLCHAIN_DIR)/lib
+	CFLAGS = $(GCC_CFLAGS)
+	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
+endif
+
+ifeq ($(COMPILER),icc)
 	CC = icc
 	GCC = gcc
@@ -121,5 +137,5 @@
 endif
 
-ifeq ($(COMPILER),suncc_native)
+ifeq ($(COMPILER),suncc)
 	CC = suncc
 	GCC = gcc
@@ -134,13 +150,13 @@
 endif
 
-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
-	LIBDIR = $(TOOLCHAIN_DIR)/lib
-	CFLAGS = $(GCC_CFLAGS)
+ifeq ($(COMPILER),clang)
+	CC = clang
+	GCC = gcc
+	AS = $(BINUTILS_PREFIX)as
+	LD = $(BINUTILS_PREFIX)ld
+	OBJCOPY = $(BINUTILS_PREFIX)objcopy
+	OBJDUMP = $(BINUTILS_PREFIX)objdump
+	LIBDIR = /usr/lib
+	CFLAGS = $(CLANG_CFLAGS)
 	DEPEND_DEFS = $(DEFS) $(CONFIG_DEFS)
 endif
Index: kernel/arch/ia32/Makefile.inc
===================================================================
--- kernel/arch/ia32/Makefile.inc	(revision 19b5929b357667e70f55eb86ec26eb8227ae5636)
+++ kernel/arch/ia32/Makefile.inc	(revision 0fc1e5d76be00c32f5334cd23903352fdd5fd5bf)
@@ -43,4 +43,5 @@
 ICC_CFLAGS += $(CMN1)
 SUNCC_CFLAGS += $(CMN1)
+CLANG_CFLAGS += $(CMN1)
 
 ## Accepted CPUs
@@ -71,4 +72,5 @@
 GCC_CFLAGS += $(CMN2)
 ICC_CFLAGS += $(CMN2)
+CLANG_CFLAGS += $(CMN2)
 
 ARCH_SOURCES = \
