Enable assembler optimizations on earlier ARM cores
[libgcrypt.git] / cipher / Makefile.am
1 # Makefile for cipher modules
2 # Copyright (C) 1998, 1999, 2000, 2001, 2002,
3 #               2003, 2009 Free Software Foundation, Inc.
4 #
5 # This file is part of Libgcrypt.
6 #
7 # Libgcrypt is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU Lesser General Public License as
9 # published by the Free Software Foundation; either version 2.1 of
10 # the License, or (at your option) any later version.
11 #
12 # Libgcrypt is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 # GNU Lesser General Public License for more details.
16 #
17 # You should have received a copy of the GNU Lesser General Public
18 # License along with this program; if not, see <http://www.gnu.org/licenses/>.
19
20 # Process this file with automake to produce Makefile.in
21
22 EXTRA_DIST = Manifest
23
24 # Need to include ../src in addition to top_srcdir because gcrypt.h is
25 # a built header.
26 AM_CPPFLAGS = -I../src -I$(top_srcdir)/src
27 AM_CFLAGS = $(GPG_ERROR_CFLAGS)
28
29 AM_CCASFLAGS = $(NOEXECSTACK_FLAGS)
30
31
32 noinst_LTLIBRARIES = libcipher.la
33
34 GCRYPT_MODULES = @GCRYPT_CIPHERS@ @GCRYPT_PUBKEY_CIPHERS@ \
35                  @GCRYPT_DIGESTS@ @GCRYPT_KDFS@
36
37 libcipher_la_DEPENDENCIES = $(GCRYPT_MODULES)
38 libcipher_la_LIBADD = $(GCRYPT_MODULES)
39
40 libcipher_la_SOURCES = \
41 cipher.c cipher-internal.h \
42 cipher-cbc.c cipher-cfb.c cipher-ofb.c cipher-ctr.c cipher-aeswrap.c \
43 cipher-ccm.c \
44 cipher-selftest.c cipher-selftest.h \
45 pubkey.c pubkey-internal.h pubkey-util.c \
46 md.c \
47 kdf.c kdf-internal.h \
48 hmac-tests.c \
49 bithelp.h  \
50 bufhelp.h  \
51 primegen.c  \
52 hash-common.c hash-common.h \
53 dsa-common.c rsa-common.c \
54 rmd.h
55
56 EXTRA_libcipher_la_SOURCES = \
57 arcfour.c \
58 blowfish.c blowfish-amd64.S \
59 cast5.c cast5-amd64.S cast5-arm.S \
60 crc.c \
61 des.c \
62 dsa.c \
63 elgamal.c \
64 ecc.c ecc-curves.c ecc-misc.c ecc-common.h \
65 ecc-ecdsa.c ecc-eddsa.c ecc-gost.c \
66 idea.c \
67 gost28147.c gost.h \
68 gostr3411-94.c \
69 md4.c \
70 md5.c \
71 rijndael.c rijndael-tables.h rijndael-amd64.S rijndael-arm.S \
72 rmd160.c \
73 rsa.c \
74 salsa20.c \
75 scrypt.c \
76 seed.c \
77 serpent.c serpent-sse2-amd64.S serpent-avx2-amd64.S \
78 sha1.c \
79 sha256.c \
80 sha512.c sha512-armv7-neon.S \
81 stribog.c \
82 tiger.c \
83 whirlpool.c \
84 twofish.c twofish-amd64.S twofish-arm.S \
85 rfc2268.c \
86 camellia.c camellia.h camellia-glue.c camellia-aesni-avx-amd64.S \
87   camellia-aesni-avx2-amd64.S camellia-arm.S
88
89 if ENABLE_O_FLAG_MUNGING
90 o_flag_munging = sed -e 's/-O\([2-9s][2-9s]*\)/-O1/' -e 's/-Ofast/-O1/g'
91 else
92 o_flag_munging = cat
93 endif
94
95
96 # We need to lower the optimization for this module.
97 tiger.o: $(srcdir)/tiger.c
98         `echo $(COMPILE) -c $(srcdir)/tiger.c | $(o_flag_munging) `
99
100 tiger.lo: $(srcdir)/tiger.c
101         `echo $(LTCOMPILE) -c $(srcdir)/tiger.c | $(o_flag_munging) `