| # | |
| # This is a simple Makefile to test some of the RAID-6 code | |
| # from userspace. | |
| # | |
| CC = gcc | |
| OPTFLAGS = -O2 # Adjust as desired | |
| CFLAGS = -I.. -g $(OPTFLAGS) | |
| LD = ld | |
| PERL = perl | |
| AR = ar | |
| RANLIB = ranlib | |
| .c.o: | |
| $(CC) $(CFLAGS) -c -o $@ $< | |
| %.c: ../%.c | |
| cp -f $< $@ | |
| %.uc: ../%.uc | |
| cp -f $< $@ | |
| all: raid6.a raid6test | |
| raid6.a: raid6int1.o raid6int2.o raid6int4.o raid6int8.o raid6int16.o \ | |
| raid6int32.o \ | |
| raid6mmx.o raid6sse1.o raid6sse2.o \ | |
| raid6altivec1.o raid6altivec2.o raid6altivec4.o raid6altivec8.o \ | |
| raid6recov.o raid6algos.o \ | |
| raid6tables.o | |
| rm -f $@ | |
| $(AR) cq $@ $^ | |
| $(RANLIB) $@ | |
| raid6test: test.c raid6.a | |
| $(CC) $(CFLAGS) -o raid6test $^ | |
| raid6altivec1.c: raid6altivec.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 1 < raid6altivec.uc > $@ | |
| raid6altivec2.c: raid6altivec.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 2 < raid6altivec.uc > $@ | |
| raid6altivec4.c: raid6altivec.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 4 < raid6altivec.uc > $@ | |
| raid6altivec8.c: raid6altivec.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 8 < raid6altivec.uc > $@ | |
| raid6int1.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 1 < raid6int.uc > $@ | |
| raid6int2.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 2 < raid6int.uc > $@ | |
| raid6int4.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 4 < raid6int.uc > $@ | |
| raid6int8.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 8 < raid6int.uc > $@ | |
| raid6int16.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 16 < raid6int.uc > $@ | |
| raid6int32.c: raid6int.uc ../unroll.pl | |
| $(PERL) ../unroll.pl 32 < raid6int.uc > $@ | |
| raid6tables.c: mktables | |
| ./mktables > raid6tables.c | |
| clean: | |
| rm -f *.o *.a mktables mktables.c raid6int.uc raid6*.c raid6test | |
| spotless: clean | |
| rm -f *~ |