diff options
Diffstat (limited to 'Makefile')
| -rw-r--r-- | Makefile | 36 | 
1 files changed, 14 insertions, 22 deletions
| @@ -1,30 +1,22 @@  TARGET?=virt  CROSS_COMPILE?=riscv64-unknown-elf-  +GDB_PORT?=1234 +CFLAGS=-nostdlib -ffreestanding -mcmodel=medany -nostdinc -I${.CURDIR}/include  +.export -BUILDDIR=build/${TARGET} -TARGETDIR=mainboard/${TARGET} +sys: ${SRC} lib/build/libc.a +	@echo "building kernel" +	(${MAKE} -C sys -e)  -CFLAGS=-nostdlib -ffreestanding -mcmodel=medany +lib/build/libc.a:  +	@echo "building libc" +	(${MAKE} -C lib -e) -.if !exists(${TARGETDIR}/conf/mainboard.mk) -.error 'ERROR: invalid target "${TARGET}"' -.else -.include <${TARGETDIR}/conf/mainboard.mk> -.endif - -all: ${BUILDDIR}/kernel.elf  +debug: sys +	(${MAKE} -C sys -e debug)   clean: -	rm -rf ${BUILDDIR} - -${BUILDDIR}/kernel.elf: ${SRC} -	mkdir -p ${BUILDDIR} -	${CROSS_COMPILE}gcc ${SRC} \ -		-Wl,--defsym=LOAD_ADDR=${LOAD_ADDR}\ -		-Wl,--defsym=PAGE_SIZE=${PAGE_SIZE}\ -		-Wl,--defsym=NPROC=${NPROC}\ -		-DPAGE_SIZE=${PAGE_SIZE}\ -		${CFLAGS} -T kernel/lds/kernel.ld ${LDFLAGS}\ -		-o $@ +	(${MAKE} -C sys -e clean) +	(${MAKE} -C lib -e clean) -.PHONY: all clean +.PHONY: sys debug all clean |