Files
RockOS/programs/makefile
2026-07-01 20:00:22 -05:00

24 lines
559 B
Makefile

CC = i686-elf-gcc
LD = i686-elf-ld
CFLAGS = -ffreestanding -O2 -Wall -Wextra -ffunction-sections -fdata-sections -I../rocklibc/include
LDFLAGS = -m elf_i386 -nostdlib --gc-sections
TARGET = origin.elf
all: $(TARGET)
crt0.o: crt0.S
$(CC) $(CFLAGS) -c crt0.S -o crt0.o
main.o: main.c
$(CC) $(CFLAGS) -c main.c -o main.o
$(TARGET): crt0.o main.o ../rocklibc/rlibc.a
$(LD) $(LDFLAGS) -T linker.ld crt0.o main.o ../rocklibc/rlibc.a $(shell $(CC) -print-libgcc-file-name) -o $(TARGET)
cp $(TARGET) ../initrd
clean:
rm -f *.o $(TARGET)
.PHONY: all clean