Initial Commit
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
CC = gcc
|
||||
LD = ld
|
||||
|
||||
BUILD = build
|
||||
|
||||
CFLAGS = \
|
||||
-m64 \
|
||||
-O2 \
|
||||
-ffreestanding \
|
||||
-fno-pie \
|
||||
-fno-pic \
|
||||
-fno-stack-protector \
|
||||
-nostdlib \
|
||||
-nodefaultlibs \
|
||||
-fno-builtin
|
||||
|
||||
LDFLAGS = \
|
||||
-m elf_x86_64 \
|
||||
-T linker.ld \
|
||||
-nostdlib \
|
||||
-z max-page-size=0x1000
|
||||
|
||||
SRC_C = programs/init.c
|
||||
SRC_S = crt0.S
|
||||
|
||||
OBJ = \
|
||||
$(BUILD)/init.o \
|
||||
$(BUILD)/crt0.o
|
||||
|
||||
all: $(BUILD)/init.elf
|
||||
|
||||
$(BUILD):
|
||||
mkdir -p $(BUILD)
|
||||
|
||||
$(BUILD)/init.o: programs/init.c | $(BUILD)
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
$(BUILD)/crt0.o: crt0.S | $(BUILD)
|
||||
$(CC) $(CFLAGS) -c $< -o $@
|
||||
|
||||
$(BUILD)/init.elf: $(OBJ)
|
||||
$(LD) $(LDFLAGS) $^ -o $@
|
||||
|
||||
install: $(BUILD)/init.elf
|
||||
cp $(BUILD)/init.elf /home/kaguya/testOS/ext2_root/init.elf
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILD)
|
||||
Reference in New Issue
Block a user