summaryrefslogblamecommitdiffstats
path: root/tests/multiboot/Makefile
blob: ed4225e7d1342fe29ce1959659e66c49aa72fb22 (plain) (tree)
1
2
3
4
5
6
7
8
9




                                                                              

                                                  

                                                      
                                                                
 
                                            
 











                                                  
 




                                    
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 $@ $^