26 lines
609 B
Makefile
26 lines
609 B
Makefile
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
|
|
|
|
PROGRAMS = pwm blkdev accum charcount nic-loopback big-blkdev pingd
|
|
|
|
default: $(addsuffix .riscv,$(PROGRAMS))
|
|
|
|
dumps: $(addsuffix .dump,$(PROGRAMS))
|
|
|
|
%.o: %.S
|
|
$(GCC) $(CFLAGS) -D__ASSEMBLY__=1 -c $< -o $@
|
|
|
|
%.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 $@
|
|
|
|
%.dump: %.riscv
|
|
$(OBJDUMP) -D $< > $@
|
|
|
|
clean:
|
|
rm -f *.riscv *.o *.dump
|