Compare commits

..

No commits in common. "502bd93e07bf916146c64d108d40a58547912cde" and "c38a0cbf41ed2550295657892b053695a854930c" have entirely different histories.

4 changed files with 13 additions and 20 deletions

View file

@ -51,11 +51,19 @@ all: kern/kernel.elf
quickstart:
make get_toolchain && bear -- make -j$(nproc) && make qemu
SUBDIRS := kern
include $(patsubst %, %/include.mk, $(SUBDIRS))
KERNEL_OBJ := $(KERN_OBJ)
KERNEL_OBJ := \
kern/entry.o \
kern/start.o \
kern/kalloc.o \
kern/libkern/string.o \
kern/libkern/proc.o \
kern/libkern/uart.o \
kern/libkern/panic.o \
kern/libkern/memory.o \
kern/libkern/spinlock.o \
kern/libkern/mini-printf.o \
kern/libkern/stdio.o \
kern/libkern/badrand.o
kern/kernel.elf: $(KERNEL_OBJ)
@echo LD $@

View file

@ -26,7 +26,6 @@ On a linux machine, make sure that you have `make` and `curl` in path. The rest
of the tooling (gcc, qemu) will be handled by the build system. For extra convenience,
you could also use `bear` for generating "compile_commands.json". This is useful for helping
clangd pick up the correct paths, and will result in better in-editor diagnostics and warnings.
clang-format and find might also be useful for development.
```sh
make get_toolchain # Dont worry, is will land locally inside project directory

View file

@ -1,9 +0,0 @@
KERN_SRC := $(wildcard kern/*.c)
KERN_SRC += $(wildcard kern/*.S)
KERN_OBJ := $(KERN_SRC:.c=.o)
KERN_OBJ := $(KERN_OBJ:.S=.o)
include kern/libkern/include.mk
KERN_OBJ += $(LIBKERN_OBJ)

View file

@ -1,5 +0,0 @@
LIBKERN_SRC := $(wildcard kern/libkern/*.c)
LIBKERN_SRC += $(wildcard kern/libkern/*.S)
LIBKERN_OBJ := $(LIBKERN_SRC:.c=.o)
LIBKERN_OBJ := $(LIBKERN_OBJ:.S=.o)