Make sure klcc defines __KLIBC__ et al
diff --git a/klcc/Kbuild b/klcc/Kbuild
index 073a6fa..a90bd6f 100644
--- a/klcc/Kbuild
+++ b/klcc/Kbuild
@@ -14,13 +14,14 @@
 	$(Q)echo 'KCROSS=$(KCROSS)' >> $@
 	$(Q)echo 'CC=$(KLIBCCC)' >> $@
 	$(Q)echo 'LD=$(KLIBCLD)' >> $@
-	$(Q)echo 'REQFLAGS=$(filter-out -I%,$(KLIBCREQFLAGS) $(KLIBCARCHREQFLAGS))' >> $@
+	$(Q)echo 'REQFLAGS=$(filter-out -I%,$(KLIBCDEFS) $(KLIBCREQFLAGS) $(KLIBCARCHREQFLAGS))' >> $@
 	$(Q)echo 'OPTFLAGS=$(KLIBCOPTFLAGS)' >> $@
 	$(Q)echo 'LDFLAGS=$(KLIBCLDFLAGS)' >> $@
 	$(Q)echo 'STRIP=$(KLIBCSTRIP)' >> $@
 	$(Q)echo 'STRIPFLAGS=$(KLIBCSTRIPFLAGS)' >> $@
 	$(Q)echo 'EMAIN=$(KLIBCEMAIN)' >> $@
 	$(Q)echo 'BITSIZE=$(KLIBCBITSIZE)' >> $@
+	$(Q)echo 'VERSION=$(shell cat $(srctree)/version))' >> $@
 	$(Q)echo 'prefix=$(INSTALLDIR)' >> $@
 	$(Q)echo 'bindir=$(INSTALLDIR)/$(KCROSS)bin' >> $@
 	$(Q)echo 'libdir=$(INSTALLDIR)/$(KCROSS)lib' >> $@
diff --git a/scripts/Kbuild.klibc b/scripts/Kbuild.klibc
index e54e790..5325a18 100644
--- a/scripts/Kbuild.klibc
+++ b/scripts/Kbuild.klibc
@@ -48,7 +48,7 @@
 KLIBCREQFLAGS     :=
 KLIBCARCHREQFLAGS :=
 KLIBCOPTFLAGS     :=
-KLIBCWARNFLAGS    := -W -Wall -Wno-sign-compare
+KLIBCWARNFLAGS    := -W -Wall -Wno-sign-compare -Wno-unused-parameter
 KLIBCSHAREDFLAGS  := 
 KLIBCBITSIZE      :=
 KLIBCLDFLAGS      :=
@@ -56,11 +56,15 @@
 # Arch specific definitions for klibc
 include $(KLIBCSRC)/arch/$(ARCH)/MCONFIG
 
+# klibc version
+KLIBCMAJOR        := $(shell cut -d. -f1 $(srctree)/version)
+KLIBCMINOR        := $(shell cut -d. -f2 $(srctree)/version)
+
 # FIXME - backwards compatibility. Remove when all MCONFIGs are corrected
 KLIBCREQFLAGS     += $(REQFLAGS)
 KLIBCARCHREQFLAGS += $(ARCHREQFLAGS)
 KLIBCOPTFLAGS     += $(OPTFLAGS)
-KLIBCWARNFLAGS    += $(WARNFLAGS) -W -Wall -Wno-sign-compare
+KLIBCWARNFLAGS    += $(WARNFLAGS)
 KLIBCSHAREDFLAGS  += $(SHAREDFLAGS)
 KLIBCBITSIZE      := $(strip $(KLIBCBITSIZE) $(BITSIZE))
 KLIBCLDFLAGS      += $(LDFLAGS)
@@ -83,8 +87,10 @@
 KLIBCCPPFLAGS    += -I$(KLIBCKERNELSRC)include                              \
                      $(if $(KBUILD_SRC),-Iinclude2 -I$(srctree)/include)
 # klibc definitions
-KLIBCCPPFLAGS    += -D__KLIBC__=1 -D__KLIBC_MINOR__=0                       \
-		    -DBITSIZE=$(KLIBCBITSIZE)
+KLIBCDEFS        := -D__KLIBC__=$(KLIBCMAJOR)          \
+		    -D__KLIBC_MINOR__=$(KLIBCMINOR)    \
+		    -D_BITSIZE=$(KLIBCBITSIZE)
+KLIBCCPPFLAGS    += $(KLIBCDEFS)
 KLIBCCFLAGS      := $(KLIBCCPPFLAGS) $(KLIBCREQFLAGS) $(KLIBCARCHREQFLAGS)  \
                     $(KLIBCOPTFLAGS) $(KLIBCWARNFLAGS)
 KLIBCAFLAGS      := -D__ASSEMBLY__ $(KLIBCCFLAGS)