Skip to content
Snippets Groups Projects
Makefile 3.94 KiB
Newer Older
# Makefile for busy-wait IO tests
#
XCC     = /u/wbcowan/gnuarm-4.0.2/arm-elf/bin/gcc
AS	= /u/wbcowan/gnuarm-4.0.2/arm-elf/bin/as
AR	= /u/wbcowan/gnuarm-4.0.2/arm-elf/bin/ar
CFLAGS  = -c -fPIC -Wall -I. -I../include -mcpu=arm920t -msoft-float
# -g: include hooks for gdb
# -c: only compile
# -mcpu=arm920t: generate code for the 920t architecture
# -fpic: emit position-independent code
# -Wall: report all warnings

ASFLAGS	= -mcpu=arm920t -mapcs-32
# -mapcs: always generate a complete stack frame

ARFLAGS = rcs

all: bwio.a


Tom Feng's avatar
Tom Feng committed
buffer.s: buffer.c
	$(XCC) -S $(CFLAGS) buffer.c

bwio.s: bwio.c
	$(XCC) -S $(CFLAGS) bwio.c

Tom Feng's avatar
Tom Feng committed
ipc.s: ipc.c
	$(XCC) -S $(CFLAGS) ipc.c

k2.s: k2.c
	$(XCC) -S $(CFLAGS) k2.c
Tom Feng's avatar
Tom Feng committed
k2PerfTest.s: k2PerfTest.c
	$(XCC) -S $(CFLAGS) k2PerfTest.c

kernel.s: kernel.c
	$(XCC) -S $(CFLAGS) kernel.c

Tom Feng's avatar
Tom Feng committed
nameserver.s: nameserver.c
	$(XCC) -S $(CFLAGS) nameserver.c

priority-q.s: priority-q.c
	$(XCC) -S $(CFLAGS) priority-q.c

Tom Feng's avatar
Tom Feng committed

rps.s: rps.c
	$(XCC) -S $(CFLAGS) rps.c

scheduler.s: scheduler.c
	$(XCC) -S $(CFLAGS) scheduler.c


syscall.s: syscall.c
	$(XCC) -S $(CFLAGS) syscall.c


syscall-handler.s: syscall-handler.c
	$(XCC) -S $(CFLAGS) syscall-handler.c

td.s: td.c
	$(XCC) -S $(CFLAGS) td.c

timer.s: timer.c
	$(XCC) -S $(CFLAGS) timer.c

Tom Feng's avatar
Tom Feng committed
tools.s: tools.c
	$(XCC) -S $(CFLAGS) tools.c
Tom Feng's avatar
Tom Feng committed
hash-table.s: hash-table.c
	$(XCC) -S $(CFLAGS) hash-table.c


Tom Feng's avatar
Tom Feng committed
buffer.o: buffer.s
	$(AS) $(ASFLAGS) -o buffer.o buffer.s

bwio.o: bwio.s
	$(AS) $(ASFLAGS) -o bwio.o bwio.s

context-switch.o: context-switch.s
	$(AS) $(ASFLAGS) -o context-switch.o context-switch.s

Tom Feng's avatar
Tom Feng committed
hash-table.o: hash-table.s
	$(AS) $(ASFLAGS) -o hash-table.o hash-table.s

ipc.o: ipc.s
	$(AS) $(ASFLAGS) -o ipc.o ipc.s

k2.o: k2.s
	$(AS) $(ASFLAGS) -o k2.o k2.s
Tom Feng's avatar
Tom Feng committed
k2PerfTest.o: k2PerfTest.s
	$(AS) $(ASFLAGS) -o k2PerfTest.o k2PerfTest.s

kernel.o: kernel.s
	$(AS) $(ASFLAGS) -o kernel.o kernel.s

Tom Feng's avatar
Tom Feng committed
nameserver.o: nameserver.s
	$(AS) $(ASFLAGS) -o nameserver.o nameserver.s

priority-q.o: priority-q.s
	$(AS) $(ASFLAGS) -o priority-q.o priority-q.s

Tom Feng's avatar
Tom Feng committed
rps.o: rps.s
	$(AS) $(ASFLAGS) -o rps.o rps.s

scheduler.o: scheduler.s
	$(AS) $(ASFLAGS) -o scheduler.o scheduler.s

syscall.o: syscall.s
	$(AS) $(ASFLAGS) -o syscall.o syscall.s

syscall-handler.o: syscall-handler.s
	$(AS) $(ASFLAGS) -o syscall-handler.o syscall-handler.s

td.o: td.s
	$(AS) $(ASFLAGS) -o td.o td.s

timer.o: timer.s
	$(AS) $(ASFLAGS) -o timer.o timer.s

Tom Feng's avatar
Tom Feng committed
tools.o: tools.s
	$(AS) $(ASFLAGS) -o tools.o tools.s

Tom Feng's avatar
Tom Feng committed

Tom Feng's avatar
Tom Feng committed
buffer.a: buffer.o
	$(AR) $(ARFLAGS) $@ buffer.o

bwio.a: bwio.o
	$(AR) $(ARFLAGS) $@ bwio.o

context-switch.a: context-switch.o
	$(AR) $(ARFLAGS) $@ context-switch.o

Tom Feng's avatar
Tom Feng committed
hash-table.a: hash-table.o
	$(AR) $(ARFLAGS) $@ hash-table.o

ipc.a: ipc.o
	$(AR) $(ARFLAGS) $@ ipc.o

k2.a: k2.o
	$(AR) $(ARFLAGS) $@ k2.o
Tom Feng's avatar
Tom Feng committed
k2PerfTest.a: k2PerfTest.o
	$(AR) $(ARFLAGS) $@ k2PerfTest.o

kernel.a: kernel.o
	$(AR) $(ARFLAGS) $@ kernel.o

Tom Feng's avatar
Tom Feng committed
nameserver.a: nameserver.o
	$(AR) $(ARFLAGS) $@ nameserver.o

priority-q.a: priority-q.o
	$(AR) $(ARFLAGS) $@ priority-q.o

Tom Feng's avatar
Tom Feng committed
rps.a: rps.o
	$(AR) $(ARFLAGS) $@ rps.o

scheduler.a: scheduler.o
	$(AR) $(ARFLAGS) $@ scheduler.o

syscall.a: syscall.o
	$(AR) $(ARFLAGS) $@ syscall.o

syscall-handler.a: syscall-handler.o
	$(AR) $(ARFLAGS) $@ syscall-handler.o

td.a: td.o
	$(AR) $(ARFLAGS) $@ td.o

timer.a: timer.o
	$(AR) $(ARFLAGS) $@ timer.o

Tom Feng's avatar
Tom Feng committed
tools.a: tools.o
	$(AR) $(ARFLAGS) $@ tools.o
Tom Feng's avatar
Tom Feng committed

Tom Feng's avatar
Tom Feng committed
install: buffer.a bwio.a context-switch.a hash-table.a ipc.a kernel.a k2.a k2PerfTest.a nameserver.a priority-q.a rps.a scheduler.a syscall.a syscall-handler.a td.a  timer.a tools.a
Tom Feng's avatar
Tom Feng committed
	mv buffer.a libbuffer.a
	mv bwio.a libbwio.a
	mv context-switch.a libcs.a
Tom Feng's avatar
Tom Feng committed
	mv hash-table.a libht.a
	mv ipc.a libipc.a
	mv k2.a libk2.a
Tom Feng's avatar
Tom Feng committed
	mv k2PerfTest.a libk2p.a
	mv kernel.a libkernel.a
Tom Feng's avatar
Tom Feng committed
	mv nameserver.a libns.a
	mv priority-q.a libpq.a
Tom Feng's avatar
Tom Feng committed
	mv rps.a librps.a
	mv scheduler.a libsche.a
	mv syscall.a libsys.a
	mv syscall-handler.a libsysh.a
	mv td.a libtd.a
	mv timer.a libtimer.a
Tom Feng's avatar
Tom Feng committed
	mv tools.a libtools.a
	#mv test.a libtest.a
clean:
	mv context-switch.s ct
	-rm -f *s *.o *.a *~
	mv ct context-switch.s