1 mkinc_dir := $(CURDIR)/makeinc
3 include $(mkinc_dir)/toolchain.mkinc
4 include $(mkinc_dir)/utils.mkinc
5 include $(mkinc_dir)/lunabuild.mkinc
12 DEPS := $(CC) $(LD) $(AR)
14 CMDLINE ?= console=/dev/ttyFB0
17 kbin_dir := $(kbuild_dir)/bin
18 os_img_dir := $(kbuild_dir)/img
20 kbin := $(kbin_dir)/kernel.bin
21 kimg := $(kbuild_dir)/lunaix.iso
24 @echo -n "checking $@ .... "
25 @if which $@ > /dev/null; then \
28 echo "failed" && exit 1;\
33 @mkdir -p $(os_img_dir)
34 @mkdir -p $(os_img_dir)/usr
37 .PHONY: rootfs all clean-user clean tool
39 export BUILD_DIR=$(kbin_dir)
40 export BUILD_NAME=$(kbin)
41 kernel: $(lbuild_mkinc)
42 $(call status,TASK,$(notdir $@))
44 @$(MAKE) $(MKFLAGS) -I $(mkinc_dir) -f kernel.mk all
47 export LBUILD ARCH MODE
48 all: $(kbuild_dir) tool kernel
50 # --- begin stock user --- #
52 export PREFIX=usr/includes
53 usr/includes: install-header
55 export LBUILD ARCH MODE
57 $(call status,TASK,$@)
58 @$(MAKE) $(MKFLAGS) -C usr all -I $(mkinc_dir)
61 @$(MAKE) -C usr clean -I $(mkinc_dir)
64 $(call status,TASK,$(notdir $@))
69 # --- end stock user --- #
73 @$(MAKE) $(MKFLAGS) -C usr clean -I $(mkinc_dir)
74 @$(MAKE) $(MKFLAGS) -C scripts clean -I $(mkinc_dir)
75 @$(MAKE) $(MKFLAGS) -C tests/units clean
76 @$(MAKE) -f kernel.mk clean -I $(mkinc_dir)
78 @rm -rf $(kbuild_dir) || exit 1
81 # --- begin misc --- #
83 export CFLAGS=-include $(lbuild_config_h)
84 unit-test: $(lbuild_config_h)
85 @$(MAKE) $(MKFLAGS) -C tests/units run
88 $(call status,TASK,$@)
89 @$(MAKE) $(MKFLAGS) -C scripts all -I $(mkinc_dir)
92 @$(MAKE) $(MKFLAGS) -I $(mkinc_dir) -f install_headers.mk all