mirror of
https://github.com/Mathewnd/Astral.git
synced 2026-11-01 06:58:22 +00:00
kernel: integrate flanterm into build system
This commit is contained in:
@@ -28,6 +28,7 @@ kernel:
|
|||||||
|
|
||||||
clean-kernel:
|
clean-kernel:
|
||||||
find builds/astral/ -name *.o -delete
|
find builds/astral/ -name *.o -delete
|
||||||
|
find builds/astral/ -name *.asmo -delete
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
make clean-kernel
|
make clean-kernel
|
||||||
|
|||||||
+9
-4
@@ -8,14 +8,19 @@ ARCHDIR=$(shell pwd)/arch/$(TARGET)/
|
|||||||
LDFLAGS=-ffreestanding -nostdlib -lgcc -Wl,-T,"$(ARCHDIR)/kernel.ld" -debug
|
LDFLAGS=-ffreestanding -nostdlib -lgcc -Wl,-T,"$(ARCHDIR)/kernel.ld" -debug
|
||||||
# required for mpaland printf so it doesn't compile with floating point support, which results in build failures
|
# required for mpaland printf so it doesn't compile with floating point support, which results in build failures
|
||||||
PRINTFOPTS=-DPRINTF_DISABLE_SUPPORT_FLOAT
|
PRINTFOPTS=-DPRINTF_DISABLE_SUPPORT_FLOAT
|
||||||
CFLAGS=-ffreestanding -mcmodel=kernel -O2 -mno-red-zone -mno-mmx -mno-sse -mno-sse2 -nostdlib -Wall -I "${INCDIR}" -I "$(ARCHINCDIR)" $(PRINTFOPTS)
|
# flanterm includes break if the headers are moved into the include dir in the tree
|
||||||
|
FLANTERMINCDIR=$(shell pwd)/flanterm
|
||||||
|
CFLAGS=-ffreestanding -mcmodel=kernel -O2 -mno-red-zone -mno-mmx -mno-sse -mno-sse2 -nostdlib -Wall -I "${INCDIR}" -I "$(ARCHINCDIR)" -I "$(FLANTERMINCDIR)" $(PRINTFOPTS)
|
||||||
ASFLAGS=-felf64
|
ASFLAGS=-felf64
|
||||||
|
|
||||||
astral: $(OBJS)
|
astral: $(OBJS)
|
||||||
$(LD) $(LDFLAGS) -o $@ $^
|
@echo [LD] $@
|
||||||
|
@$(LD) $(LDFLAGS) -o $@ $^
|
||||||
|
|
||||||
%.o: %.c
|
%.o: %.c
|
||||||
$(CC) $(CFLAGS) -c -o $@ $<
|
@echo [CC] $@
|
||||||
|
@$(CC) $(CFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
%.asmo: %.asm
|
%.asmo: %.asm
|
||||||
nasm $(ASFLAGS) -o $@ $<
|
@echo [AS] $@
|
||||||
|
@nasm $(ASFLAGS) -o $@ $<
|
||||||
|
|||||||
@@ -6,6 +6,10 @@ imagedeps="wget"
|
|||||||
flanterm_commit="f95f5584fb87577908beff8cbe0f68fee8940517"
|
flanterm_commit="f95f5584fb87577908beff8cbe0f68fee8940517"
|
||||||
|
|
||||||
regenerate() {
|
regenerate() {
|
||||||
|
rm -f include/limine.h
|
||||||
|
rm -f io/printf.c
|
||||||
|
rm -f include/printf.h
|
||||||
|
rm -rf flanterm
|
||||||
curl https://raw.githubusercontent.com/limine-bootloader/limine/trunk/limine.h > include/limine.h
|
curl https://raw.githubusercontent.com/limine-bootloader/limine/trunk/limine.h > include/limine.h
|
||||||
pushd /tmp/
|
pushd /tmp/
|
||||||
wget https://github.com/mpaland/printf/archive/refs/tags/v4.0.0.tar.gz
|
wget https://github.com/mpaland/printf/archive/refs/tags/v4.0.0.tar.gz
|
||||||
|
|||||||
Reference in New Issue
Block a user