2 # OpenSSL/crypto/sha/Makefile
16 CFLAGS= $(INCLUDES) $(CFLAG)
17 ASFLAGS= $(INCLUDES) $(ASFLAG)
21 TEST=shatest.c sha1test.c sha256t.c sha512t.c
24 LIB=$(TOP)/libcrypto.a
25 LIBSRC=sha_dgst.c sha1dgst.c sha_one.c sha1_one.c sha256.c sha512.c
26 LIBOBJ=sha_dgst.o sha1dgst.o sha_one.o sha1_one.o sha256.o sha512.o $(SHA1_ASM_OBJ)
31 HEADER= sha_locl.h $(EXHEADER)
33 ALL= $(GENERAL) $(SRC) $(HEADER)
36 (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
41 $(AR) $(LIB) $(LIBOBJ)
42 $(RANLIB) $(LIB) || echo Never mind.
45 sha1-586.s: asm/sha1-586.pl ../perlasm/x86asm.pl
46 $(PERL) asm/sha1-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
47 sha256-586.s: asm/sha256-586.pl ../perlasm/x86asm.pl
48 $(PERL) asm/sha256-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
49 sha512-586.s: asm/sha512-586.pl ../perlasm/x86asm.pl
50 $(PERL) asm/sha512-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
52 sha1-ia64.s: asm/sha1-ia64.pl
53 (cd asm; $(PERL) sha1-ia64.pl ../$@ $(CFLAGS))
54 sha256-ia64.s: asm/sha512-ia64.pl
55 (cd asm; $(PERL) sha512-ia64.pl ../$@ $(CFLAGS))
56 sha512-ia64.s: asm/sha512-ia64.pl
57 (cd asm; $(PERL) sha512-ia64.pl ../$@ $(CFLAGS))
59 sha256-armv4.S: asm/sha256-armv4.pl
60 $(PERL) $< $(PERLASM_SCHEME) $@
62 sha1-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)
67 # Solaris make has to be explicitly told
68 sha1-x86_64.s: asm/sha1-x86_64.pl; $(PERL) asm/sha1-x86_64.pl $(PERLASM_SCHEME) > $@
69 sha1-mb-x86_64.s: asm/sha1-mb-x86_64.pl; $(PERL) asm/sha1-mb-x86_64.pl $(PERLASM_SCHEME) > $@
70 sha256-x86_64.s:asm/sha512-x86_64.pl; $(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@
71 sha256-mb-x86_64.s: asm/sha256-mb-x86_64.pl; $(PERL) asm/sha256-mb-x86_64.pl $(PERLASM_SCHEME) > $@
72 sha512-x86_64.s:asm/sha512-x86_64.pl; $(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@
73 sha1-sparcv9.S: asm/sha1-sparcv9.pl; $(PERL) asm/sha1-sparcv9.pl $@ $(CFLAGS)
74 sha256-sparcv9.S:asm/sha512-sparcv9.pl; $(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS)
75 sha512-sparcv9.S:asm/sha512-sparcv9.pl; $(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS)
77 sha1-ppc.s: asm/sha1-ppc.pl; $(PERL) asm/sha1-ppc.pl $(PERLASM_SCHEME) $@
78 sha256-ppc.s: asm/sha512-ppc.pl; $(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@
79 sha512-ppc.s: asm/sha512-ppc.pl; $(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@
81 sha1-parisc.s: asm/sha1-parisc.pl; $(PERL) asm/sha1-parisc.pl $(PERLASM_SCHEME) $@
82 sha256-parisc.s:asm/sha512-parisc.pl; $(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@
83 sha512-parisc.s:asm/sha512-parisc.pl; $(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@
85 sha1-mips.S: asm/sha1-mips.pl; $(PERL) asm/sha1-mips.pl $(PERLASM_SCHEME) $@
86 sha256-mips.S: asm/sha512-mips.pl; $(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@
87 sha512-mips.S: asm/sha512-mips.pl; $(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@
89 # GNU make "catch all"
90 sha1-%.S: asm/sha1-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@
91 sha256-%.S: asm/sha512-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@
92 sha512-%.S: asm/sha512-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@
94 sha1-armv4-large.o: sha1-armv4-large.S
95 sha256-armv4.o: sha256-armv4.S
96 sha512-armv4.o: sha512-armv4.S
99 $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
102 @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
103 @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
104 @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
107 @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
108 @headerlist="$(EXHEADER)"; for i in $$headerlist ; \
110 (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
111 chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
120 lint -DLINT $(INCLUDES) $(SRC)>fluff
123 @[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile...
124 $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
127 $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
128 mv -f Makefile.new $(MAKEFILE)
131 rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
133 # DO NOT DELETE THIS LINE -- make depend depends on it.
135 sha1_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
136 sha1_one.o: ../../include/openssl/opensslconf.h
137 sha1_one.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
138 sha1_one.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
139 sha1_one.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
140 sha1_one.o: sha1_one.c
141 sha1dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
142 sha1dgst.o: ../../include/openssl/opensslconf.h
143 sha1dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
144 sha1dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
145 sha1dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
146 sha1dgst.o: ../md32_common.h sha1dgst.c sha_locl.h
147 sha256.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
148 sha256.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
149 sha256.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
150 sha256.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
151 sha256.o: ../../include/openssl/symhacks.h ../md32_common.h sha256.c
152 sha512.o: ../../e_os.h ../../include/openssl/bio.h
153 sha512.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
154 sha512.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
155 sha512.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
156 sha512.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
157 sha512.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
158 sha512.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
159 sha512.o: ../cryptlib.h sha512.c
160 sha_dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
161 sha_dgst.o: ../../include/openssl/opensslconf.h
162 sha_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
163 sha_dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
164 sha_dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
165 sha_dgst.o: ../md32_common.h sha_dgst.c sha_locl.h
166 sha_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
167 sha_one.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
168 sha_one.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
169 sha_one.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
170 sha_one.o: ../../include/openssl/symhacks.h sha_one.c