blob: ed4225e7d1342fe29ce1959659e66c49aa72fb22 [file] [log] [blame]
CC=gcc
CCFLAGS=-m32 -Wall -Wextra -Werror -fno-stack-protector -nostdinc -fno-builtin
ASFLAGS=-m32
LD=ld
LDFLAGS_ELF=-melf_i386 -T link.ld
LDFLAGS_BIN=-melf_i386 -T link.ld --oformat=binary
LIBS=$(shell $(CC) $(CCFLAGS) -print-libgcc-file-name)
AOUT_KLUDGE_BIN=$(foreach x,$(shell seq 1 9),aout_kludge_$x.bin)
all: mmap.elf modules.elf $(AOUT_KLUDGE_BIN)
mmap.elf: start.o mmap.o libc.o link.ld
$(LD) $(LDFLAGS_ELF) -o $@ $^ $(LIBS)
modules.elf: start.o modules.o libc.o link.ld
$(LD) $(LDFLAGS_ELF) -o $@ $^ $(LIBS)
aout_kludge_%.bin: aout_kludge_%.o link.ld
$(LD) $(LDFLAGS_BIN) -o $@ $^ $(LIBS)
.PRECIOUS: aout_kludge_%.o
aout_kludge_%.o: aout_kludge.S
$(CC) $(ASFLAGS) -DSCENARIO=$* -c -o $@ $^
%.o: %.c
$(CC) $(CCFLAGS) -c -o $@ $^
%.o: %.S
$(CC) $(ASFLAGS) -c -o $@ $^