thread_scheme => "(unknown)", # Assume we don't know
thread_defines => [],
- cmll_asm_src => "camellia.c cmll_misc.c cmll_cbc.c",
modes_asm_src => "",
padlock_asm_src => "",
chacha_asm_src => "chacha_enc.c",
x86_asm => {
template => 1,
- cmll_asm_src => "cmll-x86.s",
modes_asm_src => "ghash-x86.s",
padlock_asm_src => "e_padlock-x86.s",
chacha_asm_src => "chacha-x86.s",
},
x86_64_asm => {
template => 1,
- cmll_asm_src => "cmll-x86_64.s cmll_misc.c",
modes_asm_src => "ghash-x86_64.s aesni-gcm-x86_64.s",
padlock_asm_src => "e_padlock-x86_64.s",
chacha_asm_src => "chacha-x86_64.s",
},
sparcv9_asm => {
template => 1,
- cmll_asm_src => "camellia.c cmll_misc.c cmll_cbc.c cmllt4-sparcv9.S",
modes_asm_src => "ghash-sparcv9.S",
poly1305_asm_src=> "poly1305-sparcv9.S",
},
export vars as
accessor functions.
- cmll_asm_src => Assembler implementation of core CAMELLIA
- functions.
- Defaults to 'camellia.c cmll_misc.c cmll_cbc.c'
modes_asm_src => Assembler implementation of cipher modes,
currently the functions gcm_gmult_4bit and
gcm_ghash_4bit.
LIBS=../../libcrypto
-SOURCE[../../libcrypto]=\
- cmll_ecb.c cmll_ofb.c cmll_cfb.c cmll_ctr.c \
- {- $target{cmll_asm_src} -}
+
+$CMLLASM=camellia.c cmll_misc.c cmll_cbc.c
+IF[{- !$disabled{asm} -}]
+ $CMLLASM_x86=cmll-x86.s
+ $CMLLASM_x86_64=cmll-x86_64.s cmll_misc.c
+ $CMLLASM_sparcv9=camellia.c cmll_misc.c cmll_cbc.c cmllt4-sparcv9.S
+
+ # Now that we have defined all the arch specific variables, use the
+ # appropriate one
+ IF[$CMLLASM_{- $target{asm_arch} -}]
+ $CMLLASM=$CMLLASM_{- $target{asm_arch} -}
+ ENDIF
+ENDIF
+
+SOURCE[../../libcrypto]=cmll_ecb.c cmll_ofb.c cmll_cfb.c cmll_ctr.c $CMLLASM
GENERATE[cmll-x86.s]=asm/cmll-x86.pl \
$(PERLASM_SCHEME) $(LIB_CFLAGS) $(LIB_CPPFLAGS) \