X-Git-Url: https://git.distorted.org.uk/u/mdw/catacomb/blobdiff_plain/d03ab969116fe715d569304c1c474749b2f64529..674cd11ec63b56561980249cb19a0db54bacfa86:/Makefile.m4 diff --git a/Makefile.m4 b/Makefile.m4 index 06e1b7d..dca555f 100644 --- a/Makefile.m4 +++ b/Makefile.m4 @@ -1,6 +1,6 @@ ## -*-makefile-*- ## -## $Id: Makefile.m4,v 1.1 1999/09/03 08:41:11 mdw Exp $ +## $Id: Makefile.m4,v 1.19 1999/12/11 10:58:24 mdw Exp $ ## ## Makefile for Catacomb ## @@ -29,12 +29,62 @@ ##----- Revision history ---------------------------------------------------- ## ## $Log: Makefile.m4,v $ -## Revision 1.1 1999/09/03 08:41:11 mdw -## Initial import. +## Revision 1.19 1999/12/11 10:58:24 mdw +## Fix bug in test rig link flags. Add Karatsuba squaring. +## +## Revision 1.18 1999/12/10 23:30:01 mdw +## Lots of new files. +## +## Revision 1.17 1999/11/25 11:38:31 mdw +## Support for conversions between MPs and C integers. +## +## Revision 1.16 1999/11/22 20:51:33 mdw +## Add yet more source files. +## +## Revision 1.15 1999/11/22 14:08:30 mdw +## Improve dependencies for test programs. +## +## Revision 1.14 1999/11/22 00:17:09 mdw +## Create object files for test programs so that rebuilding doesn't take so +## long. +## +## Revision 1.12 1999/11/20 22:36:26 mdw +## Improve dependencies. Move mpx testing into mpx.c. +## +## Revision 1.11 1999/11/20 22:24:53 mdw +## Add Diffie-Hellman support. +## +## Revision 1.10 1999/11/19 19:28:24 mdw +## Add DSA files and tests. ## +## Revision 1.9 1999/11/17 18:05:35 mdw +## Many new files and test cases for multiprecision arithmetic. +## +## Revision 1.8 1999/11/13 01:56:07 mdw +## Include multiprecision maths stuff. +## +## Revision 1.7 1999/11/11 19:01:02 mdw +## Use `libtool' to generate a shared library. +## +## Revision 1.6 1999/11/11 17:47:34 mdw +## Updates for new configuration system, and `mptypes' generator. +## +## Revision 1.5 1999/11/11 00:59:17 mdw +## Minor reformatting. +## +## Revision 1.4 1999/10/24 10:20:36 mdw +## Modify for standalone distribution. The library's getting far too large +## to be sensibly embedded in other programs. +## +## Revision 1.3 1999/10/24 10:04:26 mdw +## Install headers in the right directory. +## +## Revision 1.2 1999/10/23 12:55:35 mdw ## The `CVS' directory can't be hardlinked. Don't worry about this ## overmuch. ## +## Revision 1.1 1999/09/03 08:41:11 mdw +## Initial import. ## AUTOMAKE_OPTIONS = foreign @@ -74,22 +124,32 @@ MODES = \ adorn(`$(srcdir)/', join(`hashes', `-', `hash_modes'), `.h') $(MODES): $(srcdir)/genmodes + cd $(srcdir); ./genmodes "lit(`ciphers')" "lit(`cipher_modes')" + cd $(srcdir); ./genmodes "lit(`hashes')" "lit(`hash_modes')" + +des_sp.h: des-mktab + ./des-mktab >des_sp.h + +ptab.c ptab.h: genprimes + ./genprimes -h ptab.h -c ptab.c -m 256 -t "unsigned char" -i ptab archinclude_HEADERS = mptypes.h mptypes.h: mptypes - des_sp.h \ ./mptypes >mptypes.h BUILT_SOURCES = \ getdate.c \ addsuffix(join(`ciphers', `-', `cipher_modes'), `.c') \ addsuffix(join(`ciphers', `-', `cipher_modes'), `.h') \ -INCLUDES = -I$(srcdir)/.. addsuffix(join(`hashes', `-', `hash_modes'), `.c') \ addsuffix(join(`hashes', `-', `hash_modes'), `.h') -include_HEADERS = \ -libcatacomb_la_LDFLAGS = -version-info 0:4:0 + +## --- Building the main library --- + +lib_LTLIBRARIES = libcatacomb.la + +libcatacomb_la_LDFLAGS = -version-info 0:5:0 ## Middle number is the patchlevel. Final number is the minor version. The ## difference between the first and last numbers is major version. @@ -97,27 +157,63 @@ define(`emit', `$1.h ') pkginclude_HEADERS = \ paranoia.h \ blkc.h hash.h \ - mpx.h mpw.h mpscan.h mparena.h mp.h mptext.h mpmont.h \ + gcipher.h ghash.h gmac.h grand.c \ + ghash-def.h \ + rc4.h \ + rand.h noise.h \ + key.h \ + lcrand.h fibrand.h \ + mpx.h mpw.h mpscan.h mparena.h mp.h mptext.h mpint.h \ + mpbarrett.h mpmont.h mpcrt.h \ + mprand.h \ ptab.h pgen.h rabin.h \ - dsa.h dh.h \ + bbs.h dsa.h dh.h \ allwithsuffix(`ciphers', `cipher_modes', `.h') \ -libcatacomb_a_SOURCES = \ + allwithsuffix(`hashes', `hash_modes', `.h') \ + addsuffix(`cipher_modes', `-def.h') \ + addsuffix(`hash_modes', `-def.h') define(`emit', `$1.c ') libcatacomb_la_SOURCES = \ + grand.c \ des-base.c des-base.h des_sp.h bf_ikey.h daftstory.h \ + rc4.c \ + rand.c noise.c \ + key.c \ + lcrand.c fibrand.c \ + mpx.c mpx-kmul.c mpx-ksqr.c mpscan.c mparena.c \ + mp-misc.c mp-mem.c mp-const.c mp-io.c mp-arith.c mp-test.c \ + mp-gcd.c mp-jacobi.c \ + mpint.c \ + mptext.c mptext-file.c mptext-string.c mptext-dstr.c \ + mpbarrett.c mpmont.c mpmont-mexp.c \ + mpcrt.c \ + mprand.c \ ptab.c pgen.c rabin.c \ + bbs-rand.c bbs-gen.c bbs-jump.c \ dsa-sign.c dsa-verify.c dsa-gen.c \ dh-prime.c \ addsuffix(join(`ciphers', `-', `cipher_modes'), `.c') \ -noinst_PROGRAMS = des-mktab -LDADD = libcatacomb.a ../mLib/libmLib.a + addsuffix(join(`hashes', `-', `hash_modes'), `.c') \ + addsuffix(`ciphers', `.c') addsuffix(`hashes', `.c') + +des-base.lo: des_sp.h +mpx.lo: mptypes.h + ## --- Utility programs --- -noinst_PROGRAMS = des-mktab mptypes -LDADD = libcatacomb.a + +bin_PROGRAMS = key bin_SCRIPTS = catacomb-config -noinst_PROGRAMS = des-mktab genprimes mptypes +noinst_PROGRAMS = des-mktab genprimes mptypes rspit LDADD = libcatacomb.la + +key_SOURCES = keyutil.c getdate.y getdate.h + +rspit_SOURCES = rspit.c + +des_mktab_SOURCES = des-mktab.c +des_mktab_LDADD = + genprimes_SOURCES = genprimes.c genprimes_LDADD = @@ -129,7 +225,7 @@ mptypes_LDADD = man_MANS = key.1 keyring.5 ## --- Other handy definitions --- - @ln $(srcdir)/tests/* $(distdir)/tests + EXTRA_DIST = Makefile.m4 genmodes $(man_MANS) dist-hook: @@ -137,35 +233,54 @@ dist-hook: @mkdir $(distdir)/tests @ln $(srcdir)/tests/* $(distdir)/tests || true @rm -f $(distdir)/tests/*~ -TESTS = \ - rc4.t \ - addsuffix(join(`ciphers', `-', `cipher_modes'), `.t') \ - addsuffix(join(`hashes', `-', `hash_modes'), `.t') \ - addsuffix(`ciphers', `.t') addsuffix(`hashes', `.t') - $(COMPILE) -DTEST_RIG -DSRCDIR=\"$(srcdir)\" \ - $(srcdir)/$1.c libcatacomb.a ../mLib/libmLib.a -o $1.t') - -`$1.t: $1.c libcatacomb.a - $(COMPILE) -DTEST_RIG -DSRCDIR=\"$(srcdir)\" $(srcdir)/$1.c libcatacomb.a $(LIBS) -o $1.t') + +## --- Testing --- + +define(`testprogs', `') + +define(`CTESTRIG', +`define(`testprogs', testprogs \ $1.t)dnl -$1.t: $1.c libcatacomb.la +$1.to: $1.c + $(COMPILE) -c -DTEST_RIG -DSRCDIR=\"$(srcdir)\" $(srcdir)/$1.c -o $1.to +$1.t: $1.to $1.o libcatacomb.la + $(CC) $(CFLAGS) $(LDFLAGS) $1.to .libs/libcatacomb.a $(LIBS) -o $1.t') +CTESTRIG(rc4) adorn(`nl`'CTESTRIG(', `ciphers', `)') adorn(`nl`'CTESTRIG(', `hashes', `)') -CLEANFILES = *.t +adorn(`nl`'CTESTRIG(', join(`ciphers', `-', `cipher_modes'), `)') adorn(`nl`'CTESTRIG(', join(`hashes', `-', `hash_modes'), `)') +CTESTRIG(lcrand) +CTESTRIG(mpx) +CTESTRIG(mpx-kmul) +CTESTRIG(mpx-ksqr) +CTESTRIG(mp-arith) +CTESTRIG(mp-gcd) +CTESTRIG(mp-jacobi) +CTESTRIG(mptext) +CTESTRIG(mpint) +CTESTRIG(mpbarrett) +CTESTRIG(mpmont) +CTESTRIG(mpmont-mexp) +CTESTRIG(mpcrt) +CTESTRIG(pgen) +CTESTRIG(dsa-gen) +CTESTRIG(dsa-sign) CTESTRIG(dsa-verify) -CLEANFILES = *.t mptypes.h +CTESTRIG(bbs-rand) +CTESTRIG(bbs-jump) + TESTS = testprogs -CLEANFILES = *.t mptypes.h des_sp.h ptab.c ptab.h +CLEANFILES = *.t *.to mptypes.h des_sp.h ptab.c ptab.h ## --- Makefile building (haha!) --- $(srcdir)/Makefile.am: $(srcdir)/Makefile.m4 m4 $(srcdir)/Makefile.m4 >$(srcdir)/Makefile.am - $(MODES) $(srcdir)/des_sp.h \ - $(srcdir)/getdate.c getdate.c + +MAINTAINERCLEANFILES = \ $(srcdir)/Makefile.am \ $(srcdir)/getdate.c getdate.c \ $(MODES)