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