Index: kernel/arch/amd64/Makefile.inc
===================================================================
--- kernel/arch/amd64/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/amd64/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -36,5 +36,7 @@
 TOOLCHAIN_DIR = /usr/local/amd64
 
-CFLAGS += -fno-unwind-tables -m64 -mcmodel=kernel -mno-red-zone
+GCC_CFLAGS += -fno-unwind-tables -m64 -mcmodel=kernel -mno-red-zone
+SUNCC_CFLAGS += -m64 -xmodel=kernel
+
 DEFS += -DMACHINE=$(MACHINE) -D__64_BITS__
 
@@ -43,5 +45,5 @@
 
 ifeq ($(MACHINE),opteron)
-	CFLAGS += -march=opteron
+	GCC_CFLAGS += -march=opteron	
 	DEFS += -DFENCES=p4
 endif
Index: kernel/arch/arm32/Makefile.inc
===================================================================
--- kernel/arch/arm32/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/arm32/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -37,5 +37,5 @@
 TOOLCHAIN_DIR = /usr/local/arm
 
-CFLAGS += 
+GCC_CFLAGS += 
 
 DEFS += -D__32_BITS__ -DMACHINE=$(MACHINE)
Index: kernel/arch/ia32/Makefile.inc
===================================================================
--- kernel/arch/ia32/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/ia32/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -37,4 +37,5 @@
 
 DEFS += -DMACHINE=$(MACHINE) -D__32_BITS__
+SUNCC_CFLAGS = -m32
 
 ## Accepted CPUs
@@ -42,5 +43,5 @@
 
 ifeq ($(MACHINE),athlon-xp)
-	CFLAGS += -march=athlon-xp -mmmx -msse -m3dnow
+	GCC_CFLAGS += -march=athlon-xp -mmmx -msse -m3dnow
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_SMP = n
@@ -48,22 +49,22 @@
 endif
 ifeq ($(MACHINE),athlon-mp)
-	CFLAGS += -march=athlon-mp -mmmx -msse -m3dnow
+	GCC_CFLAGS += -march=athlon-mp -mmmx -msse -m3dnow
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_HT = n
 endif
 ifeq ($(MACHINE),pentium3)
-	CFLAGS += -march=pentium3 -mmmx -msse
+	GCC_CFLAGS += -march=pentium3 -mmmx -msse
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_HT = n
 endif
 ifeq ($(MACHINE),prescott)
-	CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -msse3
+	GCC_CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -msse3
 	DEFS += -DCONFIG_FENCES_P4
 endif
 ifeq ($(MACHINE),pentium4)
 	ifeq ($(COMPILER),icc_native)
-		CFLAGS += -march=pentium4
+		GCC_CFLAGS += -march=pentium4
 	else
-		CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2
+		GCC_CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2
 	endif
 	DEFS += -DCONFIG_FENCES_P4
Index: kernel/arch/ia32xen/Makefile.inc
===================================================================
--- kernel/arch/ia32xen/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/ia32xen/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -38,9 +38,11 @@
 DEFS += -DMACHINE=$(MACHINE) -D__32_BITS__
 
+SUNCC_CFLAGS = -m32
+
 ## Accepted CPUs
 #
 
 ifeq ($(MACHINE),athlon-xp)
-	CFLAGS += -march=athlon-xp -mmmx -msse -m3dnow
+	GCC_CFLAGS += -march=athlon-xp -mmmx -msse -m3dnow
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_SMP = n
@@ -48,19 +50,19 @@
 endif
 ifeq ($(MACHINE),athlon-mp)
-	CFLAGS += -march=athlon-mp -mmmx -msse -m3dnow
+	GCC_CFLAGS += -march=athlon-mp -mmmx -msse -m3dnow
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_HT = n
 endif
 ifeq ($(MACHINE),pentium3)
-	CFLAGS += -march=pentium3 -mmmx -msse
+	GCC_CFLAGS += -march=pentium3 -mmmx -msse
 	DEFS += -DCONFIG_FENCES_P3
 	CONFIG_HT = n
 endif
 ifeq ($(MACHINE),prescott)
-	CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -msse3
+	GCC_CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2 -msse3
 	DEFS += -DCONFIG_FENCES_P4
 endif
 ifeq ($(MACHINE),pentium4)
-	CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2
+	GCC_CFLAGS += -march=pentium4 -mfpmath=sse -mmmx -msse -msse2
 	DEFS += -DCONFIG_FENCES_P4
 endif
Index: kernel/arch/ia64/Makefile.inc
===================================================================
--- kernel/arch/ia64/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/ia64/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -39,5 +39,5 @@
 INIT0_SIZE = 0x100000
 
-CFLAGS += -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127
+GCC_CFLAGS += -mconstant-gp -fno-unwind-tables -mfixed-range=f32-f127
 LFLAGS += -EL
 AFLAGS += -mconstant-gp
Index: kernel/arch/mips32/Makefile.inc
===================================================================
--- kernel/arch/mips32/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/mips32/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -38,5 +38,5 @@
 INIT_SIZE = 262144
 
-CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss
+GCC_CFLAGS += -mno-abicalls -G 0 -fno-zero-initialized-in-bss
 
 DEFS += -D__32_BITS__ -DMACHINE=$(MACHINE) -DKERNEL_LOAD_ADDRESS=${KERNEL_LOAD_ADDRESS} -DINIT_ADDRESS=${INIT_ADDRESS} -DINIT_SIZE=${INIT_SIZE}
@@ -67,5 +67,5 @@
 	TOOLCHAIN_DIR = /usr/local/mips/bin
 	KERNEL_LOAD_ADDRESS = 0x88002000
-	CFLAGS += -EB -DBIG_ENDIAN -DARCH_HAS_FPU -march=r4600
+	GCC_CFLAGS += -EB -DBIG_ENDIAN -DARCH_HAS_FPU -march=r4600
 	INIT_ADDRESS = 0
 	INIT_SIZE = 0
@@ -81,5 +81,5 @@
 	TARGET = mips-sgi-irix5
 	TOOLCHAIN_DIR = /usr/local/mips/bin
-	CFLAGS += -EB -DBIG_ENDIAN -DARCH_HAS_FPU -mips3
+	GCC_CFLAGS += -EB -DBIG_ENDIAN -DARCH_HAS_FPU -mips3
 	INIT_ADDRESS = 0x81800000
 endif
@@ -90,5 +90,5 @@
 	BFD_NAME = elf32-tradlittlemips
 	BFD = elf32-tradlittlemips
-	CFLAGS += -mhard-float -mips3 -DTLBCNT=16
+	GCC_CFLAGS += -mhard-float -mips3 -DTLBCNT=16
 	TLBCNT = 16
 endif
@@ -96,5 +96,5 @@
 	BFD_NAME = elf32-tradlittlemips
 	BFD = binary
-	CFLAGS += -mhard-float -mips3
+	GCC_CFLAGS += -mhard-float -mips3
 endif
 
Index: kernel/arch/ppc32/Makefile.inc
===================================================================
--- kernel/arch/ppc32/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/ppc32/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -36,5 +36,5 @@
 TOOLCHAIN_DIR = /usr/local/ppc
 
-CFLAGS += -mcpu=powerpc -msoft-float -m32
+GCC_CFLAGS += -mcpu=powerpc -msoft-float -m32
 AFLAGS += -a32
 LFLAGS += -no-check-sections -N
Index: kernel/arch/ppc64/Makefile.inc
===================================================================
--- kernel/arch/ppc64/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/ppc64/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -36,5 +36,5 @@
 TOOLCHAIN_DIR = /usr/local/ppc64
 
-CFLAGS += -mcpu=powerpc64 -msoft-float -m64
+GCC_CFLAGS += -mcpu=powerpc64 -msoft-float -m64
 AFLAGS += -a64
 LFLAGS += -no-check-sections -N
Index: kernel/arch/sparc64/Makefile.inc
===================================================================
--- kernel/arch/sparc64/Makefile.inc	(revision 92d349c80662def05860f28f084b4090967b8361)
+++ kernel/arch/sparc64/Makefile.inc	(revision 4a8635b414c360bd57bb45bd9718cbff2211cad1)
@@ -36,5 +36,6 @@
 TOOLCHAIN_DIR = /usr/local/sparc64
 
-CFLAGS += -mcpu=ultrasparc -m64
+GCC_CFLAGS += -mcpu=ultrasparc -m64
+SUNCC_CFLAGS +=
 LFLAGS += -no-check-sections -N
 
