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
bwio.s: bwio.c
$(XCC) -S $(CFLAGS) bwio.c
ipc.s: ipc.c
$(XCC) -S $(CFLAGS) ipc.c
k2.s: k2.c
$(XCC) -S $(CFLAGS) k2.c
k2PerfTest.s: k2PerfTest.c
$(XCC) -S $(CFLAGS) k2PerfTest.c
kernel.s: kernel.c
$(XCC) -S $(CFLAGS) kernel.c
nameserver.s: nameserver.c
$(XCC) -S $(CFLAGS) nameserver.c
priority-q.s: priority-q.c
$(XCC) -S $(CFLAGS) priority-q.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
hash-table.s: hash-table.c
$(XCC) -S $(CFLAGS) hash-table.c
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
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
k2PerfTest.o: k2PerfTest.s
$(AS) $(ASFLAGS) -o k2PerfTest.o k2PerfTest.s
kernel.o: kernel.s
$(AS) $(ASFLAGS) -o kernel.o kernel.s
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
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
tools.o: tools.s
$(AS) $(ASFLAGS) -o tools.o tools.s
bwio.a: bwio.o
$(AR) $(ARFLAGS) $@ bwio.o
context-switch.a: context-switch.o
$(AR) $(ARFLAGS) $@ context-switch.o
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
k2PerfTest.a: k2PerfTest.o
$(AR) $(ARFLAGS) $@ k2PerfTest.o
kernel.a: kernel.o
$(AR) $(ARFLAGS) $@ kernel.o
nameserver.a: nameserver.o
$(AR) $(ARFLAGS) $@ nameserver.o
priority-q.a: priority-q.o
$(AR) $(ARFLAGS) $@ priority-q.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
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
mv bwio.a libbwio.a
mv context-switch.a libcs.a
mv hash-table.a libht.a
mv ipc.a libipc.a
mv k2.a libk2.a
mv scheduler.a libsche.a
mv syscall.a libsys.a
mv syscall-handler.a libsysh.a
mv td.a libtd.a
#mv test.a libtest.a
clean:
mv context-switch.s ct