]>
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 | |
9968c775 | 17 | $UPLINKSRC_x86=$UPLINKSRC_common uplink-x86.S |
989b2ad7 RL |
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' -}] | |
9968c775 | 30 | $CPUIDASM_x86=x86cpuid.S |
6e1ba472 RL |
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 | ||
360f6dcc HB |
54 | $CPUIDASM_riscv64=riscvcap.c riscv64cpuid.s |
55 | ||
6e1ba472 RL |
56 | # Now that we have defined all the arch specific variables, use the |
57 | # appropriate one, and define the appropriate macros | |
58 | IF[$CPUIDASM_{- $target{asm_arch} -}] | |
59 | $CPUIDASM=$CPUIDASM_{- $target{asm_arch} -} | |
60 | $CPUIDDEF=OPENSSL_CPUID_OBJ | |
61 | ENDIF | |
62 | ENDIF | |
63 | ||
ef83daf4 RL |
64 | # CPUID support. We need to add that explicitly in every shared library and |
65 | # provider module that uses it. ctype.c is included here because the CPUID | |
66 | # uses functions from there to parse magic environment variables. | |
67 | $CPUID_COMMON=$CPUIDASM cpuid.c ctype.c | |
68 | INCLUDE[cpuid.o]=.. | |
69 | ||
70 | SOURCE[../libcrypto]=$CPUID_COMMON | |
71 | DEFINE[../libcrypto]=$CPUIDDEF | |
5ad3e6c5 RL |
72 | SOURCE[../providers/libfips.a]=$CPUID_COMMON |
73 | DEFINE[../providers/libfips.a]=$CPUIDDEF | |
ef83daf4 RL |
74 | # We only need to include the CPUID stuff in the legacy provider when it's a |
75 | # separate module and it's dynamically linked with libcrypto. Otherwise, it | |
76 | # already gets everything that the static libcrypto.a has, and doesn't need it | |
77 | # added again. | |
78 | IF[{- !$disabled{module} && !$disabled{shared} -}] | |
7ee992a5 MC |
79 | SOURCE[../providers/legacy]=$CPUID_COMMON |
80 | DEFINE[../providers/legacy]=$CPUIDDEF | |
ef83daf4 RL |
81 | ENDIF |
82 | ||
83 | # Implementations are now spread across several libraries, so the CPUID define | |
84 | # need to be applied to all affected libraries and modules. | |
ef83daf4 | 85 | DEFINE[../providers/libcommon.a]=$CPUIDDEF |
c7978e50 | 86 | DEFINE[../providers/libdefault.a]=$CPUIDDEF |
ef83daf4 | 87 | |
4c2883a9 | 88 | # The Core |
a883c02f | 89 | $CORE_COMMON=provider_core.c provider_predefined.c \ |
47c239c6 | 90 | core_fetch.c core_algorithm.c core_namemap.c self_test_core.c |
4c2883a9 | 91 | |
47c239c6 | 92 | SOURCE[../libcrypto]=$CORE_COMMON provider_conf.c |
dec95d75 | 93 | SOURCE[../providers/libfips.a]=$CORE_COMMON |
3593266d | 94 | |
4c2883a9 | 95 | # Central utilities |
07c244f0 | 96 | $UTIL_COMMON=\ |
246a1f3d | 97 | cryptlib.c params.c params_from_text.c bsearch.c ex_data.c o_str.c \ |
ef83daf4 RL |
98 | threads_pthread.c threads_win.c threads_none.c initthread.c \ |
99 | context.c sparse_array.c asn1_dsa.c packet.c param_build.c \ | |
416d0a63 HL |
100 | param_build_set.c der_writer.c threads_lib.c params_dup.c \ |
101 | quic_vlint.c | |
9efa0ae0 | 102 | |
07c244f0 | 103 | SOURCE[../libcrypto]=$UTIL_COMMON \ |
742ccab3 | 104 | mem.c mem_sec.c \ |
b60cba3c | 105 | cversion.c info.c cpt_err.c ebcdic.c uid.c o_time.c o_dir.c \ |
f12a5690 | 106 | o_fopen.c getenv.c o_init.c init.c trace.c provider.c provider_child.c \ |
50360c1a | 107 | punycode.c passphrase.c |
dec95d75 | 108 | SOURCE[../providers/libfips.a]=$UTIL_COMMON |
07c244f0 | 109 | |
ef83daf4 RL |
110 | SOURCE[../libcrypto]=$UPLINKSRC |
111 | DEFINE[../libcrypto]=$UPLINKDEF | |
9efa0ae0 | 112 | |
387bbce4 | 113 | DEPEND[info.o]=buildinf.h |
777a2882 | 114 | DEPEND[cversion.o]=buildinf.h |
58d6be5b | 115 | GENERATE[buildinf.h]=../util/mkbuildinf.pl "$(CC) $(LIB_CFLAGS) $(CPPFLAGS_Q)" "$(PLATFORM)" |
567a9e6f | 116 | |
9968c775 | 117 | GENERATE[uplink-x86.S]=../ms/uplink-x86.pl |
a1c8befd RL |
118 | GENERATE[uplink-x86_64.s]=../ms/uplink-x86_64.pl |
119 | GENERATE[uplink-ia64.s]=../ms/uplink-ia64.pl | |
e84193e4 | 120 | |
9968c775 | 121 | GENERATE[x86cpuid.S]=x86cpuid.pl |
0a4edb93 | 122 | DEPEND[x86cpuid.s]=perlasm/x86asm.pl |
567a9e6f | 123 | |
a1c8befd | 124 | GENERATE[x86_64cpuid.s]=x86_64cpuid.pl |
567a9e6f | 125 | |
0a4edb93 | 126 | GENERATE[ia64cpuid.s]=ia64cpuid.S |
a1c8befd RL |
127 | GENERATE[ppccpuid.s]=ppccpuid.pl |
128 | GENERATE[pariscid.s]=pariscid.pl | |
0a4edb93 | 129 | GENERATE[alphacpuid.s]=alphacpuid.pl |
a1c8befd | 130 | GENERATE[arm64cpuid.S]=arm64cpuid.pl |
ee619197 | 131 | INCLUDE[arm64cpuid.o]=. |
a1c8befd | 132 | GENERATE[armv4cpuid.S]=armv4cpuid.pl |
ee619197 | 133 | INCLUDE[armv4cpuid.o]=. |
a1c8befd | 134 | GENERATE[s390xcpuid.S]=s390xcpuid.pl |
96530eea | 135 | INCLUDE[s390xcpuid.o]=. |
360f6dcc | 136 | GENERATE[riscv64cpuid.s]=riscv64cpuid.pl |
84af71a9 | 137 | |
5fee3fe2 | 138 | IF[{- $config{target} =~ /^(?:Cygwin|mingw|VC-|BC-)/ -}] |
84af71a9 RL |
139 | SHARED_SOURCE[../libcrypto]=dllmain.c |
140 | ENDIF |