@@ -4,15 +4,18 @@ SRC_BOOTLOADER = src/bootloader
44SRC_KERNEL = src/kernel
55SRC_DRIVERS = src/drivers
66SRC_LIB_DS = src/lib/ds
7+ SRC_LIB_SYSCALL = src/lib/syscall
78SRC_LIB_UTILS = src/lib/utils
89SRC_LIB = src/lib
10+ SRC_MEMMGR = src/memmgr
911SRC_APP = src/app
1012SRC_REALMODE = src/real_mode
1113
1214BUILD_BOOTLOADER = build/bootloader
1315BUILD_KERNEL = build/kernel
1416BUILD_DRIVERS = build/drivers
1517BUILD_LIB_DS = build/lib/ds
18+ BUILD_LIB_SYSCALL = build/lib/syscall
1619BUILD_LIB_UTILS = build/lib/utils
1720BUILD_LIB = build/lib
1821BUILD_APP = build/app
@@ -141,7 +144,7 @@ $(bt_stage1): $(SRC_BOOTLOADER)/stage1.asm $(SRC_BOOTLOADER)/constants.asm $(SRC
141144 nasm -o $@ -f bin -i $(SRC_BOOTLOADER ) / -D SECTOR_START_BT_STAGE2=$(SECTOR_START_BT_STAGE2 ) -D SECTOR_COUNT_BT_STAGE2=$(SECTOR_COUNT_BT_STAGE2 ) $<
142145 truncate --size=%512 $@
143146
144- $(bt_stage2 ) : $(SRC_BOOTLOADER ) /stage2.asm $(SRC_BOOTLOADER ) /stage2.c $(SRC_BOOTLOADER ) /io.asm $(SRC_BOOTLOADER ) /constants.asm $(SRC_REALMODE ) /stub.asm $(BUILD_LIB_UTILS ) /libutils_16 $(BUILD_DRIVERS ) /display/libtm_bios $(BUILD_DRIVERS ) /disk/libdisk_16
147+ $(bt_stage2 ) : $(SRC_BOOTLOADER ) /stage2.asm $(SRC_BOOTLOADER ) /stage2.c $(SRC_MEMMGR ) /tables/gdt.c $( SRC_BOOTLOADER ) /io.asm $(SRC_BOOTLOADER ) /constants.asm $(SRC_REALMODE ) /stub.asm $(BUILD_LIB_UTILS ) /libutils_16 $(BUILD_DRIVERS ) /display/libtm_bios $(BUILD_DRIVERS ) /disk/libdisk_16
145148 mkdir -p $$(dirname $(bt_stage2 ) )
146149 nasm -o $(BUILD_BOOTLOADER ) /stage2_asm.o -f elf32 -i $(SRC_BOOTLOADER ) / -i $(SRC_REALMODE ) / $(SRC_BOOTLOADER ) /stage2.asm
147150 gcc -m16 -fno-pie -c -Isrc \
@@ -161,9 +164,10 @@ $(BUILD_REALMODE)/static_library: $(SRC_REALMODE)/static_library.asm $(SRC_REALM
161164 nasm -o $@ -f bin -i $(SRC_REALMODE ) / $(SRC_REALMODE ) /static_library.asm
162165 truncate --size=%512 $@
163166
164- $(kernel_core ) : $(SRC_KERNEL ) /core.asm $(SRC_KERNEL ) /core.c $(SRC_KERNEL ) /essentials.c $(SRC_REALMODE ) /stub.asm $(SRC_KERNEL ) /interrupts.c $(SRC_KERNEL ) /interrupts.asm $(SRC_LIB_UTILS ) /output.h $(SRC_DRIVERS ) /keyboard/keyboard.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /keyboard/libkeyboard $(BUILD_DRIVERS ) /display/libtm_vga $(BUILD_DRIVERS ) /disk/libdisk # And other output.h dependecies -_-
167+ $(kernel_core ) : $(SRC_KERNEL ) /core.asm $(SRC_KERNEL ) /core.c $(SRC_KERNEL ) /essentials.c $(SRC_KERNEL ) /interrupts.c $( SRC_KERNEL ) /process.asm $( SRC_KERNEL ) /syscall.c $( SRC_MEMMGR ) /tables/gdt.c $( SRC_REALMODE ) /stub.asm $(SRC_KERNEL ) /interrupts.c $(SRC_KERNEL ) /interrupts.asm $(SRC_LIB_UTILS ) /output.h $(SRC_DRIVERS ) /keyboard/keyboard.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /keyboard/libkeyboard $(BUILD_DRIVERS ) /display/libtm_vga $(BUILD_DRIVERS ) /disk/libdisk $( BUILD_LIB_SYSCALL ) /libsyscall # And other output.h dependecies -_-
165168 mkdir -p $$(dirname $(kernel_core ) )
166169 nasm -o $(BUILD_KERNEL ) /core_asm.o -f elf32 -i $(SRC_REALMODE ) / $(SRC_KERNEL ) /core.asm
170+ nasm -o $(BUILD_KERNEL ) /process_asm.o -f elf32 -i $(SRC_REALMODE ) / $(SRC_KERNEL ) /process.asm
167171 nasm -o $(BUILD_KERNEL ) /interrupts_asm.o -f elf32 $(SRC_KERNEL ) /interrupts.asm
168172 gcc -m32 -fno-pie -c -Isrc \
169173 -D SECTOR_START_APP_TTT=$(SECTOR_START_APP_TTT ) \
@@ -173,7 +177,7 @@ $(kernel_core): $(SRC_KERNEL)/core.asm $(SRC_KERNEL)/core.c $(SRC_KERNEL)/essent
173177 -D SECTOR_START_APP_CALC=$(SECTOR_START_APP_CALC ) \
174178 -D SECTOR_COUNT_APP_CALC=$(SECTOR_COUNT_APP_CALC ) \
175179 -o $(BUILD_KERNEL ) /core_c.o $(SRC_KERNEL ) /core.c
176- ld --oformat binary -m elf_i386 --trace -Ttext 0x0000 --strip-all -o $(kernel_core ) $(BUILD_KERNEL ) /core_asm.o $(BUILD_KERNEL ) /core_c.o $(BUILD_KERNEL ) /interrupts_asm.o $(BUILD_DRIVERS ) /keyboard/libkeyboard $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $(BUILD_LIB_DS ) /libds $(BUILD_DRIVERS ) /disk/libdisk
180+ ld --oformat binary -m elf_i386 --trace -Ttext 0x0000 --strip-all -o $(kernel_core ) $(BUILD_KERNEL ) /core_asm.o $(BUILD_KERNEL ) /process_asm.o $( BUILD_KERNEL ) / core_c.o $(BUILD_KERNEL ) /interrupts_asm.o $(BUILD_DRIVERS ) /keyboard/libkeyboard $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $(BUILD_LIB_DS ) /libds $(BUILD_DRIVERS ) /disk/libdisk $( BUILD_LIB_SYSCALL ) /libsyscall
177181 truncate --size=%512 $(kernel_core )
178182
179183# Libraries
@@ -234,29 +238,33 @@ $(BUILD_LIB_UTILS)/libutils: $(SRC_LIB_UTILS)/basic.c $(SRC_LIB_UTILS)/basic.asm
234238 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /logging.o $(SRC_LIB_UTILS ) /logging.c
235239 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /output.o $(SRC_LIB_UTILS ) /output.c
236240 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /input.o $(SRC_LIB_UTILS ) /input.c
237- nasm -o $(BUILD_LIB_UTILS ) /input_asm.o -f elf32 $(SRC_LIB_UTILS ) /input.asm
238241 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /string.o $(SRC_LIB_UTILS ) /string.c
239242 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /color.o $(SRC_LIB_UTILS ) /color.c
240243 gcc -m32 -fno-pie -c -D__SOURCE_SNAPSHOT__=$(SOURCE_SNAPSHOT ) -Isrc -o $(BUILD_LIB_UTILS ) /panic_c.o $(SRC_LIB_UTILS ) /panic.c
241244 nasm -o $(BUILD_LIB_UTILS ) /panic_asm.o -f elf32 $(SRC_LIB_UTILS ) /panic.asm
242245 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_UTILS ) /time_c.o $(SRC_LIB_UTILS ) /time.c
243246 nasm -o $(BUILD_LIB_UTILS ) /time_asm.o -f elf32 $(SRC_LIB_UTILS ) /time.asm
244- ar rc $@ $(BUILD_LIB_UTILS ) /basic_asm.o $(BUILD_LIB_UTILS ) /basic_c.o $(BUILD_LIB_UTILS ) /logging.o $(BUILD_LIB_UTILS ) /output.o $(BUILD_LIB_UTILS ) /input_asm.o $( BUILD_LIB_UTILS ) / input.o $(BUILD_LIB_UTILS ) /string.o $(BUILD_LIB_UTILS ) /color.o $(BUILD_LIB_UTILS ) /panic_c.o $(BUILD_LIB_UTILS ) /panic_asm.o $(BUILD_LIB_UTILS ) /time_c.o $(BUILD_LIB_UTILS ) /time_asm.o
247+ ar rc $@ $(BUILD_LIB_UTILS ) /basic_asm.o $(BUILD_LIB_UTILS ) /basic_c.o $(BUILD_LIB_UTILS ) /logging.o $(BUILD_LIB_UTILS ) /output.o $(BUILD_LIB_UTILS ) /input.o $(BUILD_LIB_UTILS ) /string.o $(BUILD_LIB_UTILS ) /color.o $(BUILD_LIB_UTILS ) /panic_c.o $(BUILD_LIB_UTILS ) /panic_asm.o $(BUILD_LIB_UTILS ) /time_c.o $(BUILD_LIB_UTILS ) /time_asm.o
245248
246249$(BUILD_LIB_DS ) /libds : $(SRC_LIB_DS ) /queue.h $(SRC_LIB_DS ) /queue.c
247250 mkdir -p $(BUILD_LIB_DS ) /
248251 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_LIB_DS ) /queue.o $(SRC_LIB_DS ) /queue.c
249252 ar rc $@ $(BUILD_LIB_DS ) /queue.o
250253
254+ $(BUILD_LIB_SYSCALL ) /libsyscall : $(SRC_LIB_SYSCALL ) /syscall.h $(SRC_LIB_SYSCALL ) /syscall.asm
255+ mkdir -p $(BUILD_LIB_SYSCALL ) /
256+ nasm -o $(BUILD_LIB_SYSCALL ) /syscall_asm.o -f elf32 $(SRC_LIB_SYSCALL ) /syscall.asm
257+ ar rc $@ $(BUILD_LIB_SYSCALL ) /syscall_asm.o
258+
251259# User Applications
252- $(app_calc ) : $(app_entry ) $(SRC_APP ) /calc.c $(SRC_LIB_UTILS ) /output.h $(SRC_LIB_UTILS ) /time.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga # And dependecies :/
260+ $(app_calc ) : $(app_entry ) $(SRC_APP ) /calc.c $(SRC_LIB_UTILS ) /output.h $(SRC_LIB_UTILS ) /time.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $( BUILD_LIB_SYSCALL ) /libsyscall # And dependecies :/
253261 mkdir -p $$(dirname $(app_calc ) )
254262 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_APP ) /calc.o $(SRC_APP ) /calc.c
255- ld --oformat binary -m elf_i386 -Ttext 0x0 --strip-all -o $@ $(app_entry ) $(BUILD_APP ) /calc.o $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga
263+ ld --oformat binary -m elf_i386 -Ttext 0x0 --strip-all -o $@ $(app_entry ) $(BUILD_APP ) /calc.o $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $( BUILD_LIB_SYSCALL ) /libsyscall
256264 truncate --size=%512 $@
257265
258- $(app_tic_tac_toe ) : $(app_entry ) $(SRC_APP ) /tic_tac_toe.c $(SRC_LIB_UTILS ) /output.h $(SRC_LIB_UTILS ) /input.h $(SRC_LIB_UTILS ) /time.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga # And dependecies :/
266+ $(app_tic_tac_toe ) : $(app_entry ) $(SRC_APP ) /tic_tac_toe.c $(SRC_LIB_UTILS ) /output.h $(SRC_LIB_UTILS ) /input.h $(SRC_LIB_UTILS ) /time.h $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $( BUILD_LIB_SYSCALL ) /libsyscall # And dependecies :/
259267 mkdir -p $$(dirname $(app_tic_tac_toe ) )
260268 gcc -m32 -fno-pie -c -Isrc -o $(BUILD_APP ) /tic_tac_toe.o $(SRC_APP ) /tic_tac_toe.c
261- ld --oformat binary -m elf_i386 -Ttext 0x0 --strip-all -o $@ $(app_entry ) $(BUILD_APP ) /tic_tac_toe.o $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga
269+ ld --oformat binary -m elf_i386 -Ttext 0x0 --strip-all -o $@ $(app_entry ) $(BUILD_APP ) /tic_tac_toe.o $(BUILD_LIB_UTILS ) /libutils $(BUILD_DRIVERS ) /display/libtm_vga $( BUILD_LIB_SYSCALL ) /libsyscall
262270 truncate --size=%512 $@
0 commit comments