symm/salsa20-arm-neon.S: Mark the final-permutation stores as word-aligned.
[catacomb] / symm / Makefile.am
index 7deed65..e56b2a4 100644 (file)
@@ -109,7 +109,7 @@ blowfish_mktab_CPPFLAGS      = $(AM_CPPFLAGS) -DQUIET
 if !CROSS_COMPILING
 $(precomp)/symm/blowfish-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) blowfish-mktab$e
+       $(AM_V_at)$(MAKE) blowfish-mktab$(EXEEXT)
        $(AM_V_GEN)./blowfish-mktab >$(precomp)/symm/blowfish-tab.c.new && \
                mv $(precomp)/symm/blowfish-tab.c.new \
                        $(precomp)/symm/blowfish-tab.c
@@ -118,7 +118,7 @@ endif
 ## Adams and Tavares' `CAST' block ciphers.
 BLKCS                  += cast128 cast256
 libsymm_la_SOURCES     += cast-s.c cast-sk.c cast-base.h
-cast256.$t: t/cast256
+cast256.t$(EXEEXT): t/cast256
 EXTRA_DIST             += t/cast256.aes
 MAINTAINERCLEANFILES   += $(srcdir)/t/cast256
 t/cast256: t/cast256.aes
@@ -136,7 +136,7 @@ PRECOMP_PROGS               += des-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/des-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) des-mktab$e
+       $(AM_V_at)$(MAKE) des-mktab$(EXEEXT)
        $(AM_V_GEN)./des-mktab >$(precomp)/symm/des-tab.c.new && \
                mv $(precomp)/symm/des-tab.c.new $(precomp)/symm/des-tab.c
 endif
@@ -156,11 +156,11 @@ PRECOMP_PROGS             += mars-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/mars-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) mars-mktab$e
+       $(AM_V_at)$(MAKE) mars-mktab$(EXEEXT)
        $(AM_V_GEN)./mars-mktab >$(precomp)/symm/mars-tab.c.new && \
                mv $(precomp)/symm/mars-tab.c.new $(precomp)/symm/mars-tab.c
 endif
-mars.$t: t/mars
+mars.t$(EXEEXT): t/mars
 EXTRA_DIST             += t/mars.aes
 MAINTAINERCLEANFILES   += $(srcdir)/t/mars
 t/mars: t/mars.aes
@@ -182,18 +182,24 @@ BLKCS                     += rc5
 ## Daemen and Rijmen's `Rijndael' block cipher, selected as AES.
 BLKCS                  += rijndael rijndael192 rijndael256
 libsymm_la_SOURCES     += rijndael-base.h rijndael-base.c
+if CPUFAM_X86
+libsymm_la_SOURCES     += rijndael-x86ish-aesni.S
+endif
+if CPUFAM_AMD64
+libsymm_la_SOURCES     += rijndael-x86ish-aesni.S
+endif
 nodist_libsymm_la_SOURCES += ../precomp/symm/rijndael-tab.c
 PRECOMPS               += $(precomp)/symm/rijndael-tab.c
 PRECOMP_PROGS          += rijndael-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/rijndael-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) rijndael-mktab$e
+       $(AM_V_at)$(MAKE) rijndael-mktab$(EXEEXT)
        $(AM_V_GEN)./rijndael-mktab >$(precomp)/symm/rijndael-tab.c.new && \
                mv $(precomp)/symm/rijndael-tab.c.new \
                        $(precomp)/symm/rijndael-tab.c
 endif
-rijndael.$t: t/rijndael
+rijndael.t$(EXEEXT): t/rijndael
 EXTRA_DIST             += t/rijndael.aes
 MAINTAINERCLEANFILES   += $(srcdir)/t/rijndael
 t/rijndael: t/rijndael.aes
@@ -211,7 +217,7 @@ STUBS_HDR           += SAFER-SK,safersk,safer
 if !CROSS_COMPILING
 $(precomp)/symm/safer-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) safer-mktab$e
+       $(AM_V_at)$(MAKE) safer-mktab$(EXEEXT)
        $(AM_V_GEN)./safer-mktab >$(precomp)/symm/safer-tab.c.new && \
                mv $(precomp)/symm/safer-tab.c.new \
                        $(precomp)/symm/safer-tab.c
@@ -222,7 +228,7 @@ BLKCS                       += serpent
 libsymm_la_SOURCES     += serpent-sbox.h
 check_PROGRAMS         += serpent-check
 TESTS                  += serpent-check
-serpent.$t: t/serpent
+serpent.t$(EXEEXT): t/serpent
 EXTRA_DIST             += t/serpent.aes
 MAINTAINERCLEANFILES   += $(srcdir)/t/serpent
 t/serpent: t/serpent.aes
@@ -244,7 +250,7 @@ PRECOMP_PROGS               += square-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/square-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) square-mktab$e
+       $(AM_V_at)$(MAKE) square-mktab$(EXEEXT)
        $(AM_V_GEN)./square-mktab >$(precomp)/symm/square-tab.c.new && \
                mv $(precomp)/symm/square-tab.c.new \
                        $(precomp)/symm/square-tab.c
@@ -262,12 +268,12 @@ PRECOMP_PROGS             += twofish-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/twofish-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) twofish-mktab$e
+       $(AM_V_at)$(MAKE) twofish-mktab$(EXEEXT)
        $(AM_V_GEN)./twofish-mktab >$(precomp)/symm/twofish-tab.c.new && \
                mv $(precomp)/symm/twofish-tab.c.new \
                        $(precomp)/symm/twofish-tab.c
 endif
-twofish.$t: t/twofish
+twofish.t$(EXEEXT): t/twofish
 EXTRA_DIST             += t/twofish.aes
 MAINTAINERCLEANFILES   += $(srcdir)/t/twofish
 t/twofish: t/twofish.aes
@@ -329,7 +335,7 @@ PRECOMP_PROGS               += tiger-mktab
 if !CROSS_COMPILING
 $(precomp)/symm/tiger-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) tiger-mktab$e
+       $(AM_V_at)$(MAKE) tiger-mktab$(EXEEXT)
        $(AM_V_GEN)./tiger-mktab >$(precomp)/symm/tiger-tab.c.new && \
                mv $(precomp)/symm/tiger-tab.c.new \
                        $(precomp)/symm/tiger-tab.c
@@ -344,7 +350,7 @@ STUBS_HDR           += Whirlpool-256,whirlpool256,whirlpool
 if !CROSS_COMPILING
 $(precomp)/symm/whirlpool-tab.c:
        $(AM_V_at)$(MKDIR_P) $(precomp)/symm
-       $(AM_V_at)$(MAKE) whirlpool-mktab$e
+       $(AM_V_at)$(MAKE) whirlpool-mktab$(EXEEXT)
        $(AM_V_GEN)./whirlpool-mktab \
                        >$(precomp)/symm/whirlpool-tab.c.new && \
                mv $(precomp)/symm/whirlpool-tab.c.new \
@@ -368,14 +374,14 @@ ALL_HASHES                += crc32=gcrc32
 ## Rivest's `RC4' stream cipher.
 pkginclude_HEADERS     += rc4.h
 libsymm_la_SOURCES     += rc4.c
-TESTS                  += rc4.$t
+TESTS                  += rc4.t$(EXEEXT)
 EXTRA_DIST             += t/rc4
 ALL_CIPHERS            += rc4
 
 ## Coppersmith and Rogaway's `SEAL' pseudorandom function.
 pkginclude_HEADERS     += seal.h
 libsymm_la_SOURCES     += seal.c
-TESTS                  += seal.$t
+TESTS                  += seal.t$(EXEEXT)
 EXTRA_DIST             += t/seal
 ALL_CIPHERS            += seal
 
@@ -388,7 +394,16 @@ ALL_CIPHERS                += seal
 EXTRA_DIST             += salsa20-tvconv
 pkginclude_HEADERS     += salsa20.h salsa20-core.h
 libsymm_la_SOURCES     += salsa20.c
-TESTS                  += salsa20.$t
+if CPUFAM_X86
+libsymm_la_SOURCES     += salsa20-x86ish-sse2.S
+endif
+if CPUFAM_AMD64
+libsymm_la_SOURCES     += salsa20-x86ish-sse2.S
+endif
+if CPUFAM_ARMEL
+libsymm_la_SOURCES     += salsa20-arm-neon.S
+endif
+TESTS                  += salsa20.t$(EXEEXT)
 ALL_CIPHERS            += salsa20 salsa2012 salsa208
 ALL_CIPHERS            += xsalsa20 xsalsa2012 xsalsa208
 STUBS_HDR              += Salsa20/12,salsa2012,salsa20
@@ -398,7 +413,7 @@ STUBS_HDR           += XSalsa20/12,xsalsa2012,salsa20
 STUBS_HDR              += XSalsa20/8,xsalsa208,salsa20
 EXTRA_DIST             += t/salsa20
 MAINTAINERCLEANFILES   += t/salsa20
-salsa20.$t: t/salsa20
+salsa20.t$(EXEEXT): t/salsa20
 SALSA20_ESTREAM_TV      = t/salsa20.estream
 SALSA20_ESTREAM_TV     += t/salsa2012.estream
 SALSA20_ESTREAM_TV     += t/salsa208.estream
@@ -414,7 +429,16 @@ t/salsa20: salsa20-tvconv t/salsa20.local $(SALSA20_ESTREAM_TV)
 ## Bernstein's `ChaCha' stream cipher.
 pkginclude_HEADERS     += chacha.h chacha-core.h
 libsymm_la_SOURCES     += chacha.c
-TESTS                  += chacha.$t
+if CPUFAM_X86
+libsymm_la_SOURCES     += chacha-x86ish-sse2.S
+endif
+if CPUFAM_AMD64
+libsymm_la_SOURCES     += chacha-x86ish-sse2.S
+endif
+if CPUFAM_ARMEL
+libsymm_la_SOURCES     += chacha-arm-neon.S
+endif
+TESTS                  += chacha.t$(EXEEXT)
 EXTRA_DIST             += t/chacha
 ALL_CIPHERS            += chacha20 chacha12 chacha8
 ALL_CIPHERS            += xchacha20 xchacha12 xchacha8
@@ -525,6 +549,6 @@ EXTRA_DIST          += $(SYMM_TEST_FILES)
 EXTRA_DIST             += daftstory.h
 
 ## Clean the debris from the `modes' subdirectory.
-CLEANFILES             += modes/*.to modes/*.$t
+CLEANFILES             += modes/*.to modes/*.t$(EXEEXT)
 
 ###----- That's all, folks --------------------------------------------------