chiark / gitweb /
Merge branch '2.4.x' into 2.5.x
[catacomb] / pub / Makefile.am
1 ### -*-makefile-*-
2 ###
3 ### Build script for public-key cryptography
4 ###
5 ### (c) 2013 Straylight/Edgeware
6 ###
7
8 ###----- Licensing notice ---------------------------------------------------
9 ###
10 ### This file is part of Catacomb.
11 ###
12 ### Catacomb is free software; you can redistribute it and/or modify
13 ### it under the terms of the GNU Library General Public License as
14 ### published by the Free Software Foundation; either version 2 of the
15 ### License, or (at your option) any later version.
16 ###
17 ### Catacomb is distributed in the hope that it will be useful,
18 ### but WITHOUT ANY WARRANTY; without even the implied warranty of
19 ### MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20 ### GNU Library General Public License for more details.
21 ###
22 ### You should have received a copy of the GNU Library General Public
23 ### License along with Catacomb; if not, write to the Free
24 ### Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
25 ### MA 02111-1307, USA.
26
27 include $(top_srcdir)/vars.am
28
29 noinst_LTLIBRARIES       = libpub.la
30 libpub_la_SOURCES        =
31
32 TEST_LIBS                = libpub.la
33
34 ###--------------------------------------------------------------------------
35 ### Component files.
36
37 ## The Blum--Blum--Shub random-bit generator.
38 pkginclude_HEADERS      += bbs.h
39 libpub_la_SOURCES       += bbs-fetch.c
40 libpub_la_SOURCES       += bbs-gen.c
41 libpub_la_SOURCES       += bbs-jump.c
42 TESTS                   += bbs-jump.t$(EXEEXT)
43 libpub_la_SOURCES       += bbs-rand.c
44 TESTS                   += bbs-rand.t$(EXEEXT)
45 EXTRA_DIST              += t/bbs
46
47 ## Plain Diffie--Hellman, in Schorr groups.
48 pkginclude_HEADERS      += dh.h
49 libpub_la_SOURCES       += dh-check.c
50 libpub_la_SOURCES       += dh-fetch.c
51 libpub_la_SOURCES       += dh-gen.c
52 libpub_la_SOURCES       += dh-kcdsa.c
53 libpub_la_SOURCES       += dh-limlee.c
54 libpub_la_SOURCES       += dh-param.c
55 TESTS                   += dh-param.t$(EXEEXT)
56
57 ## The National Security Agency's Digital Signature Algorithm.
58 pkginclude_HEADERS      += dsa.h
59 libpub_la_SOURCES       += dsa-gen.c
60 TESTS                   += dsa-gen.t$(EXEEXT)
61 libpub_la_SOURCES       += dsa-misc.c
62 libpub_la_SOURCES       += dsa-sign.c
63 TESTS                   += dsa-sign.t$(EXEEXT)
64 libpub_la_SOURCES       += dsa-verify.c
65 TESTS                   += dsa-verify.t$(EXEEXT)
66 libpub_la_SOURCES       += dsa-check.c
67 EXTRA_DIST              += t/dsa
68
69 ## Generalization of DSA to arbitrary cyclic groups.
70 pkginclude_HEADERS      += gdsa.h
71 libpub_la_SOURCES       += gdsa.c
72 TESTS                   += gdsa.t$(EXEEXT)
73 EXTRA_DIST              += t/gdsa
74
75 ## KISA `KCDSA', generalized to arbitrary cyclic groups.
76 pkginclude_HEADERS      += gkcdsa.h
77 libpub_la_SOURCES       += gkcdsa.c
78 TESTS                   += gkcdsa.t$(EXEEXT)
79 EXTRA_DIST              += t/gkcdsa
80
81 ## General key validity checking machinery.
82 pkginclude_HEADERS      += keycheck.h
83 libpub_la_SOURCES       += keycheck.c
84 libpub_la_SOURCES       += keycheck-mp.c
85 libpub_la_SOURCES       += keycheck-report.c
86
87 ## The Rivest--Shamir--Adleman trapdoor one-way function.
88 pkginclude_HEADERS      += rsa.h
89 libpub_la_SOURCES       += rsa-fetch.c
90 libpub_la_SOURCES       += rsa-gen.c
91 libpub_la_SOURCES       += rsa-priv.c
92 libpub_la_SOURCES       += rsa-pub.c
93 libpub_la_SOURCES       += rsa-recover.c
94 libpub_la_SOURCES       += oaep.c
95 libpub_la_SOURCES       += pkcs1.c
96 libpub_la_SOURCES       += pss.c
97 EXTRA_DIST              += rsa-test.c
98 TESTS                   += rsa-test.t$(EXEEXT)
99 EXTRA_DIST              += t/rsa
100
101 ## Bernstein's X25519 key-agreement algorithm.
102 pkginclude_HEADERS      += x25519.h
103 libpub_la_SOURCES       += x25519.c
104 TESTS                   += x25519.t$(EXEEXT)
105 EXTRA_DIST              += t/x25519 t/x25519.slow
106
107 ## Bernstein's Ed25519 signature algorithm.
108 pkginclude_HEADERS      += ed25519.h
109 libpub_la_SOURCES       += ed25519.c
110 TESTS                   += ed25519.t$(EXEEXT)
111 EXTRA_DIST              += t/ed25519 t/ed25519.local
112 EXTRA_DIST              += t/ed25519.djb ed25519-tvconv
113 MAINTAINERCLEANFILES    += t/ed25519
114 ed25519.log: t/ed25519
115 t/ed25519: ed25519-tvconv t/ed25519.djb t/ed25519.local
116         $(AM_V_GEN)cd $(srcdir) && \
117                 { echo "### GENERATED by ed25519-tvconv" && \
118                   ./ed25519-tvconv k <t/ed25519.djb && \
119                   ./ed25519-tvconv s <t/ed25519.djb && \
120                   ./ed25519-tvconv v <t/ed25519.djb; \
121                   cat t/ed25519.local; \
122                 } >t/ed25519.new && \
123                 mv t/ed25519.new t/ed25519
124
125 ## Hamburg's X448 key-agreement algorithm.
126 pkginclude_HEADERS      += x448.h
127 libpub_la_SOURCES       += x448.c
128 TESTS                   += x448.t$(EXEEXT)
129 EXTRA_DIST              += t/x448 t/x448.slow
130
131 ## Ed448: Bernstein's EdDSA over Hamburg's Ed448-Goldilocks curve.
132 pkginclude_HEADERS      += ed448.h
133 libpub_la_SOURCES       += ed448.c
134 TESTS                   += ed448.t$(EXEEXT)
135 EXTRA_DIST              += t/ed448
136
137 ###----- That's all, folks --------------------------------------------------