include ../defaults.mk %.efi: $(CC.info) @$(CC) $(LDFLAGS) -o $@ $^ VPATH := ../lib ../lib/asm/$(ARCH) efi/ IMAGE := kjarna.efi CPPFLAGS += -I../api -I../lib CFLAGS += --target=$(ARCH)-unknown-windows -fshort-wchar -mno-avx \ -mno-sse -mno-mmx -funsigned-char -Wno-pointer-sign -ggdb \ -fno-ms-extensions ASFLAGS += --target=$(ARCH)-unknown-windows -ggdb LDFLAGS := --target=$(ARCH)-unknown-windows -nostdlib -ggdb \ -Wl,-entry:_start,-subsystem:efi_application -fuse-ld=lld-link all: $(IMAGE) CRT_OBJS := start.o bind.o LIB_OBJS := memcmp.o memset.o memcpy.o memmove.o string.o elf64.o printf.o stdio.o msr.o EFI_OBJS := file.o memory.o protocol.o image.o APP_OBJS := main.o fake_syscall_entry.o OBJS := $(CRT_OBJS) $(LIB_OBJS) $(EFI_OBJS) $(APP_OBJS) DEPS := $(OBJS:.o=.d) $(IMAGE): $(OBJS) CLEANLIST := $(wildcard $(BUILD) $(OBJS) $(IMAGE) $(IMAGE:.efi=.pdb)) DCLEANLIST := $(CLEANLIST) $(wildcard $(DEPS)) include ../rules.mk -include $(DEPS)