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)