aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile37
1 files changed, 22 insertions, 15 deletions
diff --git a/Makefile b/Makefile
index ccb2f63..33188bf 100644
--- a/Makefile
+++ b/Makefile
@@ -3,33 +3,40 @@ CC = gcc
LD = ld
INCLUDES = -Idrivers/include -Ikernel/include -Ilibc/include
CFLAGS = -std=gnu99 -ffreestanding -fno-stack-protector -nostdlib -Wall -Wextra -m32 $(INCLUDES) -g
+EMULATOR = qemu-system-i386
AS = as
ASFLAGS=-march=i686 --32
+ISODIR = isodir
+
all: kappa.bin
test: iso
- qemu-system-i386 kappa.iso
+ @echo "EMULATOR kappa.iso"
+ @$(EMULATOR) kappa.iso
iso: kappa.bin
- mkdir -p isodir
- mkdir -p isodir/boot
- cp kappa.bin isodir/efi.img
- cp kappa.bin isodir/boot/kappa.bin
- mkdir -p isodir/boot/grub
- cp cdrom/grub.cfg isodir/boot/grub
- grub-mkrescue -o kappa.iso isodir
+ @echo "Building ISO under $(ISODIR)/..."
+ @mkdir -p $(ISODIR)
+ @mkdir -p $(ISODIR)/boot
+ @cp kappa.bin $(ISODIR)/efi.img
+ @cp kappa.bin $(ISODIR)/boot/kappa.bin
+ @mkdir -p $(ISODIR)/boot/grub
+ @cp cdrom/grub.cfg $(ISODIR)/boot/grub
+ @grub-mkrescue -o kappa.iso $(ISODIR) 2> /dev/null
kappa.bin: $(OBJ) $(SOURCES) Makefile
- $(LD) -T kernel/linker.ld -o kappa.bin -melf_i386 $(OBJ)
-
+ @$(LD) -T kernel/linker.ld -o kappa.bin -melf_i386 $(OBJ)
+ @echo "LD $@"
%.o: %.c
- $(CC) $(CFLAGS) -c $< -o $@
+ @$(CC) $(CFLAGS) -c $< -o $@
+ @echo "CC $<"
%.o: %.S
- $(AS) $(ASFLAGS) -c $< -o $@
-
+ @$(AS) $(ASFLAGS) -c $< -o $@
+ @echo "AS $<"
clean:
- rm -f $(OBJ) kappa.iso kappa.bin
- rm -rf isodir
+ @echo "Cleaning build directory..."
+ @rm -f $(OBJ) kappa.iso kappa.bin
+ @rm -rf $(ISODIR)