summaryrefslogtreecommitdiff
path: root/Makefile
blob: 89bfa4dd3915d5e0893cd49fc152b21d8a5085a9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
BOOT_DIR := boot
BOOT_FILE := $(BOOT_DIR)/kjarna.efi

SERVICE_DIR := service
SERVICE_FILE := $(SERVICE_DIR)/kjarna.os

CORE_DIR := kc/core
CORE_FILE := $(CORE_DIR)/kernel.os

TARGETS := $(SERVICE_FILE) $(BOOT_FILE) $(CORE_FILE)
DIRS := $(SERVICE_DIR) $(BOOT_DIR) $(CORE_DIR)

DIRS_CLEAN := $(addprefix clean-,$(DIRS))
DIRS_DISTCLEAN := $(addprefix dist,$(DIRS_CLEAN))

all: $(TARGETS)
clean: $(DIRS_CLEAN)
distclean: $(DIRS_DISTCLEAN)

$(DIRS_CLEAN): clean-%:
	$(MAKE) -C $* clean

$(DIRS_DISTCLEAN): distclean-%:
	$(MAKE) -C $* distclean

$(TARGETS):
	$(MAKE) -C $(dir $@)

.PHONY: all clean distclean $(TARGETS) $(DIRS) $(DIRS_CLEAN) $(DIRS_DISTCLEAN)