5 CFLAGS
=-Wall
-O
-fstrength-reduce
-fomit-frame-pointer
-fcombine-regs
11 CC
=gcc
-m32
-g
-O2
-nostdinc
-fno-builtin
-Wno-unused-parameter
-I
$(INCDIR
) -I..
/..
/build
/main
12 CCASM
=gcc
-D__ASSEMBLY__
-g
-Os
-pipe
-fno-strict-aliasing
-fno-builtin
-ffreestanding
13 OBJS
=int.o arch.o gdt.o idt.o isrs.o irq.o timer.o vm86.o paging_i486.o paging.o rtc.o task.o syscall.o io.o elf32.o smp.o ipi.o
23 $(Q
)rm -f
*.o ..
/arch.a boot
/start.o
$(OBJS
)
26 @printf
" ASM $(subst $(shell pwd)/,,$(@))\n";
27 $(Q
)$(CCASM
) -c
-o
$@
$<
30 @printf
" ASM $(subst $(shell pwd)/,,$(@))\n";
34 @printf
" CC $(subst $(shell pwd)/,,$(@))\n";
38 arch.a
: $(OBJS
) $(MAKEDEP
)
39 @printf
" AR $(subst $(shell pwd)/,,$(@))\n";
40 $(Q
)ar rcs ..
/arch.a
$(OBJS
)