tests: Migrate to newlib-nano and libgloss-htif

This deprecates the monolithic syscalls.c environment in favor of a more
structured board support package (BSP) based on newlib.
This commit is contained in:
Albert Ou
2019-12-13 15:03:20 -08:00
parent 7059ac3f0f
commit f60e1a9c89
10 changed files with 66 additions and 2225 deletions

View File

@@ -1,12 +1,18 @@
GCC=riscv64-unknown-elf-gcc
OBJDUMP=riscv64-unknown-elf-objdump
CFLAGS=-mcmodel=medany -std=gnu99 -O2 -fno-common -fno-builtin-printf -Wall
LDFLAGS=-static -nostdlib -nostartfiles -lgcc
CFLAGS= -std=gnu99 -O2 -fno-common -fno-builtin-printf -Wall
LDFLAGS= -static
include libgloss.mk
PROGRAMS = pwm blkdev accum charcount nic-loopback big-blkdev pingd
.DEFAULT_GOAL := default
.PHONY: default
default: $(addsuffix .riscv,$(PROGRAMS))
.PHONY: dumps
dumps: $(addsuffix .dump,$(PROGRAMS))
%.o: %.S
@@ -15,11 +21,14 @@ dumps: $(addsuffix .dump,$(PROGRAMS))
%.o: %.c mmio.h
$(GCC) $(CFLAGS) -c $< -o $@
%.riscv: %.o crt.o syscalls.o link.ld
$(GCC) -T link.ld $(LDFLAGS) $< crt.o syscalls.o -o $@
%.riscv: %.o $(libgloss)
$(GCC) $(LDFLAGS) $< -o $@
%.dump: %.riscv
$(OBJDUMP) -D $< > $@
.PHONY: clean
clean:
rm -f *.riscv *.o *.dump
$(if $(libgloss),rm -rf $(libgloss_builddir)/)