Update Makefile
This commit is contained in:
17
Makefile
17
Makefile
@@ -3,6 +3,8 @@
|
||||
|
||||
.PHONY: all clean
|
||||
|
||||
all: myos.iso
|
||||
|
||||
SOURCE_DIR := src
|
||||
BUILD_DIR := build
|
||||
|
||||
@@ -25,12 +27,10 @@ DEPENDS := $(patsubst $(SOURCE_DIR)/%, $(BUILD_DIR)/%, $(C_SOURCES:.c=.d))
|
||||
CFLAGS := -MMD -ffreestanding -O0 -Wall -Wextra -Werror -std=c2x -I$(SOURCE_DIR)/include -no-pie -fstack-protector-strong
|
||||
ASFLAGS :=
|
||||
|
||||
$(info C_SOURCES is $(C_SOURCES))
|
||||
$(info ASM_SOURCES is $(ASM_SOURCES))
|
||||
$(info OBJECTS is $(OBJECTS))
|
||||
$(info DEPENDS is $(DEPENDS))
|
||||
|
||||
all: myos.iso
|
||||
#$(info C_SOURCES is $(C_SOURCES))
|
||||
#$(info ASM_SOURCES is $(ASM_SOURCES))
|
||||
#$(info OBJECTS is $(OBJECTS))
|
||||
#$(info DEPENDS is $(DEPENDS))
|
||||
|
||||
run: myos.iso
|
||||
qemu-system-i386 -cdrom myos.iso
|
||||
@@ -38,6 +38,9 @@ run: myos.iso
|
||||
cross-compiler: cross-compiler-image/Dockerfile
|
||||
podman build cross-compiler-image -t cc-i686
|
||||
|
||||
clean:
|
||||
rm -f $(BUILD_DIR) myos.iso
|
||||
|
||||
myos.iso: $(BUILD_DIR)/myos.bin
|
||||
@mkdir -p $(BUILD_DIR)/image/boot/grub
|
||||
cp -v $< $(BUILD_DIR)/image/boot/
|
||||
@@ -45,7 +48,7 @@ myos.iso: $(BUILD_DIR)/myos.bin
|
||||
grub-mkrescue -o $@ $(BUILD_DIR)/image
|
||||
|
||||
$(BUILD_DIR)/myos.bin: $(OBJECTS)
|
||||
mkdir -p $(BUILD_DIR)
|
||||
@mkdir -p $(@D)
|
||||
$(CC) -T linker.ld -o $@ $(CFLAGS) -nostdlib $^ -lgcc
|
||||
|
||||
-include $(DEPENDS)
|
||||
|
||||
Reference in New Issue
Block a user