@@ -3,9 +3,9 @@ AS := nasm
33LD := i686-linux-gnu-gcc
44OBJCOPY := i686-linux-gnu-objcopy
55
6- CFLAGS := -ffreestanding -O2 -Wall -Wextra -m32 -fno-pie -fno-stack-protector -nostdlib -nostdinc -Iinclude -msse -msse2
6+ CFLAGS := -ffreestanding -O2 -Wall -Wextra -m32 -fno-pie -fno-PIC -fno- stack-protector -nostdlib -nostdinc -Iinclude -msse -msse2
77ASFLAGS := -f elf32
8- LDFLAGS := -T linker.ld -nostdlib -m32 -Wl,-z,noexecstack
8+ LDFLAGS := -T linker.ld -nostdlib -m32 -no-pie - Wl,-z,noexecstack
99
1010SRC_DIR := src
1111BUILD_DIR := build
@@ -15,10 +15,10 @@ MODEL_OBJ := $(BUILD_DIR)/model.o
1515ASM_SRCS := $(shell find $(SRC_DIR ) -name "* .s")
1616C_SRCS := $(filter-out $(SRC_DIR ) /drivers/vga.c, $(shell find $(SRC_DIR ) -name "* .c") )
1717
18- ASM_OBJS := $(patsubst $(SRC_DIR ) /% .s,$(BUILD_DIR ) /% .o,$(ASM_SRCS ) )
19- C_OBJS := $(patsubst $(SRC_DIR ) /% .c,$(BUILD_DIR ) /% .o,$(C_SRCS ) )
18+ ASM_OBJS := $(patsubst $(SRC_DIR ) /% .s,$(BUILD_DIR ) /% .s. o,$(ASM_SRCS ) )
19+ C_OBJS := $(patsubst $(SRC_DIR ) /% .c,$(BUILD_DIR ) /% .c. o,$(C_SRCS ) )
2020
21- BOOT_OBJ := $(BUILD_DIR ) /boot.o
21+ BOOT_OBJ := $(BUILD_DIR ) /boot.s. o
2222OTHER_OBJS := $(sort $(filter-out $(BOOT_OBJ ) ,$(ASM_OBJS ) $(C_OBJS ) ) )
2323OBJS := $(BOOT_OBJ ) $(OTHER_OBJS )
2424
@@ -31,11 +31,11 @@ all: $(BUILD_DIR) kernel.bin
3131$(BUILD_DIR ) :
3232 mkdir -p $(BUILD_DIR )
3333
34- $(BUILD_DIR ) /% .o : $(SRC_DIR ) /% .s
34+ $(BUILD_DIR ) /% .s. o : $(SRC_DIR ) /% .s
3535 mkdir -p $(dir $@ )
3636 $(AS ) $(ASFLAGS ) $< -o $@
3737
38- $(BUILD_DIR ) /% .o : $(SRC_DIR ) /% .c
38+ $(BUILD_DIR ) /% .c. o : $(SRC_DIR ) /% .c
3939 mkdir -p $(dir $@ )
4040 $(CC ) $(CFLAGS ) -c $< -o $@
4141
0 commit comments