summaryrefslogtreecommitdiff
path: root/410kern/kernel.mk
diff options
context:
space:
mode:
authorHanjie Wu <hanjiew@andrew.cmu.edu>2023-04-18 02:21:10 -0400
committerHanjie Wu <hanjiew@andrew.cmu.edu>2023-04-18 02:21:10 -0400
commitc71294cdd3581c3738d24ffd65414f8644a1094d (patch)
treec86245d50fad9eee4163dbba169bd1839edbf88f /410kern/kernel.mk
initial commit
Diffstat (limited to '410kern/kernel.mk')
-rw-r--r--410kern/kernel.mk32
1 files changed, 32 insertions, 0 deletions
diff --git a/410kern/kernel.mk b/410kern/kernel.mk
new file mode 100644
index 0000000..35c18a9
--- /dev/null
+++ b/410kern/kernel.mk
@@ -0,0 +1,32 @@
+###################### LOCAL BUILD TARGETS ############################
+410KERNEL_OBJS = entry.o
+
+410KOBJS = $(410KERNEL_OBJS:%=$(410KDIR)/%)
+ALL_410KOBJS += $(410KOBJS)
+
+410KLIBS = $(410KERNEL_LIBS:%=$(410KDIR)/%)
+410KCLEANS += $(410KDIR)/partial_kernel.o
+
+$(410KDIR)/partial_kernel.o : $(410KOBJS)
+ $(LD) -r $(LDFLAGS) -o $@ $^
+
+########################### LIBRARY INCLUSIONS ################################
+ifneq (,$(410KERNEL_LIBS))
+include $(patsubst lib%.a,$(410KDIR)/%/kernel.mk,$(410KERNEL_LIBS))
+endif
+
+
+########################## STUDENT KERNEL BUILD ###############################
+
+STUKOBJS = $(KERNEL_OBJS:%=$(STUKDIR)/%)
+ALL_STUKOBJS += $(STUKOBJS)
+
+STUKCLEANS += $(STUKDIR)/partial_kernel.o
+
+ifeq ($(STUKOBJS),)
+$(STUKDIR)/partial_kernel.o :
+ touch $@
+else
+$(STUKDIR)/partial_kernel.o : $(STUKOBJS)
+ $(LD) -r $(LDFLAGS) -o $@ $^
+endif