1# 2# OpenSSL/crypto/sha/Makefile 3# 4 5DIR= sha 6TOP= ../.. 7CC= cc 8CPP= $(CC) -E 9INCLUDES= 10CFLAG=-g 11MAKEFILE= Makefile 12AR= ar r 13 14SHA1_ASM_OBJ= 15 16CFLAGS= $(INCLUDES) $(CFLAG) 17ASFLAGS= $(INCLUDES) $(ASFLAG) 18AFLAGS= $(ASFLAGS) 19 20GENERAL=Makefile 21TEST=shatest.c sha1test.c sha256t.c sha512t.c 22APPS= 23 24LIB=$(TOP)/libcrypto.a 25LIBSRC=sha_dgst.c sha1dgst.c sha_one.c sha1_one.c sha256.c sha512.c 26LIBOBJ=sha_dgst.o sha1dgst.o sha_one.o sha1_one.o sha256.o sha512.o $(SHA1_ASM_OBJ) 27 28SRC= $(LIBSRC) 29 30EXHEADER= sha.h 31HEADER= sha_locl.h $(EXHEADER) 32 33ALL= $(GENERAL) $(SRC) $(HEADER) 34 35top: 36 (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all) 37 38all: lib 39 40lib: $(LIBOBJ) 41 $(AR) $(LIB) $(LIBOBJ) 42 $(RANLIB) $(LIB) || echo Never mind. 43 @touch lib 44 45sha1-586.s: asm/sha1-586.pl ../perlasm/x86asm.pl 46 $(PERL) asm/sha1-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@ 47sha256-586.s: asm/sha256-586.pl ../perlasm/x86asm.pl 48 $(PERL) asm/sha256-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@ 49sha512-586.s: asm/sha512-586.pl ../perlasm/x86asm.pl 50 $(PERL) asm/sha512-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@ 51 52sha1-ia64.s: asm/sha1-ia64.pl 53 (cd asm; $(PERL) sha1-ia64.pl ../$@ $(CFLAGS)) 54sha256-ia64.s: asm/sha512-ia64.pl 55 (cd asm; $(PERL) sha512-ia64.pl ../$@ $(CFLAGS)) 56sha512-ia64.s: asm/sha512-ia64.pl 57 (cd asm; $(PERL) sha512-ia64.pl ../$@ $(CFLAGS)) 58 59sha256-armv4.S: asm/sha256-armv4.pl 60 $(PERL) $< $(PERLASM_SCHEME) $@ 61 62sha1-alpha.s: asm/sha1-alpha.pl 63 (preproc=/tmp/$$$$.$@; trap "rm $$preproc" INT; \ 64 $(PERL) asm/sha1-alpha.pl > $$preproc && \ 65 $(CC) -E $$preproc > $@ && rm $$preproc) 66 67# Solaris make has to be explicitly told 68sha1-x86_64.s: asm/sha1-x86_64.pl; $(PERL) asm/sha1-x86_64.pl $(PERLASM_SCHEME) > $@ 69sha256-x86_64.s:asm/sha512-x86_64.pl; $(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@ 70sha512-x86_64.s:asm/sha512-x86_64.pl; $(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@ 71sha1-sparcv9.s: asm/sha1-sparcv9.pl; $(PERL) asm/sha1-sparcv9.pl $@ $(CFLAGS) 72sha256-sparcv9.s:asm/sha512-sparcv9.pl; $(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS) 73sha512-sparcv9.s:asm/sha512-sparcv9.pl; $(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS) 74 75sha1-ppc.s: asm/sha1-ppc.pl; $(PERL) asm/sha1-ppc.pl $(PERLASM_SCHEME) $@ 76sha256-ppc.s: asm/sha512-ppc.pl; $(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@ 77sha512-ppc.s: asm/sha512-ppc.pl; $(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@ 78 79sha1-parisc.s: asm/sha1-parisc.pl; $(PERL) asm/sha1-parisc.pl $(PERLASM_SCHEME) $@ 80sha256-parisc.s:asm/sha512-parisc.pl; $(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@ 81sha512-parisc.s:asm/sha512-parisc.pl; $(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@ 82 83sha1-mips.S: asm/sha1-mips.pl; $(PERL) asm/sha1-mips.pl $(PERLASM_SCHEME) $@ 84sha256-mips.S: asm/sha512-mips.pl; $(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@ 85sha512-mips.S: asm/sha512-mips.pl; $(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@ 86 87# GNU make "catch all" 88sha1-%.S: asm/sha1-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ 89sha256-%.S: asm/sha512-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ 90sha512-%.S: asm/sha512-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@ 91 92sha1-armv4-large.o: sha1-armv4-large.S 93sha256-armv4.o: sha256-armv4.S 94sha512-armv4.o: sha512-armv4.S 95 96files: 97 $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO 98 99links: 100 @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER) 101 @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST) 102 @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS) 103 104install: 105 @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile... 106 @headerlist="$(EXHEADER)"; for i in $$headerlist ; \ 107 do \ 108 (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \ 109 chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \ 110 done; 111 112tags: 113 ctags $(SRC) 114 115tests: 116 117lint: 118 lint -DLINT $(INCLUDES) $(SRC)>fluff 119 120update: depend 121 122depend: 123 @[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile... 124 $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC) 125 126dclean: 127 $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new 128 mv -f Makefile.new $(MAKEFILE) 129 130clean: 131 rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff 132 133# DO NOT DELETE THIS LINE -- make depend depends on it. 134 135sha1_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h 136sha1_one.o: ../../include/openssl/opensslconf.h 137sha1_one.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h 138sha1_one.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h 139sha1_one.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h 140sha1_one.o: sha1_one.c 141sha1dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h 142sha1dgst.o: ../../include/openssl/opensslconf.h 143sha1dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h 144sha1dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h 145sha1dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h 146sha1dgst.o: ../md32_common.h sha1dgst.c sha_locl.h 147sha256.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h 148sha256.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h 149sha256.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h 150sha256.o: ../../include/openssl/sha.h ../../include/openssl/stack.h 151sha256.o: ../../include/openssl/symhacks.h ../md32_common.h sha256.c 152sha512.o: ../../e_os.h ../../include/openssl/bio.h 153sha512.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h 154sha512.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h 155sha512.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h 156sha512.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h 157sha512.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h 158sha512.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h 159sha512.o: ../cryptlib.h sha512.c 160sha_dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h 161sha_dgst.o: ../../include/openssl/opensslconf.h 162sha_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h 163sha_dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h 164sha_dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h 165sha_dgst.o: ../md32_common.h sha_dgst.c sha_locl.h 166sha_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h 167sha_one.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h 168sha_one.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h 169sha_one.o: ../../include/openssl/sha.h ../../include/openssl/stack.h 170sha_one.o: ../../include/openssl/symhacks.h sha_one.c 171