XCFLAGS=-Wall -g -O

all: scrubtest scrubtest_ram0 scrubtest_ml510

clean:
	rm -f *.o scrubtest scrubtest_ram0 scrubtest_ml510

memscrub.o: memscrub.c memscrub.h
	sparc-rtems-gcc -c memscrub.c $(XCFLAGS)	

memscrub_rtems.o: memscrub_rtems.c memscrub_rtems.h memscrub.h
	sparc-rtems-gcc -c memscrub_rtems.c $(XCFLAGS)

failover.o: failover.c failover.h memscrub_rtems.h
	sparc-rtems-gcc -c failover.c $(XCFLAGS)

scrubtest.o: scrubtest.c memscrub_rtems.h
	sparc-rtems-gcc -c scrubtest.c -DMEMSTART=0x40000000 $(XCFLAGS)

scrubtest_ram0.o: scrubtest.c memscrub_rtems.h
	sparc-rtems-gcc -c scrubtest.c -o scrubtest_ram0.o -DMEMSTART=0 $(XCFLAGS)

scrubtest_ml510.o: scrubtest.c memscrub_rtems.h
	sparc-rtems-gcc -c scrubtest.c -o scrubtest_ml510.o -DMEMSTART=0 -DMEMSIZE=0x40000000 -DMEMFAIL_ML510 $(XCFLAGS)

scrubtest: scrubtest.o memscrub_rtems.o memscrub.o
	sparc-rtems-gcc scrubtest.o memscrub_rtems.o memscrub.o -o scrubtest

scrubtest_ram0: scrubtest_ram0.o memscrub_rtems.o memscrub.o
	sparc-rtems-gcc -qngmp scrubtest_ram0.o memscrub_rtems.o memscrub.o -o scrubtest_ram0

scrubtest_ml510: scrubtest_ml510.o memscrub_rtems.o memscrub.o failover.o
	sparc-rtems-gcc -qngmp scrubtest_ml510.o memscrub_rtems.o memscrub.o failover.o -o scrubtest_ml510

