summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Configurations/00-base-templates.conf8
-rw-r--r--Configurations/10-main.conf1
-rwxr-xr-xConfigure1
-rw-r--r--crypto/chacha/build.info27
4 files changed, 26 insertions, 11 deletions
diff --git a/Configurations/00-base-templates.conf b/Configurations/00-base-templates.conf
index 5c73ce35ad..5427af8a4b 100644
--- a/Configurations/00-base-templates.conf
+++ b/Configurations/00-base-templates.conf
@@ -15,7 +15,6 @@ my %targets=(
thread_defines => [],
padlock_asm_src => "",
- chacha_asm_src => "chacha_enc.c",
poly1305_asm_src => "",
keccak1600_asm_src => "keccak1600.c",
@@ -155,7 +154,6 @@ my %targets=(
x86_asm => {
template => 1,
padlock_asm_src => "e_padlock-x86.s",
- chacha_asm_src => "chacha-x86.s",
poly1305_asm_src=> "poly1305-x86.s",
},
x86_elf_asm => {
@@ -165,13 +163,11 @@ my %targets=(
x86_64_asm => {
template => 1,
padlock_asm_src => "e_padlock-x86_64.s",
- chacha_asm_src => "chacha-x86_64.s",
poly1305_asm_src=> "poly1305-x86_64.s",
keccak1600_asm_src => "keccak1600-x86_64.s",
},
ia64_asm => {
template => 1,
- chacha_asm_src => "chacha-ia64.S",
poly1305_asm_src=> "asm/poly1305-ia64.S",
},
sparcv9_asm => {
@@ -194,19 +190,16 @@ my %targets=(
},
s390x_asm => {
template => 1,
- chacha_asm_src => "chacha-s390x.S",
poly1305_asm_src=> "poly1305-s390x.S",
keccak1600_asm_src => "keccak1600-s390x.S",
},
armv4_asm => {
template => 1,
- chacha_asm_src => "chacha-armv4.S",
poly1305_asm_src=> "poly1305-armv4.S",
keccak1600_asm_src => "keccak1600-armv4.S",
},
aarch64_asm => {
template => 1,
- chacha_asm_src => "chacha-armv8.S",
poly1305_asm_src=> "poly1305-armv8.S",
keccak1600_asm_src => "keccak1600-armv8.S",
},
@@ -219,7 +212,6 @@ my %targets=(
},
ppc32_asm => {
template => 1,
- chacha_asm_src => "chacha-ppc.s",
poly1305_asm_src=> "poly1305-ppc.s poly1305-ppcfp.s",
},
ppc64_asm => {
diff --git a/Configurations/10-main.conf b/Configurations/10-main.conf
index 450fe0dcb8..69a3710f3c 100644
--- a/Configurations/10-main.conf
+++ b/Configurations/10-main.conf
@@ -949,7 +949,6 @@ my %targets = (
cppflags => combine("-DOPENSSL_SMALL_FOOTPRINT",
threads("-D_REENTRANT")),
bn_ops => "BN_LLONG",
- chacha_asm_src => "chacha-c64xplus.s",
poly1305_asm_src => "poly1305-c64xplus.s",
thread_scheme => "pthreads",
asm_arch => 'c64xplus',
diff --git a/Configure b/Configure
index c88cd45899..7f37d15c19 100755
--- a/Configure
+++ b/Configure
@@ -3342,7 +3342,6 @@ sub print_table_entry
"ex_libs",
"bn_ops",
"padlock_asm_src",
- "chacha_asm_src",
"poly1035_asm_src",
"thread_scheme",
"perlasm_scheme",
diff --git a/crypto/chacha/build.info b/crypto/chacha/build.info
index a7418265a2..e8eeaf0ce9 100644
--- a/crypto/chacha/build.info
+++ b/crypto/chacha/build.info
@@ -1,5 +1,30 @@
LIBS=../../libcrypto
-SOURCE[../../libcrypto]={- $target{chacha_asm_src} -}
+
+$CHACHAASM=chacha_enc.c
+IF[{- !$disabled{asm} -}]
+ $CHACHAASM_x86=chacha-x86.s
+ $CHACHAASM_x86_64=chacha-x86_64.s
+
+ $CHACHAASM_ia64=chacha-ia64.S
+
+ $CHACHAASM_s390x=chacha-s390x.S
+
+ $CHACHAASM_armv4=chacha-armv4.S
+ $CHACHAASM_aarch64=chacha-armv8.S
+
+ $CHACHAASM_ppc32=chacha-ppc.s
+ $CHACHAASM_ppc64=$CHACHAASM_ppc32
+
+ $CHACHAASM_c64xplus=chacha-c64xplus.s
+
+ # Now that we have defined all the arch specific variables, use the
+ # appropriate one
+ IF[$CHACHAASM_{- $target{asm_arch} -}]
+ $CHACHAASM=$CHACHAASM_{- $target{asm_arch} -}
+ ENDIF
+ENDIF
+
+SOURCE[../../libcrypto]=$CHACHAASM
GENERATE[chacha-x86.s]=asm/chacha-x86.pl \
$(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)