X-Git-Url: https://git.distorted.org.uk/~mdw/catacomb/blobdiff_plain/ef75f31480979cec4927ec79fbb1431320b30d02..24497005602a47b47c2cdcc39d06236a71433849:/symm/Makefile.am diff --git a/symm/Makefile.am b/symm/Makefile.am index 7107f1f3..bd7710b8 100644 --- a/symm/Makefile.am +++ b/symm/Makefile.am @@ -46,10 +46,16 @@ EXTRA_DIST += multigen ## we generate it using `multigen'. Unfortunately, this needs to be done ## at the Automake level, which causes some interesting bootstrapping ## problems. +## +## Of course, now that we have this machinery for the complicated modes +## generation, we might as well use it for simpler things. include modes.am +include stubs.am EXTRA_DIST += modes.am.in modes.am +EXTRA_DIST += stubs.am.in stubs.am MAINTAINERCLEANFILES += $(srcdir)/modes.am +MAINTAINERCLEANFILES += $(srcdir)/stubs.am ## Generate the lists. $(srcdir)/modes.am: modes.am.in Makefile.am @@ -61,12 +67,19 @@ $(srcdir)/modes.am: modes.am.in Makefile.am hashmode="$(HASHMODES)" \ hashciphermode="$(HASHCIPHERMODES)" \ hashmacmode="$(HASHMACMODES)" +$(srcdir)/stubs.am: stubs.am.in Makefile.am + $(AM_V_GEN)$(multigen) -g $(srcdir)/stubs.am.in $(srcdir)/stubs.am \ + descr,hname,base="$(STUBS_HDR)" cname="$(STUBS_SRC)" ## Initialize lists of known classes. ALL_CIPHERS = $(CIPHER_MODES) ALL_HASHES = $(HASHES) ALL_MACS = $(MAC_MODES) +## Stub headers and sources. +STUBS_HDR = +STUBS_SRC = + ###-------------------------------------------------------------------------- ### Block ciphers. @@ -191,6 +204,7 @@ BLKCS += safer safersk libsymm_la_SOURCES += $(precomp)/safer-tab.c PRECOMPS += $(precomp)/safer-tab.c PRECOMP_PROGS += safer-mktab +STUBS_HDR += SAFER-SK,safersk,safer if !CROSS_COMPILING $(precomp)/safer-tab.c: $(AM_V_at)$(MKDIR_P) $(precomp) @@ -297,6 +311,8 @@ HASHES += sha ## The National Security Agency's `SHA-2' suite. HASHES += sha224 sha256 HASHES += sha384 sha512 +STUBS_HDR += SHA-224,sha224,sha256 +STUBS_HDR += SHA-384,sha384,sha512 ## Anderson and Biham's `Tiger' hash function. HASHES += tiger @@ -316,6 +332,7 @@ HASHES += whirlpool whirlpool256 libsymm_la_SOURCES += $(precomp)/whirlpool-tab.c PRECOMPS += $(precomp)/whirlpool-tab.c PRECOMP_PROGS += whirlpool-mktab +STUBS_HDR += Whirlpool-256,whirlpool256,whirlpool if !CROSS_COMPILING $(precomp)/whirlpool-tab.c: $(AM_V_at)$(MKDIR_P) $(precomp) @@ -391,6 +408,27 @@ pkginclude_HEADERS += $(GENMODES_H) $(GENMODES_H): modes/gen-stamp ###-------------------------------------------------------------------------- +### Autogenerated stub headers. + +## The master stamp file. +EXTRA_DIST += stub.h.in +EXTRA_DIST += stubs.gen-stamp +MAINTAINERCLEANFILES += stubs.gen-stamp +stubs.gen-stamp: Makefile.am + $(AM_V_at)$(MKDIR_P) $(srcdir)/stubs + $(AM_V_GEN)$(multigen) -g $(srcdir)/stub.h.in \ + $(srcdir)/@name.h descr,name,base="$(STUBS_HDR)" + $(AM_V_GEN)$(multigen) -g $(srcdir)/stub.c.in \ + $(srcdir)/@name.c name="$(STUBS_SRC)" + $(AM_V_at)touch $(srcdir)/stubs.gen-stamp + +## Generated stub headers. +BUILT_SOURCES += $(STUB_H) $(STUB_C) +MAINTAINERCLEANFILES += $(STUB_H) $(STUB_C) +pkginclude_HEADERS += $(STUB_H) +$(STUB_H) $(STUB_C): stubs.gen-stamp + +###-------------------------------------------------------------------------- ### Tables of classes for encryption, hashing, and message authentication. ## The skeleton for the class tables.