--- /dev/null
+--- a/cpu/mips/Makefile
++++ b/cpu/mips/Makefile
+@@ -36,6 +36,9 @@ START := $(addprefix $(obj),$(START))
+
+ all: $(obj).depend $(START) $(LIB)
+
++start.o: start.S
++ $(CC) $(AFLAGS) -fPIC -c -o $@ $<
++
+ $(LIB): $(OBJS)
+ $(AR) $(ARFLAGS) $@ $(OBJS)
+
+--- a/Makefile
++++ b/Makefile
+@@ -185,8 +185,8 @@ include $(TOPDIR)/config.mk
+ OBJS = cpu/$(CPU)/start.o
+ OBJS_BOOTSTRAP = cpu/$(CPU)/start_bootstrap.o
+
+-cpu/$(CPU)/start_bootstrap.S: cpu/$(CPU)/start.S
+- ln -s start.S cpu/$(CPU)/start_bootstrap.S
++cpu/$(CPU)/start_bootstrap.o: cpu/$(CPU)/start.S
++ $(CC) $(AFLAGS) -fPIC -DCFG_BOOTSTRAP_CODE -c -o $@ $<
+
+ ifeq ($(CPU),i386)
+ OBJS += cpu/$(CPU)/start16.o