| # Targets |
| # make - twidle the options yourself :-) |
| # make cc - standard cc options |
| # make gcc - standard gcc options |
| # make x86-elf - linux-elf etc |
| # make x86-out - linux-a.out, FreeBSD etc |
| # make x86-solaris |
| # make x86-bdsi |
| |
| DIR= md5 |
| TOP= . |
| CC= gcc |
| CFLAG= -O3 -fomit-frame-pointer |
| |
| CPP= $(CC) -E |
| INCLUDES= |
| INSTALLTOP=/usr/local/lib |
| MAKE= make |
| MAKEDEPEND= makedepend |
| MAKEFILE= Makefile.uni |
| AR= ar r |
| |
| MD5_ASM_OBJ= |
| |
| CFLAGS= $(INCLUDES) $(CFLAG) |
| |
| GENERAL=Makefile |
| TEST=md5test |
| APPS=md5 |
| |
| LIB=libmd5.a |
| LIBSRC=md5_dgst.c md5_one.c |
| LIBOBJ=md5_dgst.o md5_one.o $(MD5_ASM_OBJ) |
| |
| SRC= $(LIBSRC) |
| |
| EXHEADER= md5.h |
| HEADER= md5_locl.h $(EXHEADER) |
| |
| ALL= $(GENERAL) $(SRC) $(HEADER) |
| |
| all: $(LIB) $(TEST) $(APPS) |
| |
| $(LIB): $(LIBOBJ) |
| $(AR) $(LIB) $(LIBOBJ) |
| sh $(TOP)/ranlib.sh $(LIB) |
| |
| # elf |
| asm/mx86-elf.o: asm/mx86unix.cpp |
| $(CPP) -DELF asm/mx86unix.cpp | as -o asm/mx86-elf.o |
| |
| # solaris |
| asm/mx86-sol.o: asm/mx86unix.cpp |
| $(CC) -E -DSOL asm/mx86unix.cpp | sed 's/^#.*//' > asm/mx86-sol.s |
| as -o asm/mx86-sol.o asm/mx86-sol.s |
| rm -f asm/mx86-sol.s |
| |
| # a.out |
| asm/mx86-out.o: asm/mx86unix.cpp |
| $(CPP) -DOUT asm/mx86unix.cpp | as -o asm/mx86-out.o |
| |
| # bsdi |
| asm/mx86bsdi.o: asm/mx86unix.cpp |
| $(CPP) -DBSDI asm/mx86unix.cpp | as -o asm/mx86bsdi.o |
| |
| asm/mx86unix.cpp: |
| (cd asm; perl md5-586.pl cpp >mx86unix.cpp) |
| |
| test: $(TEST) |
| ./$(TEST) |
| |
| $(TEST): $(TEST).c $(LIB) |
| $(CC) -o $(TEST) $(CFLAGS) $(TEST).c $(LIB) |
| |
| $(APPS): $(APPS).c $(LIB) |
| $(CC) -o $(APPS) $(CFLAGS) $(APPS).c $(LIB) |
| |
| lint: |
| lint -DLINT $(INCLUDES) $(SRC)>fluff |
| |
| depend: |
| $(MAKEDEPEND) $(INCLUDES) $(PROGS) $(LIBSRC) |
| |
| dclean: |
| perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new |
| mv -f Makefile.new $(MAKEFILE) |
| |
| clean: |
| /bin/rm -f $(LIB) $(TEST) $(APPS) *.o asm/*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff |
| |
| cc: |
| $(MAKE) MD5_ASM_OBJ="" CC="cc" CFLAG="-O" all |
| |
| gcc: |
| $(MAKE) MD5_ASM_OBJ="" CC="gcc" CFLAGS="-O3 -fomit-frame-pointer" all |
| |
| x86-elf: |
| $(MAKE) MD5_ASM_OBJ="asm/mx86-elf.o" CFLAG="-DELF -DMD5_ASM -DL_ENDIAN $(CFLAGS)" all |
| |
| x86-out: |
| $(MAKE) MD5_ASM_OBJ="asm/mx86-out.o" CFLAG="-DOUT -DMD5_ASM -DL_ENDIAN $(CFLAGS)" all |
| |
| x86-solaris: |
| $(MAKE) MD5_ASM_OBJ="asm/mx86-sol.o" CFLAG="-DSOL -DMD5_ASM -DL_ENDIAN $(CFLAGS)" all |
| |
| x86-bdsi: |
| $(MAKE) MD5_ASM_OBJ="asm/mx86-bdsi.o" CFLAG="-DBDSI -DMD5_ASM -DL_ENDIAN $(CFLAGS)" all |
| |
| # DO NOT DELETE THIS LINE -- make depend depends on it. |