]>
Commit | Line | Data |
---|---|---|
75d47db4 RL |
1 | # Note that these directories are filtered in Configure. Look for %skipdir |
2 | # there for further explanations. | |
878dc8dd | 3 | SUBDIRS=objects buffer bio stack lhash rand evp asn1 pem x509 conf \ |
7c6a0d90 | 4 | txt_db pkcs7 pkcs12 ui kdf store property \ |
8c77d45a | 5 | md2 md4 md5 sha mdc2 hmac ripemd whrlpool poly1305 \ |
9654924f RL |
6 | siphash sm3 des aes rc2 rc4 rc5 idea aria bf cast camellia \ |
7 | seed sm4 chacha modes bn ec rsa dsa dh sm2 dso engine \ | |
ece9304c | 8 | err comp http ocsp cms ts srp cmac ct async ess crmf cmp encode_decode \ |
dc8de3e6 | 9 | ffc |
9654924f | 10 | |
777a2882 | 11 | LIBS=../libcrypto |
989b2ad7 RL |
12 | |
13 | $UPLINKSRC= | |
14 | $UPLINKDEF= | |
15 | IF[{- !$disabled{uplink} -}] | |
16 | $UPLINKSRC_common=../ms/uplink.c | |
17 | $UPLINKSRC_x86=$UPLINKSRC_common uplink-x86.s | |
18 | $UPLINKSRC_x86_64=$UPLINKSRC_common uplink-x86_64.s | |
19 | $UPLINKSRC_ia64=$UPLINKSRC_common uplink-ia64.s | |
20 | ||
21 | IF[$UPLINKSRC_{- $target{uplink_arch} -}] | |
22 | $UPLINKSRC=$UPLINKSRC_{- $target{uplink_arch} -} | |
23 | $UPLINKDEF=OPENSSL_USE_APPLINK | |
24 | ENDIF | |
25 | ENDIF | |
26 | ||
6e1ba472 RL |
27 | $CPUIDASM=mem_clr.c |
28 | $CPUIDDEF= | |
29 | IF[{- !$disabled{asm} && $config{processor} ne '386' -}] | |
30 | $CPUIDASM_x86=x86cpuid.s | |
31 | ||
32 | $CPUIDASM_x86_64=x86_64cpuid.s | |
33 | ||
34 | $CPUIDASM_ia64=ia64cpuid.s | |
35 | ||
36 | $CPUIDASM_sparcv9=sparcv9cap.c sparccpuid.S | |
37 | ||
38 | $CPUIDASM_alpha=alphacpuid.s | |
39 | ||
40 | $CPUIDASM_s390x=s390xcap.c s390xcpuid.S | |
41 | ||
42 | $CPUIDASM_armv4=armcap.c armv4cpuid.S | |
43 | ||
44 | $CPUIDASM_aarch64=armcap.c arm64cpuid.S | |
45 | ||
46 | $CPUIDASM_parisc11=pariscid.s | |
47 | $CPUIDASM_parisc20_64=$CPUIDASM_parisc11 | |
48 | ||
49 | $CPUIDASM_ppc32=ppccpuid.s ppccap.c | |
50 | $CPUIDASM_ppc64=$CPUIDASM_ppc32 | |
51 | ||
52 | $CPUIDASM_c64xplus=c64xpluscpuid.s | |
53 | ||
54 | # Now that we have defined all the arch specific variables, use the | |
55 | # appropriate one, and define the appropriate macros | |
56 | IF[$CPUIDASM_{- $target{asm_arch} -}] | |
57 | $CPUIDASM=$CPUIDASM_{- $target{asm_arch} -} | |
58 | $CPUIDDEF=OPENSSL_CPUID_OBJ | |
59 | ENDIF | |
60 | ENDIF | |
61 | ||
ef83daf4 RL |
62 | # CPUID support. We need to add that explicitly in every shared library and |
63 | # provider module that uses it. ctype.c is included here because the CPUID | |
64 | # uses functions from there to parse magic environment variables. | |
65 | $CPUID_COMMON=$CPUIDASM cpuid.c ctype.c | |
66 | INCLUDE[cpuid.o]=.. | |
67 | ||
68 | SOURCE[../libcrypto]=$CPUID_COMMON | |
69 | DEFINE[../libcrypto]=$CPUIDDEF | |
5ad3e6c5 RL |
70 | SOURCE[../providers/libfips.a]=$CPUID_COMMON |
71 | DEFINE[../providers/libfips.a]=$CPUIDDEF | |
ef83daf4 RL |
72 | # We only need to include the CPUID stuff in the legacy provider when it's a |
73 | # separate module and it's dynamically linked with libcrypto. Otherwise, it | |
74 | # already gets everything that the static libcrypto.a has, and doesn't need it | |
75 | # added again. | |
76 | IF[{- !$disabled{module} && !$disabled{shared} -}] | |
77 | SOURCE[../providers/liblegacy.a]=$CPUID_COMMON | |
78 | DEFINE[../providers/liblegacy.a]=$CPUIDDEF | |
79 | ENDIF | |
80 | ||
81 | # Implementations are now spread across several libraries, so the CPUID define | |
82 | # need to be applied to all affected libraries and modules. | |
ef83daf4 RL |
83 | DEFINE[../providers/libcommon.a]=$CPUIDDEF |
84 | ||
4c2883a9 | 85 | # The Core |
a883c02f | 86 | $CORE_COMMON=provider_core.c provider_predefined.c \ |
47c239c6 | 87 | core_fetch.c core_algorithm.c core_namemap.c self_test_core.c |
4c2883a9 | 88 | |
47c239c6 | 89 | SOURCE[../libcrypto]=$CORE_COMMON provider_conf.c |
dec95d75 | 90 | SOURCE[../providers/libfips.a]=$CORE_COMMON |
3593266d | 91 | |
4c2883a9 | 92 | # Central utilities |
07c244f0 | 93 | $UTIL_COMMON=\ |
246a1f3d | 94 | cryptlib.c params.c params_from_text.c bsearch.c ex_data.c o_str.c \ |
ef83daf4 RL |
95 | threads_pthread.c threads_win.c threads_none.c initthread.c \ |
96 | context.c sparse_array.c asn1_dsa.c packet.c param_build.c \ | |
884314ca | 97 | param_build_set.c der_writer.c passphrase.c threads_lib.c params_dup.c |
9efa0ae0 | 98 | |
07c244f0 | 99 | SOURCE[../libcrypto]=$UTIL_COMMON \ |
742ccab3 | 100 | mem.c mem_sec.c \ |
b60cba3c | 101 | cversion.c info.c cpt_err.c ebcdic.c uid.c o_time.c o_dir.c \ |
31b069ec | 102 | o_fopen.c getenv.c o_init.c init.c trace.c provider.c \ |
ef83daf4 | 103 | punycode.c |
dec95d75 | 104 | SOURCE[../providers/libfips.a]=$UTIL_COMMON |
07c244f0 | 105 | |
ef83daf4 RL |
106 | SOURCE[../libcrypto]=$UPLINKSRC |
107 | DEFINE[../libcrypto]=$UPLINKDEF | |
9efa0ae0 | 108 | |
387bbce4 | 109 | DEPEND[info.o]=buildinf.h |
777a2882 | 110 | DEPEND[cversion.o]=buildinf.h |
58d6be5b | 111 | GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q)" "$(PLATFORM)" |
567a9e6f | 112 | |
a1c8befd RL |
113 | GENERATE[uplink-x86.s]=../ms/uplink-x86.pl |
114 | GENERATE[uplink-x86_64.s]=../ms/uplink-x86_64.pl | |
115 | GENERATE[uplink-ia64.s]=../ms/uplink-ia64.pl | |
e84193e4 | 116 | |
a1c8befd | 117 | GENERATE[x86cpuid.s]=x86cpuid.pl |
0a4edb93 | 118 | DEPEND[x86cpuid.s]=perlasm/x86asm.pl |
567a9e6f | 119 | |
a1c8befd | 120 | GENERATE[x86_64cpuid.s]=x86_64cpuid.pl |
567a9e6f | 121 | |
0a4edb93 | 122 | GENERATE[ia64cpuid.s]=ia64cpuid.S |
a1c8befd RL |
123 | GENERATE[ppccpuid.s]=ppccpuid.pl |
124 | GENERATE[pariscid.s]=pariscid.pl | |
0a4edb93 | 125 | GENERATE[alphacpuid.s]=alphacpuid.pl |
a1c8befd | 126 | GENERATE[arm64cpuid.S]=arm64cpuid.pl |
ee619197 | 127 | INCLUDE[arm64cpuid.o]=. |
a1c8befd | 128 | GENERATE[armv4cpuid.S]=armv4cpuid.pl |
ee619197 | 129 | INCLUDE[armv4cpuid.o]=. |
a1c8befd | 130 | GENERATE[s390xcpuid.S]=s390xcpuid.pl |
96530eea | 131 | INCLUDE[s390xcpuid.o]=. |
84af71a9 | 132 | |
5fee3fe2 | 133 | IF[{- $config{target} =~ /^(?:Cygwin|mingw|VC-|BC-)/ -}] |
84af71a9 RL |
134 | SHARED_SOURCE[../libcrypto]=dllmain.c |
135 | ENDIF |