# Makefile for Bare Bones at http://wiki.osdev.org/Bare_Bones

TARGET = myos.bin
OBJS = boot.o kernel.o

CC = i386-elf-gcc
CFLAGS = -std=gnu99 -ffreestanding -O2 -Wall -Wextra
LFLAGS = -T linker.ld -nostdlib -lgcc


all: $(TARGET)

$(TARGET): $(OBJS)
	$(CC) $(CFLAGS) $(LFLAGS) $(OBJS) -o $(TARGET) 

.c.o: $<
	$(CC) $(CFLAGS) -c $< -o $@

.s.o: $<
	$(CC) $(CFLAGS) -c $< -o $@

.S.o: $<
	$(CC) $(CFLAGS) -c $< -o $@

clean:
	rm -f $(TARGET) $(OBJS)
