Skip to content

Commit d6ebd3c

Browse files
authored
[ssl] Expose mbedtls xml config for external use (#1133)
The exposed configuration can be used to solve issues with static linking
1 parent 01cfee2 commit d6ebd3c

File tree

5 files changed

+125
-113
lines changed

5 files changed

+125
-113
lines changed

project/thirdparty/mbedtls-files.xml

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,113 @@
1+
<xml>
2+
3+
<set name="MBEDTLS_DIR" value="${HXCPP}/project/thirdparty/mbedtls-2.28.2" />
4+
5+
<files id="mbedtls">
6+
<depend name="${this_dir}/mbedtls-files.xml" dateOnly="true" />
7+
<cache value="true" asLibrary="true" />
8+
9+
<include name="${this_dir}/mbedtls-flags.xml" />
10+
11+
<compilerflag value="-std=c99" unless="MSVC_VER" />
12+
13+
<file name="${MBEDTLS_DIR}/library/aes.c" />
14+
<file name="${MBEDTLS_DIR}/library/aesni.c" />
15+
<file name="${MBEDTLS_DIR}/library/arc4.c" />
16+
<file name="${MBEDTLS_DIR}/library/aria.c" />
17+
<file name="${MBEDTLS_DIR}/library/asn1parse.c" />
18+
<file name="${MBEDTLS_DIR}/library/asn1write.c" />
19+
<file name="${MBEDTLS_DIR}/library/base64.c" />
20+
<file name="${MBEDTLS_DIR}/library/bignum.c" />
21+
<file name="${MBEDTLS_DIR}/library/blowfish.c" />
22+
<file name="${MBEDTLS_DIR}/library/camellia.c" />
23+
<file name="${MBEDTLS_DIR}/library/ccm.c" />
24+
<file name="${MBEDTLS_DIR}/library/chacha20.c" />
25+
<file name="${MBEDTLS_DIR}/library/chachapoly.c" />
26+
<file name="${MBEDTLS_DIR}/library/cipher.c" />
27+
<file name="${MBEDTLS_DIR}/library/cipher_wrap.c" />
28+
<file name="${MBEDTLS_DIR}/library/constant_time.c" />
29+
<file name="${MBEDTLS_DIR}/library/cmac.c" />
30+
<file name="${MBEDTLS_DIR}/library/ctr_drbg.c" />
31+
<file name="${MBEDTLS_DIR}/library/des.c" />
32+
<file name="${MBEDTLS_DIR}/library/dhm.c" />
33+
<file name="${MBEDTLS_DIR}/library/ecdh.c" />
34+
<file name="${MBEDTLS_DIR}/library/ecdsa.c" />
35+
<file name="${MBEDTLS_DIR}/library/ecjpake.c" />
36+
<file name="${MBEDTLS_DIR}/library/ecp.c" />
37+
<file name="${MBEDTLS_DIR}/library/ecp_curves.c" />
38+
<file name="${MBEDTLS_DIR}/library/entropy.c" />
39+
<file name="${MBEDTLS_DIR}/library/entropy_poll.c" />
40+
<file name="${MBEDTLS_DIR}/library/error.c" />
41+
<file name="${MBEDTLS_DIR}/library/gcm.c" />
42+
<file name="${MBEDTLS_DIR}/library/havege.c" />
43+
<file name="${MBEDTLS_DIR}/library/hkdf.c" />
44+
<file name="${MBEDTLS_DIR}/library/hmac_drbg.c" />
45+
<file name="${MBEDTLS_DIR}/library/md.c" />
46+
<file name="${MBEDTLS_DIR}/library/md2.c" />
47+
<file name="${MBEDTLS_DIR}/library/md4.c" />
48+
<file name="${MBEDTLS_DIR}/library/md5.c" />
49+
<file name="${MBEDTLS_DIR}/library/memory_buffer_alloc.c" />
50+
<file name="${MBEDTLS_DIR}/library/mps_reader.c" />
51+
<file name="${MBEDTLS_DIR}/library/mps_trace.c" />
52+
<file name="${MBEDTLS_DIR}/library/nist_kw.c" />
53+
<file name="${MBEDTLS_DIR}/library/oid.c" />
54+
<file name="${MBEDTLS_DIR}/library/padlock.c" />
55+
<file name="${MBEDTLS_DIR}/library/pem.c" />
56+
<file name="${MBEDTLS_DIR}/library/pk.c" />
57+
<file name="${MBEDTLS_DIR}/library/pk_wrap.c" />
58+
<file name="${MBEDTLS_DIR}/library/pkcs12.c" />
59+
<file name="${MBEDTLS_DIR}/library/pkcs5.c" />
60+
<file name="${MBEDTLS_DIR}/library/pkparse.c" />
61+
<file name="${MBEDTLS_DIR}/library/pkwrite.c" />
62+
<file name="${MBEDTLS_DIR}/library/platform.c" />
63+
<file name="${MBEDTLS_DIR}/library/platform_util.c" />
64+
<file name="${MBEDTLS_DIR}/library/poly1305.c" />
65+
<file name="${MBEDTLS_DIR}/library/psa_crypto.c" />
66+
<file name="${MBEDTLS_DIR}/library/psa_crypto_aead.c" />
67+
<file name="${MBEDTLS_DIR}/library/psa_crypto_cipher.c" />
68+
<file name="${MBEDTLS_DIR}/library/psa_crypto_client.c" />
69+
<file name="${MBEDTLS_DIR}/library/psa_crypto_driver_wrappers.c" />
70+
<file name="${MBEDTLS_DIR}/library/psa_crypto_ecp.c" />
71+
<file name="${MBEDTLS_DIR}/library/psa_crypto_hash.c" />
72+
<file name="${MBEDTLS_DIR}/library/psa_crypto_mac.c" />
73+
<file name="${MBEDTLS_DIR}/library/psa_crypto_rsa.c" />
74+
<file name="${MBEDTLS_DIR}/library/psa_crypto_se.c" />
75+
<file name="${MBEDTLS_DIR}/library/psa_crypto_slot_management.c" />
76+
<file name="${MBEDTLS_DIR}/library/psa_crypto_storage.c" />
77+
<file name="${MBEDTLS_DIR}/library/psa_its_file.c" />
78+
<file name="${MBEDTLS_DIR}/library/ripemd160.c" />
79+
<file name="${MBEDTLS_DIR}/library/rsa.c" />
80+
<file name="${MBEDTLS_DIR}/library/rsa_internal.c" />
81+
<file name="${MBEDTLS_DIR}/library/sha1.c" />
82+
<file name="${MBEDTLS_DIR}/library/sha256.c" />
83+
<file name="${MBEDTLS_DIR}/library/sha512.c" />
84+
<file name="${MBEDTLS_DIR}/library/threading.c" />
85+
<file name="${MBEDTLS_DIR}/library/timing.c" />
86+
<file name="${MBEDTLS_DIR}/library/version.c" />
87+
<file name="${MBEDTLS_DIR}/library/version_features.c" />
88+
<file name="${MBEDTLS_DIR}/library/xtea.c" />
89+
90+
<file name="${MBEDTLS_DIR}/library/certs.c" />
91+
<file name="${MBEDTLS_DIR}/library/pkcs11.c" />
92+
<file name="${MBEDTLS_DIR}/library/x509.c" />
93+
<file name="${MBEDTLS_DIR}/library/x509_create.c" />
94+
<file name="${MBEDTLS_DIR}/library/x509_crl.c" />
95+
<file name="${MBEDTLS_DIR}/library/x509_crt.c" />
96+
<file name="${MBEDTLS_DIR}/library/x509_csr.c" />
97+
<file name="${MBEDTLS_DIR}/library/x509write_crt.c" />
98+
<file name="${MBEDTLS_DIR}/library/x509write_csr.c" />
99+
100+
<file name="${MBEDTLS_DIR}/library/debug.c" />
101+
<file name="${MBEDTLS_DIR}/library/net_sockets.c" />
102+
<file name="${MBEDTLS_DIR}/library/ssl_cache.c" />
103+
<file name="${MBEDTLS_DIR}/library/ssl_ciphersuites.c" />
104+
<file name="${MBEDTLS_DIR}/library/ssl_cli.c" />
105+
<file name="${MBEDTLS_DIR}/library/ssl_cookie.c" />
106+
<file name="${MBEDTLS_DIR}/library/ssl_msg.c" />
107+
<file name="${MBEDTLS_DIR}/library/ssl_srv.c" />
108+
<file name="${MBEDTLS_DIR}/library/ssl_ticket.c" />
109+
<file name="${MBEDTLS_DIR}/library/ssl_tls.c" />
110+
<file name="${MBEDTLS_DIR}/library/ssl_tls13_keys.c" />
111+
</files>
112+
113+
</xml>

project/thirdparty/mbedtls-flags.xml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<xml>
2+
3+
<depend name="${HXCPP}/project/thirdparty/mbedtls-flags.xml" dateOnly="true" />
4+
5+
<compilerflag value="-I${HXCPP}/project/thirdparty/mbedtls-2.28.2/include" />
6+
<compilerflag value="-I${HXCPP}/project/thirdparty/config/mbedtls/include" />
7+
<compilerflag value="-DMBEDTLS_USER_CONFIG_FILE=&lt;mbedtls_config.h&gt;" />
8+
9+
</xml>

src/hx/libs/ssl/Build.xml

Lines changed: 3 additions & 113 deletions
Original file line numberDiff line numberDiff line change
@@ -2,124 +2,14 @@
22

33
<pragma once="true" />
44

5-
<set name="MBEDTLS_DIR" value="${HXCPP}/project/thirdparty/mbedtls-2.28.2" />
6-
7-
<files id="mbedtls">
8-
<depend name="${this_dir}/Build.xml" dateOnly="true" />
9-
<cache value="true" asLibrary="true" />
10-
11-
<compilerflag value="-I${MBEDTLS_DIR}/include" />
12-
<compilerflag value="-I${this_dir}" />
13-
<compilerflag value="-std=c99" unless="MSVC_VER" />
14-
<compilerflag value="-DMBEDTLS_USER_CONFIG_FILE=&lt;mbedtls_config.h&gt;" />
15-
16-
<file name="${MBEDTLS_DIR}/library/aes.c" />
17-
<file name="${MBEDTLS_DIR}/library/aesni.c" />
18-
<file name="${MBEDTLS_DIR}/library/arc4.c" />
19-
<file name="${MBEDTLS_DIR}/library/aria.c" />
20-
<file name="${MBEDTLS_DIR}/library/asn1parse.c" />
21-
<file name="${MBEDTLS_DIR}/library/asn1write.c" />
22-
<file name="${MBEDTLS_DIR}/library/base64.c" />
23-
<file name="${MBEDTLS_DIR}/library/bignum.c" />
24-
<file name="${MBEDTLS_DIR}/library/blowfish.c" />
25-
<file name="${MBEDTLS_DIR}/library/camellia.c" />
26-
<file name="${MBEDTLS_DIR}/library/ccm.c" />
27-
<file name="${MBEDTLS_DIR}/library/chacha20.c" />
28-
<file name="${MBEDTLS_DIR}/library/chachapoly.c" />
29-
<file name="${MBEDTLS_DIR}/library/cipher.c" />
30-
<file name="${MBEDTLS_DIR}/library/cipher_wrap.c" />
31-
<file name="${MBEDTLS_DIR}/library/constant_time.c" />
32-
<file name="${MBEDTLS_DIR}/library/cmac.c" />
33-
<file name="${MBEDTLS_DIR}/library/ctr_drbg.c" />
34-
<file name="${MBEDTLS_DIR}/library/des.c" />
35-
<file name="${MBEDTLS_DIR}/library/dhm.c" />
36-
<file name="${MBEDTLS_DIR}/library/ecdh.c" />
37-
<file name="${MBEDTLS_DIR}/library/ecdsa.c" />
38-
<file name="${MBEDTLS_DIR}/library/ecjpake.c" />
39-
<file name="${MBEDTLS_DIR}/library/ecp.c" />
40-
<file name="${MBEDTLS_DIR}/library/ecp_curves.c" />
41-
<file name="${MBEDTLS_DIR}/library/entropy.c" />
42-
<file name="${MBEDTLS_DIR}/library/entropy_poll.c" />
43-
<file name="${MBEDTLS_DIR}/library/error.c" />
44-
<file name="${MBEDTLS_DIR}/library/gcm.c" />
45-
<file name="${MBEDTLS_DIR}/library/havege.c" />
46-
<file name="${MBEDTLS_DIR}/library/hkdf.c" />
47-
<file name="${MBEDTLS_DIR}/library/hmac_drbg.c" />
48-
<file name="${MBEDTLS_DIR}/library/md.c" />
49-
<file name="${MBEDTLS_DIR}/library/md2.c" />
50-
<file name="${MBEDTLS_DIR}/library/md4.c" />
51-
<file name="${MBEDTLS_DIR}/library/md5.c" />
52-
<file name="${MBEDTLS_DIR}/library/memory_buffer_alloc.c" />
53-
<file name="${MBEDTLS_DIR}/library/mps_reader.c" />
54-
<file name="${MBEDTLS_DIR}/library/mps_trace.c" />
55-
<file name="${MBEDTLS_DIR}/library/nist_kw.c" />
56-
<file name="${MBEDTLS_DIR}/library/oid.c" />
57-
<file name="${MBEDTLS_DIR}/library/padlock.c" />
58-
<file name="${MBEDTLS_DIR}/library/pem.c" />
59-
<file name="${MBEDTLS_DIR}/library/pk.c" />
60-
<file name="${MBEDTLS_DIR}/library/pk_wrap.c" />
61-
<file name="${MBEDTLS_DIR}/library/pkcs12.c" />
62-
<file name="${MBEDTLS_DIR}/library/pkcs5.c" />
63-
<file name="${MBEDTLS_DIR}/library/pkparse.c" />
64-
<file name="${MBEDTLS_DIR}/library/pkwrite.c" />
65-
<file name="${MBEDTLS_DIR}/library/platform.c" />
66-
<file name="${MBEDTLS_DIR}/library/platform_util.c" />
67-
<file name="${MBEDTLS_DIR}/library/poly1305.c" />
68-
<file name="${MBEDTLS_DIR}/library/psa_crypto.c" />
69-
<file name="${MBEDTLS_DIR}/library/psa_crypto_aead.c" />
70-
<file name="${MBEDTLS_DIR}/library/psa_crypto_cipher.c" />
71-
<file name="${MBEDTLS_DIR}/library/psa_crypto_client.c" />
72-
<file name="${MBEDTLS_DIR}/library/psa_crypto_driver_wrappers.c" />
73-
<file name="${MBEDTLS_DIR}/library/psa_crypto_ecp.c" />
74-
<file name="${MBEDTLS_DIR}/library/psa_crypto_hash.c" />
75-
<file name="${MBEDTLS_DIR}/library/psa_crypto_mac.c" />
76-
<file name="${MBEDTLS_DIR}/library/psa_crypto_rsa.c" />
77-
<file name="${MBEDTLS_DIR}/library/psa_crypto_se.c" />
78-
<file name="${MBEDTLS_DIR}/library/psa_crypto_slot_management.c" />
79-
<file name="${MBEDTLS_DIR}/library/psa_crypto_storage.c" />
80-
<file name="${MBEDTLS_DIR}/library/psa_its_file.c" />
81-
<file name="${MBEDTLS_DIR}/library/ripemd160.c" />
82-
<file name="${MBEDTLS_DIR}/library/rsa.c" />
83-
<file name="${MBEDTLS_DIR}/library/rsa_internal.c" />
84-
<file name="${MBEDTLS_DIR}/library/sha1.c" />
85-
<file name="${MBEDTLS_DIR}/library/sha256.c" />
86-
<file name="${MBEDTLS_DIR}/library/sha512.c" />
87-
<file name="${MBEDTLS_DIR}/library/threading.c" />
88-
<file name="${MBEDTLS_DIR}/library/timing.c" />
89-
<file name="${MBEDTLS_DIR}/library/version.c" />
90-
<file name="${MBEDTLS_DIR}/library/version_features.c" />
91-
<file name="${MBEDTLS_DIR}/library/xtea.c" />
92-
93-
<file name="${MBEDTLS_DIR}/library/certs.c" />
94-
<file name="${MBEDTLS_DIR}/library/pkcs11.c" />
95-
<file name="${MBEDTLS_DIR}/library/x509.c" />
96-
<file name="${MBEDTLS_DIR}/library/x509_create.c" />
97-
<file name="${MBEDTLS_DIR}/library/x509_crl.c" />
98-
<file name="${MBEDTLS_DIR}/library/x509_crt.c" />
99-
<file name="${MBEDTLS_DIR}/library/x509_csr.c" />
100-
<file name="${MBEDTLS_DIR}/library/x509write_crt.c" />
101-
<file name="${MBEDTLS_DIR}/library/x509write_csr.c" />
102-
103-
<file name="${MBEDTLS_DIR}/library/debug.c" />
104-
<file name="${MBEDTLS_DIR}/library/net_sockets.c" />
105-
<file name="${MBEDTLS_DIR}/library/ssl_cache.c" />
106-
<file name="${MBEDTLS_DIR}/library/ssl_ciphersuites.c" />
107-
<file name="${MBEDTLS_DIR}/library/ssl_cli.c" />
108-
<file name="${MBEDTLS_DIR}/library/ssl_cookie.c" />
109-
<file name="${MBEDTLS_DIR}/library/ssl_msg.c" />
110-
<file name="${MBEDTLS_DIR}/library/ssl_srv.c" />
111-
<file name="${MBEDTLS_DIR}/library/ssl_ticket.c" />
112-
<file name="${MBEDTLS_DIR}/library/ssl_tls.c" />
113-
<file name="${MBEDTLS_DIR}/library/ssl_tls13_keys.c" />
114-
</files>
5+
<include name="${HXCPP}/project/thirdparty/mbedtls-files.xml" />
1156

1167
<files id="hxcpp_ssl" >
1178
<depend files="hxcpp-depends"/>
1189
<depend name="${this_dir}/Build.xml" dateOnly="true" />
11910
<cache value="true" asLibrary="true" />
120-
<compilerflag value="-I${MBEDTLS_DIR}/include"/>
121-
<compilerflag value="-I${this_dir}"/>
122-
<compilerflag value="-DMBEDTLS_USER_CONFIG_FILE=&lt;mbedtls_config.h&gt;"/>
11+
12+
<include name="${HXCPP}/project/thirdparty/mbedtls-flags.xml" />
12313

12414
<file name="${this_dir}/SSL.cpp"/>
12515
</files>

0 commit comments

Comments
 (0)