Adding SharC annotations. Type checker off
[akaros.git] / kern / src / Makefrag
index e59261f..bebaa3a 100644 (file)
@@ -7,8 +7,6 @@
 KERN_SRC_DIR = $(KERN_DIR)/src
 OBJDIRS += $(KERN_SRC_DIR)
 
 KERN_SRC_DIR = $(KERN_DIR)/src
 OBJDIRS += $(KERN_SRC_DIR)
 
-include $(ARCH_DIR)/$(TARGET_ARCH)/src/Makefrag
-
 # entry.S must be first, so that it's the first code in the text segment!!!
 #
 # We also snatch the use of a couple handy source files
 # entry.S must be first, so that it's the first code in the text segment!!!
 #
 # We also snatch the use of a couple handy source files
@@ -24,35 +22,43 @@ KERN_SRCFILES := $(KERN_ARCH_SRCFILES) \
                  $(KERN_SRC_DIR)/string.c \
                  $(KERN_SRC_DIR)/atomic.c \
                  $(KERN_SRC_DIR)/workqueue.c \
                  $(KERN_SRC_DIR)/string.c \
                  $(KERN_SRC_DIR)/atomic.c \
                  $(KERN_SRC_DIR)/workqueue.c \
+                 $(KERN_SRC_DIR)/colored_caches.c \
+                 $(KERN_SRC_DIR)/page_alloc.c \
                  $(KERN_SRC_DIR)/pmap.c \
                  $(KERN_SRC_DIR)/env.c \
                  $(KERN_SRC_DIR)/manager.c \
                  $(KERN_SRC_DIR)/syscall.c \
                  $(KERN_SRC_DIR)/timer.c \
                  $(KERN_SRC_DIR)/pmap.c \
                  $(KERN_SRC_DIR)/env.c \
                  $(KERN_SRC_DIR)/manager.c \
                  $(KERN_SRC_DIR)/syscall.c \
                  $(KERN_SRC_DIR)/timer.c \
+                 $(KERN_SRC_DIR)/kfs.c \
+                 $(KERN_SRC_DIR)/process.c \
                  $(KERN_SRC_DIR)/kmalloc.c \
                  $(KERN_SRC_DIR)/kmalloc.c \
+                 $(KERN_SRC_DIR)/schedule.c \
                  $(KERN_SRC_DIR)/testing.c
 
 # Only build files if they exist.
 KERN_SRCFILES := $(wildcard $(KERN_SRCFILES))
 
 KERN_APPFILES := \
                  $(KERN_SRC_DIR)/testing.c
 
 # Only build files if they exist.
 KERN_SRCFILES := $(wildcard $(KERN_SRCFILES))
 
 KERN_APPFILES := \
-                    $(USER_APPS_ROSLIB_DIR)/proctests \
-                    $(USER_APPS_ROSLIB_DIR)/fptest \
-                    $(USER_APPS_ROSLIB_DIR)/null \
-                    $(USER_APPS_ROSLIB_DIR)/hello \
-                    $(USER_APPS_ROSLIB_DIR)/measurements \
-#                    $(USER_APPS_PARLIB_DIR)/matrix \
-#                    $(USER_APPS_PARLIB_DIR)/draw_nanwan \
-#                    $(USER_APPS_PARLIB_DIR)/open_read \
-#                    $(USER_APPS_PARLIB_DIR)/hello
+                 $(USER_APPS_ROSLIB_DIR)/proctests \
+                 $(USER_APPS_ROSLIB_DIR)/fptest \
+                 $(USER_APPS_ROSLIB_DIR)/null \
+                 $(USER_APPS_ROSLIB_DIR)/spawn \
+                 $(USER_APPS_ROSLIB_DIR)/hello \
+                 $(USER_APPS_ROSLIB_DIR)/mhello \
+                 $(USER_APPS_PARLIB_DIR)/channel_test_client \
+                 $(USER_APPS_PARLIB_DIR)/channel_test_server \
+                 $(USER_APPS_ROSLIB_DIR)/measurements \
+                 $(USER_APPS_PARLIB_DIR)/hello \
+                 $(USER_APPS_PARLIB_DIR)/matrix
+#                 $(USER_APPS_PARLIB_DIR)/open_read
 
 KERN_LDFLAGS   := $(KERN_LDFLAGS) -L$(OBJDIR)/$(KERN_DIR) \
 
 KERN_LDFLAGS   := $(KERN_LDFLAGS) -L$(OBJDIR)/$(KERN_DIR) \
-                  -T $(ARCH_DIR)/$(TARGET_ARCH)/kernel.ld
+                  -T $(KERN_ARCH_SRC_DIR)/kernel.ld
 
 
-KERN_OBJFILES  := $(patsubst $(KERN_SRC_DIR)/%.c, \
+KERN_OBJFILES  := $(patsubst $(KERN_DIR)/%.c, \
                              $(OBJDIR)/$(KERN_DIR)/%.o, \
                              $(KERN_SRCFILES))
                              $(OBJDIR)/$(KERN_DIR)/%.o, \
                              $(KERN_SRCFILES))
-KERN_OBJFILES  := $(patsubst $(KERN_SRC_DIR)/%.S, \
+KERN_OBJFILES  := $(patsubst $(KERN_DIR)/%.S, \
                              $(OBJDIR)/$(KERN_DIR)/%.o, \
                              $(KERN_OBJFILES))
 
                              $(OBJDIR)/$(KERN_DIR)/%.o, \
                              $(KERN_OBJFILES))
 
@@ -65,12 +71,12 @@ KERN_LDLIBS    := -livykern
 
 KERN_GCC_LIB   := $(GCC_LIB)
 
 
 KERN_GCC_LIB   := $(GCC_LIB)
 
-$(OBJDIR)/$(KERN_DIR)/%.o: $(KERN_SRC_DIR)/%.c
+$(OBJDIR)/$(KERN_DIR)/%.o: $(KERN_DIR)/%.c
        @echo + cc [KERN] $<
        @mkdir -p $(@D)
        $(V)$(CC) $(KERN_CFLAGS) -c -o $@ $<
 
        @echo + cc [KERN] $<
        @mkdir -p $(@D)
        $(V)$(CC) $(KERN_CFLAGS) -c -o $@ $<
 
-$(OBJDIR)/$(KERN_DIR)/%.o: $(KERN_SRC_DIR)/%.S
+$(OBJDIR)/$(KERN_DIR)/%.o: $(KERN_DIR)/%.S
        @echo + as [KERN] $<
        @mkdir -p $(@D)
        $(V)$(CC) $(KERN_CFLAGS) -c -o $@ $<
        @echo + as [KERN] $<
        @mkdir -p $(@D)
        $(V)$(CC) $(KERN_CFLAGS) -c -o $@ $<
@@ -82,12 +88,12 @@ $(OBJDIR)/$(KERN_DIR)/kernel: $(KERN_LDDEPENDS)
        $(V)$(OBJDUMP) -S $@ > $@.asm
        $(V)$(NM) -n $@ > $@.sym
 
        $(V)$(OBJDUMP) -S $@ > $@.asm
        $(V)$(NM) -n $@ > $@.sym
 
-$(OBJDIR)/$(KERN_DIR)/bochs.img: $(OBJDIR)/$(KERN_DIR)/kernel $(OBJDIR)/$(KERN_DIR)/boot
-       @echo + mk [KERN] $@
-       $(V)dd if=/dev/zero of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ count=10080 2>/dev/null
-       $(V)dd if=$(OBJDIR)/$(KERN_DIR)/boot of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ conv=notrunc 2>/dev/null
-       $(V)dd if=$(OBJDIR)/$(KERN_DIR)/kernel of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ seek=1 conv=notrunc 2>/dev/null
-       $(V)mv $(OBJDIR)/kern/bochs.img~ $(OBJDIR)/kern/bochs.img
+#$(OBJDIR)/$(KERN_DIR)/bochs.img: $(OBJDIR)/$(KERN_DIR)/kernel $(OBJDIR)/$(KERN_DIR)/boot
+#      @echo + mk [KERN] $@
+#      $(V)dd if=/dev/zero of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ count=10080 2>/dev/null
+#      $(V)dd if=$(OBJDIR)/$(KERN_DIR)/boot of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ conv=notrunc 2>/dev/null
+#      $(V)dd if=$(OBJDIR)/$(KERN_DIR)/kernel of=$(OBJDIR)/$(KERN_DIR)/bochs.img~ seek=1 conv=notrunc 2>/dev/null
+#      $(V)mv $(OBJDIR)/kern/bochs.img~ $(OBJDIR)/kern/bochs.img
 
 
-all: $(OBJDIR)/$(KERN_DIR)/bochs.img
+all: $(OBJDIR)/$(KERN_DIR)/kernel