File tree Expand file tree Collapse file tree 1 file changed +12
-12
lines changed Expand file tree Collapse file tree 1 file changed +12
-12
lines changed Original file line number Diff line number Diff line change 1- EXE := kernel.elf
2- IMG := kernel8.img
3- MAP := kernel.map
1+ LIB := .build/release/libKernel.a
2+ EXE := .build/kernel.elf
3+ IMG := .build/kernel8.img
4+ MAP := .build/kernel.map
5+ LINKER_SCRIPT := linker.ld
46
57TRIPLE := aarch64-none-none-elf
68SWIFT := swift
79SWIFT_BUILD_FLAGS := --triple $(TRIPLE ) -c release -Xswiftc -Osize \
8- --experimental-lto-mode=full -Xswiftc -experimental-hermetic-seal-at-link
10+ --experimental-lto-mode=full -Xswiftc -experimental-hermetic-seal-at-link
911LD := clang -fuse-ld=lld
1012LDFLAGS := --target=$(TRIPLE ) -nostdlib -static -Wl,--gc-sections,--print-gc-sections,--strip-all
1113OBJCOPY := llvm-objcopy
@@ -14,23 +16,21 @@ QEMU := qemu-system-aarch64
1416.PHONY : all
1517all : $(IMG )
1618
17- $(EXE ) : linker.ld swift
18- $(LD ) $(LDFLAGS ) -T linker.ld -Xlinker -Map=$(MAP ) .build/release/libKernel.a -o $@
19+ $(EXE ) : Makefile $( LINKER_SCRIPT ) $( LIB )
20+ $(LD ) $(LDFLAGS ) -T $( LINKER_SCRIPT ) -Xlinker -Map=$(MAP ) $( LIB ) -o $@
1921
20- $(IMG ) : $(EXE )
21- $(OBJCOPY ) $< -O binary $@
22+ $(IMG ) : Makefile $(EXE )
23+ $(OBJCOPY ) $( EXE ) -O binary $@
2224
23- .PHONY : swift
24- swift :
25+ $(LIB ) : Makefile .swift-version Package.swift $(wildcard Package.resolved) Sources
2526 $(SWIFT ) build $(SWIFT_BUILD_FLAGS )
2627
2728.PHONY : run
28- run : all
29+ run : $( IMG )
2930 $(QEMU ) -machine raspi4b -kernel $(IMG ) -serial stdio
3031
3132.PHONY : clean
3233clean :
33- $(RM ) $(EXE ) $(IMG ) $(MAP )
3434 $(SWIFT ) package clean
3535
3636.PHONY : lint
You can’t perform that action at this time.
0 commit comments