${PSEUDOSTUBS}.c: ${BASEDIR}/${PLATFORM}/librumprun_base.a
sh ../makepseudolinkstubs.sh ${NM} ${RUMPSRC} $< $@
+bmk.ldscript: ${LDSCRIPT}
+ ln -sf $< $@
+
commonlibs: platformlibs userlibs
userlibs: ${BASEDIR}/${PLATFORM}/librumprun_base.a ${PSEUDOSTUBS}.o
-platformlibs: ${COREDIR}/${PLATFORM}/libbmk_core.a ${RUMPUSERDIR}/${PLATFORM}/libbmk_rumpuser.a
+platformlibs: ${COREDIR}/${PLATFORM}/libbmk_core.a ${RUMPUSERDIR}/${PLATFORM}/libbmk_rumpuser.a bmk.ldscript
compiler_rt: ${COMPILERRTDIR}/${PLATFORM}/libcompiler_rt.a
.PHONY: buildtest
( cd ${COMPILERRTDIR} && \
${RUMPMAKE} RUMPSRC=${RUMPSRC} MAKEOBJDIR=${PLATFORM} cleandir )
rm -f ${PSEUDOSTUBS}.c ${PSEUDOSTUBS}.o
+ rm -f bmk.ldscript
.PHONY: tests
tests: ${MAINOBJ} commonlibs app-tools
all: include/hw/machine ${MAINOBJ} ${TARGETS}
-include ../Makefile.inc
-
CPPFLAGS= -Iinclude -I../../include -nostdinc
CFLAGS+= ${BUILDRUMP_TOOL_CFLAGS}
ARCHDIR?= ${MACHINE}
+LDSCRIPT:= $(abspath arch/${ARCHDIR}/kern.ldscript)
OBJS_BMK+= intr.o clock_subr.o kernel.o multiboot.o undefs.o
+include ../Makefile.inc
+
include arch/${ARCHDIR}/Makefile.inc
.PHONY: clean cleandir test
APP_TOOLS_PLATFORM= hw
APP_TOOLS_OBJS_BAKE= ${MAINOBJ}
-APP_TOOLS_LDSCRIPT_BAKE:= $(abspath arch/${ARCHDIR}/kern.ldscript)
+APP_TOOLS_LDSCRIPT_BAKE:= ${LDSCRIPT}
APP_TOOLS_DIR:= $(abspath ../../app-tools)
include ${APP_TOOLS_DIR}/Makefile.app-tools
TARGETS+= compiler_rt
endif
+LDSCRIPT:= $(abspath $(OBJ_DIR)/xen/minios.lds)
+
.PHONY: default
default: ${TARGETS}
APP_TOOLS_PLATFORM= xen
APP_TOOLS_OBJS_BAKE= $(MAINOBJ)
-APP_TOOLS_LDSCRIPT_BAKE:= $(abspath $(OBJ_DIR)/xen/minios.lds)
+APP_TOOLS_LDSCRIPT_BAKE:= $(LDSCRIPT)
APP_TOOLS_DIR= $(abspath ../../app-tools)
include $(APP_TOOLS_DIR)/Makefile.app-tools
clean: app-tools_clean commonclean
$(MAKE) -C xen OBJ_DIR=$(OBJ_DIR)/xen clean
- rm -f $(OBJ_DIR)/*.o $(OBJ_DIR)/lib/*.o buildtest
+ rm -f $(OBJ_DIR)/*.o $(OBJ_DIR)/lib/*.o buildtest $(MAINOBJ)
cleanrump: clean
rm -rf rump rumpobj rumptools
CPPFLAGS+= -I../../include -I../../rumprun/include -I../../platform/${PLATFORM}/include
CPPFLAGS+= -nostdlib
-LDSCRIPT=$(abspath ../../platform/${PLATFORM}/arch/${MACHINE}/kern.ldscript)
+LDSCRIPT=$(abspath ../../platform/${PLATFORM}/bmk.ldscript)
ifeq (${MACHINE},amd64)
LDFLAGS+= -z max-page-size=0x1000