add files from learning repo
This commit is contained in:
33
Makefile
Normal file
33
Makefile
Normal file
@@ -0,0 +1,33 @@
|
||||
SHELL = /bin/bash
|
||||
.DEFAULT_GOAL := build
|
||||
BUILDDIR = build
|
||||
BINDIR = bin
|
||||
OBJECT_FILES = boot.o
|
||||
|
||||
build: clean-objects assemble-stub compile copy-o link
|
||||
|
||||
assemble-stub:
|
||||
mkdir -p $(BUILDDIR)/
|
||||
aarch64-elf-as boot.s -o $(BUILDDIR)/boot.o
|
||||
|
||||
compile:
|
||||
mkdir -p $(BUILDDIR)/
|
||||
nim c -d:release kernel.nim
|
||||
|
||||
copy-o:
|
||||
cp nimcache/*.o build/
|
||||
|
||||
clear, clean:
|
||||
rm -rf $(BUILDDIR) nimcache/ bin/
|
||||
|
||||
clean-objects:
|
||||
rm -rf $(BUILDDIR)/*.o nimcache/*.o
|
||||
|
||||
link:
|
||||
mkdir -p $(BINDIR) && \
|
||||
aarch64-elf-ld -nostdlib -Tlinker.ld -o bin/kernel.elf -O2 $(wildcard build/*.o)
|
||||
|
||||
boot:
|
||||
|
||||
setup-macos:
|
||||
brew install aarch64-elf-binutils aarch64-elf-gcc nim
|
||||
Reference in New Issue
Block a user