Use JMK build system
diff --git a/boot/grub/grub.cfg b/boot/grub/grub.cfg
index 856a4ea..a1d5fb0 100644
--- a/boot/grub/grub.cfg
+++ b/boot/grub/grub.cfg
@@ -1,6 +1,6 @@
menuentry "Bluejay" {
multiboot /boot/kernel.elf
- module /boot/initrd.img
+ module /boot/initrd/initrd.img
}
set timeout=1
diff --git a/boot/initrd/Jmk b/boot/initrd/Jmk
new file mode 100644
index 0000000..de65cb5
--- /dev/null
+++ b/boot/initrd/Jmk
@@ -0,0 +1,10 @@
+init(initrd, initrd.img)
+
+depends(mkinitrd, $(ROOT)/src/mkinitrd, mkinitrd)
+
+SOURCES = config
+
+initrd.img: $(SOURCES) | lib(mkinitrd)
+ lib(mkinitrd) $@ $^
+
+finish
diff --git a/boot/initrd/Makefile b/boot/initrd/Makefile
index 59f82ae..5a317fd 100644
--- a/boot/initrd/Makefile
+++ b/boot/initrd/Makefile
@@ -1,10 +1,30 @@
+jmk_project := initrd
+jmk_target = initrd.img
+ROOT := /home/ch/dev/bluejay
+ASM ?= nasm
+CC ?= gcc
+LD ?= ld
+CFLAGS += -I$(ROOT)/include
+
+all: $(jmk_target)
+
+
+jmk_lib_path_mkinitrd = $(ROOT)/src/mkinitrd
+jmk_lib_target_mkinitrd = mkinitrd
+jmk_libs_phony += $(jmk_lib_path_mkinitrd)/$(jmk_lib_target_mkinitrd)
+
+$(jmk_lib_path_mkinitrd)/$(jmk_lib_target_mkinitrd):
+ $(MAKE) -C $(jmk_lib_path_mkinitrd) $(jmk_lib_target_mkinitrd)
+
SOURCES = config
-JAYROOT = ../../
-initrd.img: $(SOURCES) | $(JAYROOT)/bin/mkinitrd
- $(JAYROOT)/bin/mkinitrd $@ $^
+initrd.img: $(SOURCES) | $(jmk_lib_path_mkinitrd)/$(jmk_lib_target_mkinitrd)
+ $(jmk_lib_path_mkinitrd)/$(jmk_lib_target_mkinitrd) $@ $^
-$(JAYROOT)/bin/mkinitrd:
- $(MAKE) -C $(JAYROOT)/src/mkinitrd install
+clean:
+ rm -f *.o *.a *.so $(jmk_target)
-.PHONY: $(JAYROOT)/bin/mkinitrd
+Makefile: Jmk
+ cd "/home/ch/dev/bluejay" && ./bin/jmk
+
+.PHONY: $(jmk_libs_phony) $(jmk_custom_phony) clean all