Makefile revision 238405
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	$(PERL) $< | $(CC) -E - | tee $@ > /dev/null
64
65# Solaris make has to be explicitly told
66sha1-x86_64.s:	asm/sha1-x86_64.pl;	$(PERL) asm/sha1-x86_64.pl $(PERLASM_SCHEME) > $@
67sha256-x86_64.s:asm/sha512-x86_64.pl;	$(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@
68sha512-x86_64.s:asm/sha512-x86_64.pl;	$(PERL) asm/sha512-x86_64.pl $(PERLASM_SCHEME) $@
69sha1-sparcv9.s:	asm/sha1-sparcv9.pl;	$(PERL) asm/sha1-sparcv9.pl $@ $(CFLAGS)
70sha256-sparcv9.s:asm/sha512-sparcv9.pl;	$(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS)
71sha512-sparcv9.s:asm/sha512-sparcv9.pl;	$(PERL) asm/sha512-sparcv9.pl $@ $(CFLAGS)
72
73sha1-ppc.s:	asm/sha1-ppc.pl;	$(PERL) asm/sha1-ppc.pl $(PERLASM_SCHEME) $@
74sha256-ppc.s:	asm/sha512-ppc.pl;	$(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@
75sha512-ppc.s:	asm/sha512-ppc.pl;	$(PERL) asm/sha512-ppc.pl $(PERLASM_SCHEME) $@
76
77sha1-parisc.s:	asm/sha1-parisc.pl;	$(PERL) asm/sha1-parisc.pl $(PERLASM_SCHEME) $@
78sha256-parisc.s:asm/sha512-parisc.pl;	$(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@
79sha512-parisc.s:asm/sha512-parisc.pl;	$(PERL) asm/sha512-parisc.pl $(PERLASM_SCHEME) $@
80
81sha1-mips.S:	asm/sha1-mips.pl;	$(PERL) asm/sha1-mips.pl $(PERLASM_SCHEME) $@
82sha256-mips.S:	asm/sha512-mips.pl;	$(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@
83sha512-mips.S:	asm/sha512-mips.pl;	$(PERL) asm/sha512-mips.pl $(PERLASM_SCHEME) $@
84
85# GNU make "catch all"
86sha1-%.S:	asm/sha1-%.pl;		$(PERL) $< $(PERLASM_SCHEME) $@
87sha256-%.S:	asm/sha512-%.pl;	$(PERL) $< $(PERLASM_SCHEME) $@
88sha512-%.S:	asm/sha512-%.pl;	$(PERL) $< $(PERLASM_SCHEME) $@
89
90sha1-armv4-large.o:	sha1-armv4-large.S
91sha256-armv4.o:		sha256-armv4.S
92sha512-armv4.o:		sha512-armv4.S
93
94files:
95	$(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
96
97links:
98	@$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
99	@$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
100	@$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
101
102install:
103	@[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
104	@headerlist="$(EXHEADER)"; for i in $$headerlist ; \
105	do  \
106	(cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
107	chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
108	done;
109
110tags:
111	ctags $(SRC)
112
113tests:
114
115lint:
116	lint -DLINT $(INCLUDES) $(SRC)>fluff
117
118depend:
119	@[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile...
120	$(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
121
122dclean:
123	$(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
124	mv -f Makefile.new $(MAKEFILE)
125
126clean:
127	rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
128
129# DO NOT DELETE THIS LINE -- make depend depends on it.
130
131sha1_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
132sha1_one.o: ../../include/openssl/opensslconf.h
133sha1_one.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
134sha1_one.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
135sha1_one.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
136sha1_one.o: sha1_one.c
137sha1dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
138sha1dgst.o: ../../include/openssl/opensslconf.h
139sha1dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
140sha1dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
141sha1dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
142sha1dgst.o: ../md32_common.h sha1dgst.c sha_locl.h
143sha256.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
144sha256.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
145sha256.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
146sha256.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
147sha256.o: ../../include/openssl/symhacks.h ../md32_common.h sha256.c
148sha512.o: ../../e_os.h ../../include/openssl/bio.h
149sha512.o: ../../include/openssl/buffer.h ../../include/openssl/crypto.h
150sha512.o: ../../include/openssl/e_os2.h ../../include/openssl/err.h
151sha512.o: ../../include/openssl/lhash.h ../../include/openssl/opensslconf.h
152sha512.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
153sha512.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
154sha512.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
155sha512.o: ../cryptlib.h sha512.c
156sha_dgst.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
157sha_dgst.o: ../../include/openssl/opensslconf.h
158sha_dgst.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
159sha_dgst.o: ../../include/openssl/safestack.h ../../include/openssl/sha.h
160sha_dgst.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
161sha_dgst.o: ../md32_common.h sha_dgst.c sha_locl.h
162sha_one.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
163sha_one.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
164sha_one.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
165sha_one.o: ../../include/openssl/sha.h ../../include/openssl/stack.h
166sha_one.o: ../../include/openssl/symhacks.h sha_one.c
167