CROSS_COMPILE= CC=$(CROSS_COMPILE)gcc LD=$(CROSS_COMPILE)ld OBJCOPY=$(CROSS_COMPILE)objcopy XXD=xxd CFLAGS=-nostdinc -nostdlib -static -g -m32 -W -Wall -Wextra -Werror -mstack-protector-guard=global OBJS=hello-world.out interrupt-test.out stack-test.out init.out SYMS=init.sym all: $(OBJS) $(SYMS) mkdir -p build mv $(OBJS) build mv $(SYMS) build %.o: %.c $(CC) $(CFLAGS) -c -o $@ $< %.o: %.s $(CC) $(CFLAGS) -c -o $@ $< %.out1: %.o script.ld $(LD) -nostdlib -e main -Ttext 0x40000000 -T script.ld $< -o $@ %.out: %.out1 $(OBJCOPY) --strip-debug $< $@ %.sym: %.out1 $(OBJCOPY) --only-keep-debug $< $@ .PHONY: clean clean: -rm -rf build -rm $(OBJS) -rm $(SYMS) -rm compile_commands.json