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