diff --git a/.github/workflows/makefile.yml b/.github/workflows/makefile.yml index acc2d5e7..1f5a1518 100644 --- a/.github/workflows/makefile.yml +++ b/.github/workflows/makefile.yml @@ -138,6 +138,9 @@ jobs: sudo apt-get update sudo apt-get install xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 build-essential bison flex libgmp3-dev libmpc-dev libmpfr-dev texinfo -y make --quiet -C tools do_limine + make --quiet -C Drivers prepare + make --quiet -C Userspace prepare + make --quiet -C Lynx prepare make --quiet -C Kernel prepare - name: Cache cross @@ -157,6 +160,8 @@ jobs: - name: Build OS run: | make build_lynx + make build_userspace + make build_drivers make build_kernel make build_userspace @@ -177,6 +182,9 @@ jobs: sudo apt-get update sudo apt-get install xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y make --quiet -C tools do_limine + make --quiet -C Drivers prepare + make --quiet -C Userspace prepare + make --quiet -C Lynx prepare make --quiet -C Kernel prepare - name: Cache cross Folder @@ -218,6 +226,10 @@ jobs: run: | sudo apt-get update sudo apt-get install xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y + make --quiet -C tools do_limine + make --quiet -C Drivers prepare + make --quiet -C Userspace prepare + make --quiet -C Lynx prepare make --quiet -C Kernel prepare - name: Cache cross Folder @@ -265,6 +277,10 @@ jobs: run: | sudo apt-get update sudo apt-get install xorriso mtools genisoimage ovmf nasm doxygen make gcc-mingw-w64-x86-64 gcc-mingw-w64-i686 mingw-w64 -y + make --quiet -C tools do_limine + make --quiet -C Drivers prepare + make --quiet -C Userspace prepare + make --quiet -C Lynx prepare make --quiet -C Kernel prepare - name: Cache cross Folder diff --git a/.gitignore b/.gitignore index 2edb7a5b..35c0a855 100644 --- a/.gitignore +++ b/.gitignore @@ -17,4 +17,6 @@ initrd.tar.gz *.iso *.drv *.fex +*.elf +*.a *.o diff --git a/Makefile b/Makefile index 4fd0841b..9c20a793 100644 --- a/Makefile +++ b/Makefile @@ -173,7 +173,15 @@ run: build qemu clean: rm -rf doxygen-doc iso_tmp_data - rm -f initrd/system/drivers/*.fex initrd.tar.gz $(OSNAME).iso $(OSNAME).img + rm -f initrd.tar.gz $(OSNAME).iso $(OSNAME).img + rm -f initrd/system/drivers/*.fex + rm -f initrd/system/*.fex + rm -f initrd/system/*.elf + rm -f initrd/system/lib/*.a + rm -f initrd/system/lib/*.so + rm -f initrd/system/lib/*.o + rm -f initrd/system/include/*.h + rm -f initrd/system/include/*.hpp make -C Kernel clean make -C Lynx clean make -C Userspace clean diff --git a/initrd/system/include/.gitkeep b/initrd/system/include/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/initrd/system/lib/.gitkeep b/initrd/system/lib/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/tools/grub.cfg b/tools/grub.cfg index 0bb5a029..72db197b 100644 --- a/tools/grub.cfg +++ b/tools/grub.cfg @@ -3,6 +3,6 @@ set timeout=0 # set lang=ro_RO menuentry "Fennix" { - multiboot2 /kernel.fsys --alloc=liballoc11 --cores=0 --tasking=multi --drvdir=/system/drivers --init=/system/init.fex + multiboot2 /kernel.fsys --alloc=liballoc11 --cores=0 --tasking=multi --drvdir=/system/drivers --init=/system/init.elf boot } \ No newline at end of file diff --git a/tools/limine.cfg b/tools/limine.cfg index b6643fe5..399bdbdb 100644 --- a/tools/limine.cfg +++ b/tools/limine.cfg @@ -5,7 +5,7 @@ INTERFACE_BRANDING=Fennix # DO NOT EDIT! COMMENT=Boot Fennix using Limine protocol PROTOCOL=limine - KERNEL_CMDLINE=--alloc=liballoc11 --cores=0 --tasking=multi --drvdir=/system/drivers --init=/system/init.fex + KERNEL_CMDLINE=--alloc=liballoc11 --cores=0 --tasking=multi --drvdir=/system/drivers --init=/system/init.elf KERNEL_PATH=boot:///kernel.fsys MODULE_PATH=boot:///initrd.tar.gz