ARM assembler pack: profiler-assisted optimizations and NEON support.
[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 LIBOBJ= cbc128.o ctr128.o cts128.o cfb128.o ofb128.o gcm128.o \
26         $(MODES_ASM_OBJ)
27
28 SRC= $(LIBSRC)
29
30 #EXHEADER= store.h str_compat.h
31 EXHEADER= modes.h
32 HEADER= modes_lcl.h $(EXHEADER)
33
34 ALL=    $(GENERAL) $(SRC) $(HEADER)
35
36 top:
37         (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
38
39 all:    lib
40
41 lib:    $(LIBOBJ)
42         $(ARX) $(LIB) $(LIBOBJ)
43         $(RANLIB) $(LIB) || echo Never mind.
44         @touch lib
45
46 ghash-ia64.s:   asm/ghash-ia64.pl
47         $(PERL) asm/ghash-ia64.pl $@ $(CFLAGS)
48 ghash-x86.s:    asm/ghash-x86.pl
49         $(PERL) asm/ghash-x86.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
50 ghash-x86_64.s: asm/ghash-x86_64.pl
51         $(PERL) asm/ghash-x86_64.pl $(PERLASM_SCHEME) > $@
52 ghash-sparcv9.s:        asm/ghash-sparcv9.pl
53         $(PERL) asm/ghash-sparcv9.pl $@ $(CFLAGS)
54 ghash-alpha.s:  asm/ghash-alpha.pl
55         $(PERL) $< | $(CC) -E - | tee $@ > /dev/null
56 ghash-parisc.s: asm/ghash-parisc.pl
57         $(PERL) asm/ghash-parisc.pl $(PERLASM_SCHEME) $@
58
59 # GNU make "catch all"
60 ghash-%.S:      asm/ghash-%.pl; $(PERL) $< $(PERLASM_SCHEME) $@
61
62 ghash-armv4.o:  ghash-armv4.S
63
64 files:
65         $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
66
67 links:
68         @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
69         @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
70         @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
71
72 install:
73         @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
74         @headerlist="$(EXHEADER)"; for i in $$headerlist; \
75         do  \
76         (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
77         chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
78         done;
79
80 tags:
81         ctags $(SRC)
82
83 tests:
84
85 lint:
86         lint -DLINT $(INCLUDES) $(SRC)>fluff
87
88 depend:
89         @[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile...
90         $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
91
92 dclean:
93         $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
94         mv -f Makefile.new $(MAKEFILE)
95
96 clean:
97         rm -f *.s *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
98
99 # DO NOT DELETE THIS LINE -- make depend depends on it.
100
101 cbc128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
102 cbc128.o: ../../include/openssl/modes.h ../../include/openssl/opensslconf.h
103 cbc128.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
104 cbc128.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
105 cbc128.o: ../../include/openssl/symhacks.h cbc128.c modes_lcl.h
106 cfb128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
107 cfb128.o: ../../include/openssl/modes.h ../../include/openssl/opensslconf.h
108 cfb128.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
109 cfb128.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
110 cfb128.o: ../../include/openssl/symhacks.h cfb128.c modes_lcl.h
111 ctr128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
112 ctr128.o: ../../include/openssl/modes.h ../../include/openssl/opensslconf.h
113 ctr128.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
114 ctr128.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
115 ctr128.o: ../../include/openssl/symhacks.h ctr128.c modes_lcl.h
116 cts128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
117 cts128.o: ../../include/openssl/modes.h ../../include/openssl/opensslconf.h
118 cts128.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
119 cts128.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
120 cts128.o: ../../include/openssl/symhacks.h cts128.c modes_lcl.h
121 gcm128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
122 gcm128.o: ../../include/openssl/fips.h ../../include/openssl/modes.h
123 gcm128.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
124 gcm128.o: ../../include/openssl/ossl_typ.h ../../include/openssl/safestack.h
125 gcm128.o: ../../include/openssl/stack.h ../../include/openssl/symhacks.h
126 gcm128.o: gcm128.c modes_lcl.h
127 ofb128.o: ../../include/openssl/crypto.h ../../include/openssl/e_os2.h
128 ofb128.o: ../../include/openssl/modes.h ../../include/openssl/opensslconf.h
129 ofb128.o: ../../include/openssl/opensslv.h ../../include/openssl/ossl_typ.h
130 ofb128.o: ../../include/openssl/safestack.h ../../include/openssl/stack.h
131 ofb128.o: ../../include/openssl/symhacks.h modes_lcl.h ofb128.c