Each architecture needs a Makefile.inc; don't call it Makefile though

diff --git a/arch/alpha/Makefile b/arch/alpha/Makefile.inc
similarity index 91%
rename from arch/alpha/Makefile
rename to arch/alpha/Makefile.inc
index 434f2ba..7fc8d96 100644
--- a/arch/alpha/Makefile
+++ b/arch/alpha/Makefile.inc
@@ -1,10 +1,15 @@
+# -*- makefile -*-
 #
 # arch/alpha/Makefile
 #
-# Special rules for the alpha make.  Note that this is actually included
-# from the main Makefile, and that pathnames should be accordingly.
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
 #
 
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
 # Special CFLAGS for the divide code
 DIVCFLAGS = $(REQFLAGS) \
 	-O3 -fomit-frame-pointer -fcall-saved-1 -fcall-saved-2 \
@@ -33,8 +38,6 @@
 	arch/$(ARCH)/__divl.lo \
 	arch/$(ARCH)/__reml.lo
 
-ARCHCLEAN = arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss
-
 arch/$(ARCH)/%.s: arch/$(ARCH)/%.ss
 	sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
 	    -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
@@ -92,3 +95,7 @@
 
 arch/$(ARCH)/__reml.lss: arch/$(ARCH)/divide.c
 	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
+
+archclean:
+	rm -f arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss
+
diff --git a/arch/arm/Makefile.inc b/arch/arm/Makefile.inc
new file mode 100644
index 0000000..fd8752c
--- /dev/null
+++ b/arch/arm/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/arm/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/cris/Makefile.inc b/arch/cris/Makefile.inc
new file mode 100644
index 0000000..6daa2a7
--- /dev/null
+++ b/arch/cris/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/cris/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/i386/Makefile.inc b/arch/i386/Makefile.inc
new file mode 100644
index 0000000..3fac508
--- /dev/null
+++ b/arch/i386/Makefile.inc
@@ -0,0 +1,14 @@
+# -*- makefile -*-
+#
+# arch/i386/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -march=i386 -mcpu=i686 -Os -fomit-frame-pointer \
+	   -malign-functions=0 -malign-jumps=0 -malign-loops=0
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/ia64/Makefile.inc b/arch/ia64/Makefile.inc
new file mode 100644
index 0000000..4717635
--- /dev/null
+++ b/arch/ia64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ia64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/arch/m68k/Makefile.inc b/arch/m68k/Makefile.inc
new file mode 100644
index 0000000..32f1b32
--- /dev/null
+++ b/arch/m68k/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/m68k/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/mips/Makefile.inc b/arch/mips/Makefile.inc
new file mode 100644
index 0000000..7c721a1
--- /dev/null
+++ b/arch/mips/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/mips/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/mips64/Makefile.inc b/arch/mips64/Makefile.inc
new file mode 100644
index 0000000..1f3616b
--- /dev/null
+++ b/arch/mips64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/mips64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/arch/parisc/Makefile.inc b/arch/parisc/Makefile.inc
new file mode 100644
index 0000000..ca08e8a
--- /dev/null
+++ b/arch/parisc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/parisc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/ppc/Makefile.inc b/arch/ppc/Makefile.inc
new file mode 100644
index 0000000..ee26408
--- /dev/null
+++ b/arch/ppc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ppc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/ppc64/Makefile.inc b/arch/ppc64/Makefile.inc
new file mode 100644
index 0000000..cd30da6
--- /dev/null
+++ b/arch/ppc64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ppc64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/arch/s390/Makefile.inc b/arch/s390/Makefile.inc
new file mode 100644
index 0000000..3a5d915
--- /dev/null
+++ b/arch/s390/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/s390/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/s390x/Makefile.inc b/arch/s390x/Makefile.inc
new file mode 100644
index 0000000..badb888
--- /dev/null
+++ b/arch/s390x/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/s390x/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/arch/sh/Makefile.inc b/arch/sh/Makefile.inc
new file mode 100644
index 0000000..55d7d54
--- /dev/null
+++ b/arch/sh/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sh/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/sparc/Makefile.inc b/arch/sparc/Makefile.inc
new file mode 100644
index 0000000..9a73e2a
--- /dev/null
+++ b/arch/sparc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sparc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/arch/sparc64/Makefile.inc b/arch/sparc64/Makefile.inc
new file mode 100644
index 0000000..de78966
--- /dev/null
+++ b/arch/sparc64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sparc64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/klibc/Makefile b/klibc/Makefile
index 1b1b269..21eca92 100644
--- a/klibc/Makefile
+++ b/klibc/Makefile
@@ -2,8 +2,6 @@
 CROSS   = 
 CC	= $(CROSS)gcc
 LD      = $(CROSS)ld
-OPTFLAGS = -march=i386 -mcpu=i686 -Os -fomit-frame-pointer \
-	   -malign-functions=0 -malign-jumps=0 -malign-loops=0
 REQFLAGS = -nostdinc -iwithprefix include -I. -I./include \
 	  -I./linux/include -Wall
 CFLAGS  = $(OPTFLAGS) $(REQFLAGS)
@@ -46,8 +44,10 @@
 
 all: $(TESTS) $(CRT0) $(LIB) $(SOLIB)
 
-# If there is an arch-specific file...
--include arch/$(ARCH)/Makefile
+#
+# Include arch-specific rule fragments
+#
+include arch/$(ARCH)/Makefile.inc
 
 .SUFFIXES: .c .o .a .so .lo .i .S .s .ls .ss .lss
 
@@ -139,9 +139,9 @@
 objects-shared: $(SHARED)
 	touch $(DIR)/shared.obj
 
-clean:
+clean: archclean
 	rm -f $(TESTS) *.o *.lo *.a *.so *.i *.s *.ls *.stripped
-	rm -f arch/*/*.o arch/*/*.lo arch/*/*.i arch/*/*.s arch/*/*.ls $(ARCHCLEAN)
+	rm -f arch/*/*.o arch/*/*.lo arch/*/*.i arch/*/*.s arch/*/*.ls
 	rm -rf syscalls syscalls.dir
 	rm -rf socketcalls socketcalls.dir
 
diff --git a/klibc/arch/alpha/Makefile b/klibc/arch/alpha/Makefile
deleted file mode 100644
index 434f2ba..0000000
--- a/klibc/arch/alpha/Makefile
+++ /dev/null
@@ -1,94 +0,0 @@
-#
-# arch/alpha/Makefile
-#
-# Special rules for the alpha make.  Note that this is actually included
-# from the main Makefile, and that pathnames should be accordingly.
-#
-
-# Special CFLAGS for the divide code
-DIVCFLAGS = $(REQFLAGS) \
-	-O3 -fomit-frame-pointer -fcall-saved-1 -fcall-saved-2 \
-	-fcall-saved-3 -fcall-saved-4 -fcall-saved-5 -fcall-saved-6 \
-	-fcall-saved-7 -fcall-saved-8 -fcall-saved-15 -fcall-saved-16 \
-	-fcall-saved-17 -fcall-saved-18 -fcall-saved-19 -fcall-saved-20 \
-	-fcall-saved-21 -fcall-saved-22 -ffixed-23 -fcall-saved-24 \
-	-fcall-saved-25 -fcall-saved-27
-
-ARCHOBJS = \
-	arch/$(ARCH)/__divqu.o \
-	arch/$(ARCH)/__remqu.o \
-	arch/$(ARCH)/__divq.o \
-	arch/$(ARCH)/__remq.o \
-	arch/$(ARCH)/__divlu.o \
-	arch/$(ARCH)/__remlu.o \
-	arch/$(ARCH)/__divl.o \
-	arch/$(ARCH)/__reml.o
-ARCHSOOBJS = \
-	arch/$(ARCH)/__divqu.lo \
-	arch/$(ARCH)/__remqu.lo \
-	arch/$(ARCH)/__divq.lo \
-	arch/$(ARCH)/__remq.lo \
-	arch/$(ARCH)/__divlu.lo \
-	arch/$(ARCH)/__remlu.lo \
-	arch/$(ARCH)/__divl.lo \
-	arch/$(ARCH)/__reml.lo
-
-ARCHCLEAN = arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss
-
-arch/$(ARCH)/%.s: arch/$(ARCH)/%.ss
-	sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
-	    -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
-            -e 's/\$$26\b/$$23/g' -e 's/\$$99\b/$$16/g' < $< > $@
-
-arch/$(ARCH)/%.ls: arch/$(ARCH)/%.lss
-	sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
-	    -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
-            -e 's/\$$26\b/$$23/g' -e 's/\$$99\b/$$16/g' < $< > $@
-
-arch/$(ARCH)/__divqu.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=0 -DBITS=64 -DNAME=__divqu -S -o $@ $<
-
-arch/$(ARCH)/__remqu.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=1 -DBITS=64 -DNAME=__remqu -S -o $@ $<
-
-arch/$(ARCH)/__divq.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=0 -DBITS=64 -DNAME=__divq -S -o $@ $<
-
-arch/$(ARCH)/__remq.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=1 -DBITS=64 -DNAME=__remq -S -o $@ $<
-
-arch/$(ARCH)/__divlu.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=0 -DBITS=32 -DNAME=__divlu -S -o $@ $<
-
-arch/$(ARCH)/__remlu.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=0 -DREM=1 -DBITS=32 -DNAME=__remlu -S -o $@ $<
-
-arch/$(ARCH)/__divl.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=0 -DBITS=32 -DNAME=__divl -S -o $@ $<
-
-arch/$(ARCH)/__reml.ss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
-
-arch/$(ARCH)/__divqu.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=0 -DBITS=64 -DNAME=__divqu -S -o $@ $<
-
-arch/$(ARCH)/__remqu.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=1 -DBITS=64 -DNAME=__remqu -S -o $@ $<
-
-arch/$(ARCH)/__divq.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=0 -DBITS=64 -DNAME=__divq -S -o $@ $<
-
-arch/$(ARCH)/__remq.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=64 -DNAME=__remq -S -o $@ $<
-
-arch/$(ARCH)/__divlu.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=0 -DBITS=32 -DNAME=__divlu -S -o $@ $<
-
-arch/$(ARCH)/__remlu.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=0 -DREM=1 -DBITS=32 -DNAME=__remlu -S -o $@ $<
-
-arch/$(ARCH)/__divl.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=0 -DBITS=32 -DNAME=__divl -S -o $@ $<
-
-arch/$(ARCH)/__reml.lss: arch/$(ARCH)/divide.c
-	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
diff --git a/arch/alpha/Makefile b/klibc/arch/alpha/Makefile.inc
similarity index 91%
copy from arch/alpha/Makefile
copy to klibc/arch/alpha/Makefile.inc
index 434f2ba..7fc8d96 100644
--- a/arch/alpha/Makefile
+++ b/klibc/arch/alpha/Makefile.inc
@@ -1,10 +1,15 @@
+# -*- makefile -*-
 #
 # arch/alpha/Makefile
 #
-# Special rules for the alpha make.  Note that this is actually included
-# from the main Makefile, and that pathnames should be accordingly.
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
 #
 
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
 # Special CFLAGS for the divide code
 DIVCFLAGS = $(REQFLAGS) \
 	-O3 -fomit-frame-pointer -fcall-saved-1 -fcall-saved-2 \
@@ -33,8 +38,6 @@
 	arch/$(ARCH)/__divl.lo \
 	arch/$(ARCH)/__reml.lo
 
-ARCHCLEAN = arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss
-
 arch/$(ARCH)/%.s: arch/$(ARCH)/%.ss
 	sed -e 's/\$$0\b/$$27/g' -e 's/\$$24\b/$$99/g' \
 	    -e 's/\$$16\b/$$24/g' -e 's/\$$17\b/$$25/g' \
@@ -92,3 +95,7 @@
 
 arch/$(ARCH)/__reml.lss: arch/$(ARCH)/divide.c
 	$(CC) $(DIVCFLAGS) -fPIC -DSIGNED=1 -DREM=1 -DBITS=32 -DNAME=__reml -S -o $@ $<
+
+archclean:
+	rm -f arch/$(ARCH)/*.ss arch/$(ARCH)/*.lss
+
diff --git a/klibc/arch/arm/Makefile.inc b/klibc/arch/arm/Makefile.inc
new file mode 100644
index 0000000..fd8752c
--- /dev/null
+++ b/klibc/arch/arm/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/arm/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/cris/Makefile.inc b/klibc/arch/cris/Makefile.inc
new file mode 100644
index 0000000..6daa2a7
--- /dev/null
+++ b/klibc/arch/cris/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/cris/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/i386/Makefile.inc b/klibc/arch/i386/Makefile.inc
new file mode 100644
index 0000000..3fac508
--- /dev/null
+++ b/klibc/arch/i386/Makefile.inc
@@ -0,0 +1,14 @@
+# -*- makefile -*-
+#
+# arch/i386/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -march=i386 -mcpu=i686 -Os -fomit-frame-pointer \
+	   -malign-functions=0 -malign-jumps=0 -malign-loops=0
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/ia64/Makefile.inc b/klibc/arch/ia64/Makefile.inc
new file mode 100644
index 0000000..4717635
--- /dev/null
+++ b/klibc/arch/ia64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ia64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/klibc/arch/m68k/Makefile.inc b/klibc/arch/m68k/Makefile.inc
new file mode 100644
index 0000000..32f1b32
--- /dev/null
+++ b/klibc/arch/m68k/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/m68k/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/mips/Makefile.inc b/klibc/arch/mips/Makefile.inc
new file mode 100644
index 0000000..7c721a1
--- /dev/null
+++ b/klibc/arch/mips/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/mips/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/mips64/Makefile.inc b/klibc/arch/mips64/Makefile.inc
new file mode 100644
index 0000000..1f3616b
--- /dev/null
+++ b/klibc/arch/mips64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/mips64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/klibc/arch/parisc/Makefile.inc b/klibc/arch/parisc/Makefile.inc
new file mode 100644
index 0000000..ca08e8a
--- /dev/null
+++ b/klibc/arch/parisc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/parisc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/ppc/Makefile.inc b/klibc/arch/ppc/Makefile.inc
new file mode 100644
index 0000000..ee26408
--- /dev/null
+++ b/klibc/arch/ppc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ppc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/ppc64/Makefile.inc b/klibc/arch/ppc64/Makefile.inc
new file mode 100644
index 0000000..cd30da6
--- /dev/null
+++ b/klibc/arch/ppc64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/ppc64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/klibc/arch/s390/Makefile.inc b/klibc/arch/s390/Makefile.inc
new file mode 100644
index 0000000..3a5d915
--- /dev/null
+++ b/klibc/arch/s390/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/s390/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/s390x/Makefile.inc b/klibc/arch/s390x/Makefile.inc
new file mode 100644
index 0000000..badb888
--- /dev/null
+++ b/klibc/arch/s390x/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/s390x/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean:
diff --git a/klibc/arch/sh/Makefile.inc b/klibc/arch/sh/Makefile.inc
new file mode 100644
index 0000000..55d7d54
--- /dev/null
+++ b/klibc/arch/sh/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sh/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/sparc/Makefile.inc b/klibc/arch/sparc/Makefile.inc
new file mode 100644
index 0000000..9a73e2a
--- /dev/null
+++ b/klibc/arch/sparc/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sparc/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 32
+
+archclean:
diff --git a/klibc/arch/sparc64/Makefile.inc b/klibc/arch/sparc64/Makefile.inc
new file mode 100644
index 0000000..de78966
--- /dev/null
+++ b/klibc/arch/sparc64/Makefile.inc
@@ -0,0 +1,13 @@
+# -*- makefile -*-
+#
+# arch/sparc64/Makefile
+#
+# Special rules for this architecture.  Note that this is actually
+# included from the main Makefile, and that pathnames should be
+# accordingly.
+#
+
+OPTFLAGS = -Os -fomit-frame-pointer
+BITSIZE  = 64
+
+archclean: