progs/perftest.c: Use from Glibc syscall numbers.
[catacomb] / pub / Makefile.am
CommitLineData
0f00dc4c
MW
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
27include $(top_srcdir)/vars.am
28
29noinst_LTLIBRARIES = libpub.la
30libpub_la_SOURCES =
31
32TEST_LIBS = libpub.la
33
34###--------------------------------------------------------------------------
35### Component files.
36
37## The Blum--Blum--Shub random-bit generator.
38pkginclude_HEADERS += bbs.h
39libpub_la_SOURCES += bbs-fetch.c
40libpub_la_SOURCES += bbs-gen.c
41libpub_la_SOURCES += bbs-jump.c
ba57d652 42TESTS += bbs-jump.t$(EXEEXT)
0f00dc4c 43libpub_la_SOURCES += bbs-rand.c
ba57d652 44TESTS += bbs-rand.t$(EXEEXT)
0f00dc4c
MW
45EXTRA_DIST += t/bbs
46
47## Plain Diffie--Hellman, in Schorr groups.
48pkginclude_HEADERS += dh.h
49libpub_la_SOURCES += dh-check.c
50libpub_la_SOURCES += dh-fetch.c
51libpub_la_SOURCES += dh-gen.c
52libpub_la_SOURCES += dh-kcdsa.c
53libpub_la_SOURCES += dh-limlee.c
54libpub_la_SOURCES += dh-param.c
ba57d652 55TESTS += dh-param.t$(EXEEXT)
0f00dc4c
MW
56
57## The National Security Agency's Digital Signature Algorithm.
58pkginclude_HEADERS += dsa.h
59libpub_la_SOURCES += dsa-gen.c
ba57d652 60TESTS += dsa-gen.t$(EXEEXT)
0f00dc4c
MW
61libpub_la_SOURCES += dsa-misc.c
62libpub_la_SOURCES += dsa-sign.c
ba57d652 63TESTS += dsa-sign.t$(EXEEXT)
0f00dc4c 64libpub_la_SOURCES += dsa-verify.c
ba57d652 65TESTS += dsa-verify.t$(EXEEXT)
0f00dc4c
MW
66libpub_la_SOURCES += dsa-check.c
67EXTRA_DIST += t/dsa
68
69## Generalization of DSA to arbitrary cyclic groups.
70pkginclude_HEADERS += gdsa.h
71libpub_la_SOURCES += gdsa.c
ba57d652 72TESTS += gdsa.t$(EXEEXT)
0f00dc4c
MW
73EXTRA_DIST += t/gdsa
74
75## KISA `KCDSA', generalized to arbitrary cyclic groups.
76pkginclude_HEADERS += gkcdsa.h
77libpub_la_SOURCES += gkcdsa.c
ba57d652 78TESTS += gkcdsa.t$(EXEEXT)
0f00dc4c
MW
79EXTRA_DIST += t/gkcdsa
80
81## General key validity checking machinery.
82pkginclude_HEADERS += keycheck.h
83libpub_la_SOURCES += keycheck.c
84libpub_la_SOURCES += keycheck-mp.c
85libpub_la_SOURCES += keycheck-report.c
86
87## The Rivest--Shamir--Adleman trapdoor one-way function.
88pkginclude_HEADERS += rsa.h
89libpub_la_SOURCES += rsa-fetch.c
90libpub_la_SOURCES += rsa-gen.c
91libpub_la_SOURCES += rsa-priv.c
92libpub_la_SOURCES += rsa-pub.c
93libpub_la_SOURCES += rsa-recover.c
94libpub_la_SOURCES += oaep.c
95libpub_la_SOURCES += pkcs1.c
96libpub_la_SOURCES += pss.c
97EXTRA_DIST += rsa-test.c
ba57d652 98TESTS += rsa-test.t$(EXEEXT)
0f00dc4c
MW
99EXTRA_DIST += t/rsa
100
fc2d44af
MW
101## Bernstein's X25519 key-agreement algorithm.
102pkginclude_HEADERS += x25519.h
103libpub_la_SOURCES += x25519.c
104TESTS += x25519.t$(EXEEXT)
1e4c2665 105EXTRA_DIST += t/x25519 t/x25519.slow
fc2d44af 106
d56fd9d1
MW
107## Bernstein's Ed25519 signature algorithm.
108pkginclude_HEADERS += ed25519.h
109libpub_la_SOURCES += ed25519.c
110TESTS += ed25519.t$(EXEEXT)
accdbbc9
MW
111EXTRA_DIST += t/ed25519 t/ed25519.local
112EXTRA_DIST += t/ed25519.djb ed25519-tvconv
d56fd9d1
MW
113MAINTAINERCLEANFILES += t/ed25519
114ed25519.log: t/ed25519
accdbbc9 115t/ed25519: ed25519-tvconv t/ed25519.djb t/ed25519.local
d56fd9d1
MW
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; \
accdbbc9 121 cat t/ed25519.local; \
d56fd9d1
MW
122 } >t/ed25519.new && \
123 mv t/ed25519.new t/ed25519
124
643eb1bb
MW
125## Hamburg's X448 key-agreement algorithm.
126pkginclude_HEADERS += x448.h
127libpub_la_SOURCES += x448.c
128TESTS += x448.t$(EXEEXT)
1e4c2665 129EXTRA_DIST += t/x448 t/x448.slow
643eb1bb 130
c578d5d8
MW
131## Ed448: Bernstein's EdDSA over Hamburg's Ed448-Goldilocks curve.
132pkginclude_HEADERS += ed448.h
133libpub_la_SOURCES += ed448.c
134TESTS += ed448.t$(EXEEXT)
135EXTRA_DIST += t/ed448
136
0f00dc4c 137###----- That's all, folks --------------------------------------------------