Sentinel65X-Kernel/config/sdk-targets.mk

39 lines
720 B
Makefile

.PHONY: all
all: build/sentinel-kernel.bin
.PHONY: clean
clean:
@find build -type f \( \
-name '*.pgz' -o \
-name '*.bin' -o \
-name '*.elf' -o \
-name '*.a' \
\) -delete
@find src -type f \( \
-name '*.o' -o \
-name '*.d' -o \
-name '$(TARGET)' \
\) -delete
@rm -f *.lst
%.o: %.c
@echo "Compiling $@..."
@$(CC) -c $(CFLAGS) -o $@ $<
%.o: %.s
@echo "Assembling $@)..."
@$(AS) $(ASFLAGS) -o $@ $<
%.d: %.c
@echo "Generating dependencies for $<"
@printf '%s' "$(dir $@)" > $@
@$(CC) $(CFLAGS) --dependencies $< >> $@
build/sentinel-kernel.bin: $(KERNEL_OBJ)
@echo "Linking $@..."
# @$(AR) $@ $^
$(LD) $(LDFLAGS) -o $@ $^
@rm -f $@
@mv build/sentinel-kernel.raw $@
-include $(KERNEL_DEP)