Move cast_asm_src file information to build.info files
authorRichard Levitte <levitte@openssl.org>
Sun, 16 Jun 2019 19:46:38 +0000 (21:46 +0200)
committerRichard Levitte <levitte@openssl.org>
Mon, 17 Jun 2019 14:08:52 +0000 (16:08 +0200)
Reviewed-by: Matt Caswell <matt@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/9166)

Configurations/00-base-templates.conf
Configurations/README
Configure
crypto/cast/build.info

index 1bd7541cc46d5b98262f8d981df8a5009e491bce..f67fbc21cdb3c9095a939b1cd813e0c05d98cc77 100644 (file)
@@ -14,7 +14,6 @@ my %targets=(
        thread_scheme   => "(unknown)", # Assume we don't know
        thread_defines  => [],
 
-       cast_asm_src    => "c_enc.c",
        rc4_asm_src     => "rc4_enc.c rc4_skey.c",
        rmd160_asm_src  => "",
        rc5_asm_src     => "rc5_enc.c",
@@ -161,7 +160,6 @@ my %targets=(
 
     x86_asm => {
        template        => 1,
-       cast_asm_src    => "cast-586.s",
        rc4_asm_src     => "rc4-586.s",
        rmd160_asm_src  => "rmd-586.s",
        rc5_asm_src     => "rc5-586.s",
index 0d6e5ee962da4973d946fa35c7f983de8c412c2c..773235efb499f7ca39df2d8f22b8ec2c5d7888f5 100644 (file)
@@ -240,9 +240,6 @@ In each table entry, the following keys are significant:
                                                 export vars as
                                                 accessor functions.
 
-        cast_asm_src    => Assembler implementation of core CAST
-                           functions.
-                           Defaults to 'c_enc.c'
         rc4_asm_src     => Assembler implementation of core RC4
                            functions.
                            Defaults to 'rc4_enc.c rc4_skey.c'
index 3e9fd6257a7368e455edc4f2e51970089ae11789..c0039169244fac168e9608907ac21d452fa0e51b 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1410,7 +1410,6 @@ unless ($disabled{asm}) {
     if ($target{rc4_asm_src} ne $table{DEFAULTS}->{rc4_asm_src}) {
         push @{$config{lib_defines}}, "RC4_ASM";
     }
-    $target{cast_asm_src}=$table{DEFAULTS}->{cast_asm_src} unless $disabled{pic}; # CAST assembler is not PIC
     if ($target{rmd160_asm_src}) {
         push @{$config{lib_defines}}, "RMD160_ASM";
     }
@@ -3358,7 +3357,6 @@ sub print_table_entry
         "loutflag",
         "ex_libs",
         "bn_ops",
-        "cast_asm_src",
         "rc4_asm_src",
         "rmd160_asm_src",
         "rc5_asm_src",
index b0f59f38002c32615fa9ec336dd2a66e7c52f901..97779c2250cf3a59188d1690b140f217d27aefc1 100644 (file)
@@ -1,6 +1,18 @@
 LIBS=../../libcrypto
-SOURCE[../../libcrypto]=\
-        c_skey.c c_ecb.c {- $target{cast_asm_src} -} c_cfb64.c c_ofb64.c
+
+$CASTASM=c_enc.c
+# CAST assembly source is not PIC
+IF[{- !$disabled{asm} && !$disabled{pic} -}]
+  $CASTASM_x86=cast-586.s
+
+  # Now that we have defined all the arch specific variables, use the
+  # appropriate one
+  IF[$CASTASM_{- $target{asm_arch} -}]
+    $CASTASM=$CASTASM_{- $target{asm_arch} -}
+  ENDIF
+ENDIF
+
+SOURCE[../../libcrypto]=c_skey.c c_ecb.c $CASTASM c_cfb64.c c_ofb64.c
 
 GENERATE[cast-586.s]=asm/cast-586.pl \
         $(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) $(PROCESSOR)