Index: /trunk/kBuild/env.sh
===================================================================
--- /trunk/kBuild/env.sh	(revision 810)
+++ /trunk/kBuild/env.sh	(revision 811)
@@ -62,5 +62,5 @@
 if [ -z "$BUILD_PLATFORM_ARCH" ]; then
     case "$BUILD_PLATFORM_CPU" in
-        i[3456789]86)
+        i[3456789]86|i86pc)
             BUILD_PLATFORM_ARCH='x86'
             ;;
@@ -106,4 +106,8 @@
             ;;
 
+        SunOS)
+            BUILD_PLATFORM=solaris
+            ;;
+
         WindowsNT|CYGWIN_NT-*)
             BUILD_PLATFORM=win
@@ -130,5 +134,5 @@
 if [ -z "$BUILD_TARGET_ARCH" ]; then
     case "$BUILD_TARGET_CPU" in
-        i[3456789]86)
+        i[3456789]86|i86pc)
             BUILD_TARGET_ARCH='x86'
             ;;
Index: /trunk/kBuild/header.kmk
===================================================================
--- /trunk/kBuild/header.kmk	(revision 810)
+++ /trunk/kBuild/header.kmk	(revision 811)
@@ -97,5 +97,5 @@
 else
  BUILD_PLATFORM     := $(strip $(BUILD_PLATFORM))
- ifneq ($(words $(BUILD_PLATFORM))$(filter-out darwin freebsd l4 linux nt os2 win win32 win64,$(BUILD_PLATFORM)),1)
+ ifneq ($(words $(BUILD_PLATFORM))$(filter-out darwin freebsd l4 linux nt os2 solaris win win32 win64,$(BUILD_PLATFORM)),1)
   # OS/2 (have uppercase legacy)
   ifeq ($(BUILD_PLATFORM),OS2)
@@ -131,5 +131,5 @@
 else
  BUILD_TARGET       := $(strip $(BUILD_TARGET))
- ifneq ($(words $(BUILD_TARGET))$(filter-out darwin freebsd l4 linux nt os2 win win32 win64,$(BUILD_TARGET)),1)
+ ifneq ($(words $(BUILD_TARGET))$(filter-out darwin freebsd l4 linux nt os2 solaris win win32 win64,$(BUILD_TARGET)),1)
   # OS/2 (have uppercase legacy)
   ifeq ($(BUILD_TARGET),OS2)
@@ -268,4 +268,10 @@
 # Darwin / Mac OS X
 ifeq ($(BUILD_PLATFORM),darwin)
+EXEC_X86_WIN32      := false
+HOSTSUFF_EXE        :=
+endif
+
+# Solaris
+ifeq ($(BUILD_PLATFORM),solaris)
 EXEC_X86_WIN32      := false
 HOSTSUFF_EXE        :=
Index: /trunk/kBuild/tools/GCC3.kmk
===================================================================
--- /trunk/kBuild/tools/GCC3.kmk	(revision 810)
+++ /trunk/kBuild/tools/GCC3.kmk	(revision 811)
@@ -25,5 +25,5 @@
 #
 
-TOOL_GCC3 := Generic GCC v3.2.x or later Using The System GCC.
+TOOL_GCC3 := Generic GCC v3.2.x or later Using The System GCC and Binutils.
 
 # Tool Specific Properties
@@ -31,29 +31,30 @@
 TOOL_GCC3_CXX ?= g++$(HOSTSUFF_EXE)
 TOOL_GCC3_AS  ?= gcc$(HOSTSUFF_EXE)
-TOOL_GCC3_AR  ?= ar$(HOSTSUFF_EXE)
+ifeq ($(BUILD_TARGET),solaris) ## @todo drop the MRI script!
+ TOOL_GCC3_AR ?= gar$(HOSTSUFF_EXE)
+else
+ TOOL_GCC3_AR ?= ar$(HOSTSUFF_EXE)
+endif
 ifeq ($(BUILD_TARGET),os2)
-TOOL_GCC3_AR_IMP ?= emximp$(HOSTSTUFF_EXE)
-else
-TOOL_GCC3_AR_IMP ?= $(ECHO) not supported!
+ TOOL_GCC3_AR_IMP ?= emximp$(HOSTSTUFF_EXE)
+else
+ TOOL_GCC3_AR_IMP ?= $(ECHO) not supported!
 endif
 TOOL_GCC3_LD ?= g++$(HOSTSUFF_EXE)
 TOOL_GCC3_LD_SYSMOD ?= ld$(HOSTSUFF_EXE)
 ifndef TOOL_GCC3_LDFLAGS.$(BUILD_TARGET)
-TOOL_GCC3_LDFLAGS.dll ?= -shared
-else
-TOOL_GCC3_LDFLAGS.dll ?= $(TOOL_GCC3_LDFLAGS.$(BUILD_TARGET))
+ TOOL_GCC3_LDFLAGS.dll ?= -shared
+else
+ TOOL_GCC3_LDFLAGS.dll ?= $(TOOL_GCC3_LDFLAGS.$(BUILD_TARGET))
 endif
 TOOL_GCC3_LDFLAGS.sysmod ?= -r
 TOOL_GCC3_LD_SONAME ?= -Wl,-soname=$(firstword $($(1)_SONAME.$(BUILD_TARGET).$(BUILD_TYPE)) $($(1)_SONAME.$(BUILD_TARGET)) $($(1)_SONAME.$(BUILD_TYPE)) $($(1)_SONAME) $(notdir $(2)))
 ifeq ($(BUILD_TARGET),os2)
-TOOL_GCC3_LD_MAP ?= -Zmap=$(1)
-TOOL_GCC3_LD_SYSMOD_MAP ?= -Zmap=$(1)
-else
-TOOL_GCC3_LD_MAP ?= -Wl,-Map -Wl,$(1) -Wl,--cref
-TOOL_GCC3_LD_SYSMOD_MAP ?= -Map $(1) --cref
+ TOOL_GCC3_LD_MAP ?= -Zmap=$(1)
+ TOOL_GCC3_LD_SYSMOD_MAP ?= -Zmap=$(1)
 endif
 ifdef SLKRUNS
-TOOL_GCC3_CC  += -fmessage-length=0
-TOOL_GCC3_CXX += -fmessage-length=0
+ TOOL_GCC3_CC  += -fmessage-length=0
+ TOOL_GCC3_CXX += -fmessage-length=0
 endif
 
