1LIBS=../../libcrypto 2 3$MD5ASM= 4IF[{- !$disabled{asm} -}] 5 $MD5ASM_x86=md5-586.S 6 $MD5ASM_x86_64=md5-x86_64.s 7 $MD5ASM_aarch64=md5-aarch64.S 8 $MD5ASM_loongarch64=md5-loongarch64.S 9 $MD5ASM_sparcv9=md5-sparcv9.S 10 11 # Now that we have defined all the arch specific variables, use the 12 # appropriate one, and define the appropriate macros 13 IF[$MD5ASM_{- $target{asm_arch} -}] 14 $MD5ASM=$MD5ASM_{- $target{asm_arch} -} 15 $MD5DEF=MD5_ASM 16 ENDIF 17ENDIF 18 19$COMMON=md5_dgst.c md5_one.c md5_sha1.c $MD5ASM 20SOURCE[../../libcrypto]=$COMMON 21 22# A no-deprecated no-shared build ends up with double function definitions 23# without conditioning this on dso. The issue is MD5 which is needed in the 24# legacy provider for one of the spliced algorithms, however it resides in the 25# default provider. A no-deprecated build removes the external definition from 26# libcrypto and this means that the code needs to be in liblegacy. However, 27# when building without 'dso', liblegacy is included in libcrypto. 28IF[{- !$disabled{module} && !$disabled{shared} -}] 29 SOURCE[../../providers/liblegacy.a]=$COMMON 30ENDIF 31 32# Implementations are now spread across several libraries, so the defines 33# need to be applied to all affected libraries and modules. 34DEFINE[../../libcrypto]=$MD5DEF 35DEFINE[../../providers/liblegacy.a]=$MD5DEF 36 37GENERATE[md5-586.S]=asm/md5-586.pl 38 39GENERATE[md5-x86_64.s]=asm/md5-x86_64.pl 40GENERATE[md5-aarch64.S]=asm/md5-aarch64.pl 41INCLUDE[md5-aarch64.o]=.. 42 43GENERATE[md5-loongarch64.S]=asm/md5-loongarch64.pl 44INCLUDE[md5-loongarch64.o]=.. 45 46GENERATE[md5-sparcv9.S]=asm/md5-sparcv9.pl 47INCLUDE[md5-sparcv9.o]=.. 48