In a non-shared build, don't include the md5 object files in legacy provider
[openssl.git] / crypto / md5 / build.info
1 LIBS=../../libcrypto
2
3 $MD5ASM=
4 IF[{- !$disabled{asm} -}]
5   $MD5ASM_x86=md5-586.s
6   $MD5ASM_x86_64=md5-x86_64.s
7   $MD5ASM_sparcv9=md5-sparcv9.S
8
9   # Now that we have defined all the arch specific variables, use the
10   # appropriate one, and define the appropriate macros
11   IF[$MD5ASM_{- $target{asm_arch} -}]
12     $MD5ASM=$MD5ASM_{- $target{asm_arch} -}
13     $MD5DEF=MD5_ASM
14   ENDIF
15 ENDIF
16
17 $COMMON=md5_dgst.c md5_one.c md5_sha1.c $MD5ASM
18 SOURCE[../../libcrypto]=$COMMON
19 SOURCE[../../providers/libimplementations.a]=$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.
27 IF[{- !$disabled{dso} -}]
28   SOURCE[../../providers/liblegacy.a]=$COMMON
29 ENDIF
30
31 # Implementations are now spread across several libraries, so the defines
32 # need to be applied to all affected libraries and modules.
33 DEFINE[../../libcrypto]=$MD5DEF
34 DEFINE[../../providers/libimplementations.a]=$MD5DEF
35 DEFINE[../../providers/liblegacy.a]=$MD5DEF
36
37 GENERATE[md5-586.s]=asm/md5-586.pl
38
39 GENERATE[md5-x86_64.s]=asm/md5-x86_64.pl
40
41 GENERATE[md5-sparcv9.S]=asm/md5-sparcv9.pl
42 INCLUDE[md5-sparcv9.o]=..