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