xref: /third_party/mbedtls/programs/Makefile (revision a8e1175b)
1a8e1175bSopenharmony_ciMBEDTLS_TEST_PATH = ../tests
2a8e1175bSopenharmony_ciinclude ../scripts/common.make
3a8e1175bSopenharmony_ci
4a8e1175bSopenharmony_ciifeq ($(shell uname -s),Linux)
5a8e1175bSopenharmony_ciDLOPEN_LDFLAGS ?= -ldl
6a8e1175bSopenharmony_cielse
7a8e1175bSopenharmony_ciDLOPEN_LDFLAGS ?=
8a8e1175bSopenharmony_ciendif
9a8e1175bSopenharmony_ci
10a8e1175bSopenharmony_ciifdef RECORD_PSA_STATUS_COVERAGE_LOG
11a8e1175bSopenharmony_ciLOCAL_CFLAGS += -Werror -DRECORD_PSA_STATUS_COVERAGE_LOG
12a8e1175bSopenharmony_ciendif
13a8e1175bSopenharmony_ciDEP=${MBEDLIBS} ${MBEDTLS_TEST_OBJS}
14a8e1175bSopenharmony_ci
15a8e1175bSopenharmony_ci# Only build the dlopen test in shared library builds, and not when building
16a8e1175bSopenharmony_ci# for Windows.
17a8e1175bSopenharmony_ciifdef BUILD_DLOPEN
18a8e1175bSopenharmony_ci# Don't override the value
19a8e1175bSopenharmony_cielse ifdef WINDOWS_BUILD
20a8e1175bSopenharmony_ciBUILD_DLOPEN =
21a8e1175bSopenharmony_cielse ifdef SHARED
22a8e1175bSopenharmony_ciBUILD_DLOPEN = y
23a8e1175bSopenharmony_cielse
24a8e1175bSopenharmony_ciBUILD_DLOPEN =
25a8e1175bSopenharmony_ciendif
26a8e1175bSopenharmony_ci
27a8e1175bSopenharmony_ci## The following assignment is the list of base names of applications that
28a8e1175bSopenharmony_ci## will be built on Windows. Extra Linux/Unix/POSIX-only applications can
29a8e1175bSopenharmony_ci## be declared by appending with `APPS += ...` afterwards.
30a8e1175bSopenharmony_ci## See the get_app_list function in scripts/generate_visualc_files.pl and
31a8e1175bSopenharmony_ci## make sure to check that it still works if you tweak the format here.
32a8e1175bSopenharmony_ciAPPS = \
33a8e1175bSopenharmony_ci	aes/crypt_and_hash \
34a8e1175bSopenharmony_ci	cipher/cipher_aead_demo \
35a8e1175bSopenharmony_ci	hash/generic_sum \
36a8e1175bSopenharmony_ci	hash/hello \
37a8e1175bSopenharmony_ci	hash/md_hmac_demo \
38a8e1175bSopenharmony_ci	pkey/dh_client \
39a8e1175bSopenharmony_ci	pkey/dh_genprime \
40a8e1175bSopenharmony_ci	pkey/dh_server \
41a8e1175bSopenharmony_ci	pkey/ecdh_curve25519 \
42a8e1175bSopenharmony_ci	pkey/ecdsa \
43a8e1175bSopenharmony_ci	pkey/gen_key \
44a8e1175bSopenharmony_ci	pkey/key_app \
45a8e1175bSopenharmony_ci	pkey/key_app_writer \
46a8e1175bSopenharmony_ci	pkey/mpi_demo \
47a8e1175bSopenharmony_ci	pkey/pk_decrypt \
48a8e1175bSopenharmony_ci	pkey/pk_encrypt \
49a8e1175bSopenharmony_ci	pkey/pk_sign \
50a8e1175bSopenharmony_ci	pkey/pk_verify \
51a8e1175bSopenharmony_ci	pkey/rsa_decrypt \
52a8e1175bSopenharmony_ci	pkey/rsa_encrypt \
53a8e1175bSopenharmony_ci	pkey/rsa_genkey \
54a8e1175bSopenharmony_ci	pkey/rsa_sign \
55a8e1175bSopenharmony_ci	pkey/rsa_sign_pss \
56a8e1175bSopenharmony_ci	pkey/rsa_verify \
57a8e1175bSopenharmony_ci	pkey/rsa_verify_pss \
58a8e1175bSopenharmony_ci	psa/aead_demo \
59a8e1175bSopenharmony_ci	psa/crypto_examples \
60a8e1175bSopenharmony_ci	psa/hmac_demo \
61a8e1175bSopenharmony_ci	psa/key_ladder_demo \
62a8e1175bSopenharmony_ci	psa/psa_constant_names \
63a8e1175bSopenharmony_ci	psa/psa_hash \
64a8e1175bSopenharmony_ci	random/gen_entropy \
65a8e1175bSopenharmony_ci	random/gen_random_ctr_drbg \
66a8e1175bSopenharmony_ci	ssl/dtls_client \
67a8e1175bSopenharmony_ci	ssl/dtls_server \
68a8e1175bSopenharmony_ci	ssl/mini_client \
69a8e1175bSopenharmony_ci	ssl/ssl_client1 \
70a8e1175bSopenharmony_ci	ssl/ssl_client2 \
71a8e1175bSopenharmony_ci	ssl/ssl_context_info \
72a8e1175bSopenharmony_ci	ssl/ssl_fork_server \
73a8e1175bSopenharmony_ci	ssl/ssl_mail_client \
74a8e1175bSopenharmony_ci	ssl/ssl_server \
75a8e1175bSopenharmony_ci	ssl/ssl_server2 \
76a8e1175bSopenharmony_ci	test/benchmark \
77a8e1175bSopenharmony_ci	test/metatest \
78a8e1175bSopenharmony_ci	test/query_compile_time_config \
79a8e1175bSopenharmony_ci	test/query_included_headers \
80a8e1175bSopenharmony_ci	test/selftest \
81a8e1175bSopenharmony_ci	test/udp_proxy \
82a8e1175bSopenharmony_ci	test/zeroize \
83a8e1175bSopenharmony_ci	util/pem2der \
84a8e1175bSopenharmony_ci	util/strerror \
85a8e1175bSopenharmony_ci	x509/cert_app \
86a8e1175bSopenharmony_ci	x509/cert_req \
87a8e1175bSopenharmony_ci	x509/cert_write \
88a8e1175bSopenharmony_ci	x509/crl_app \
89a8e1175bSopenharmony_ci	x509/load_roots \
90a8e1175bSopenharmony_ci	x509/req_app \
91a8e1175bSopenharmony_ci# End of APPS
92a8e1175bSopenharmony_ci
93a8e1175bSopenharmony_ciifeq ($(THREADING),pthread)
94a8e1175bSopenharmony_ciAPPS +=	ssl/ssl_pthread_server
95a8e1175bSopenharmony_ciendif
96a8e1175bSopenharmony_ci
97a8e1175bSopenharmony_ciifdef BUILD_DLOPEN
98a8e1175bSopenharmony_ciAPPS +=	test/dlopen
99a8e1175bSopenharmony_ciendif
100a8e1175bSopenharmony_ci
101a8e1175bSopenharmony_ciifdef TEST_CPP
102a8e1175bSopenharmony_ciAPPS += test/cpp_dummy_build
103a8e1175bSopenharmony_ciendif
104a8e1175bSopenharmony_ci
105a8e1175bSopenharmony_ciEXES = $(patsubst %,%$(EXEXT),$(APPS))
106a8e1175bSopenharmony_ci
107a8e1175bSopenharmony_ci.SILENT:
108a8e1175bSopenharmony_ci
109a8e1175bSopenharmony_ci.PHONY: all clean list fuzz
110a8e1175bSopenharmony_ci
111a8e1175bSopenharmony_ciall: $(EXES)
112a8e1175bSopenharmony_ciifndef WINDOWS
113a8e1175bSopenharmony_ci# APPS doesn't include the fuzzing programs, which aren't "normal"
114a8e1175bSopenharmony_ci# sample or test programs, and don't build with MSVC which is
115a8e1175bSopenharmony_ci# warning about fopen
116a8e1175bSopenharmony_ciall: fuzz
117a8e1175bSopenharmony_ciendif
118a8e1175bSopenharmony_ci
119a8e1175bSopenharmony_cifuzz: ${MBEDTLS_TEST_OBJS}
120a8e1175bSopenharmony_ci	$(MAKE) -C fuzz
121a8e1175bSopenharmony_ci
122a8e1175bSopenharmony_ci${MBEDTLS_TEST_OBJS}:
123a8e1175bSopenharmony_ci	$(MAKE) -C ../tests mbedtls_test
124a8e1175bSopenharmony_ci
125a8e1175bSopenharmony_ci.PHONY: generated_files
126a8e1175bSopenharmony_ciGENERATED_FILES = psa/psa_constant_names_generated.c test/query_config.c
127a8e1175bSopenharmony_cigenerated_files: $(GENERATED_FILES)
128a8e1175bSopenharmony_ci
129a8e1175bSopenharmony_cipsa/psa_constant_names_generated.c: $(gen_file_dep) ../scripts/generate_psa_constants.py
130a8e1175bSopenharmony_cipsa/psa_constant_names_generated.c: $(gen_file_dep) ../include/psa/crypto_values.h
131a8e1175bSopenharmony_cipsa/psa_constant_names_generated.c: $(gen_file_dep) ../include/psa/crypto_extra.h
132a8e1175bSopenharmony_cipsa/psa_constant_names_generated.c: $(gen_file_dep) ../tests/suites/test_suite_psa_crypto_metadata.data
133a8e1175bSopenharmony_cipsa/psa_constant_names_generated.c:
134a8e1175bSopenharmony_ci	echo "  Gen   $@"
135a8e1175bSopenharmony_ci	$(PYTHON) ../scripts/generate_psa_constants.py
136a8e1175bSopenharmony_ci
137a8e1175bSopenharmony_citest/query_config.c: $(gen_file_dep) ../scripts/generate_query_config.pl
138a8e1175bSopenharmony_ci## The generated file only depends on the options that are present in mbedtls_config.h,
139a8e1175bSopenharmony_ci## not on which options are set. To avoid regenerating this file all the time
140a8e1175bSopenharmony_ci## when switching between configurations, don't declare mbedtls_config.h as a
141a8e1175bSopenharmony_ci## dependency. Remove this file from your working tree if you've just added or
142a8e1175bSopenharmony_ci## removed an option in mbedtls_config.h.
143a8e1175bSopenharmony_ci#test/query_config.c: $(gen_file_dep) ../include/mbedtls/mbedtls_config.h
144a8e1175bSopenharmony_citest/query_config.c: $(gen_file_dep) ../scripts/data_files/query_config.fmt
145a8e1175bSopenharmony_citest/query_config.c:
146a8e1175bSopenharmony_ci	echo "  Gen   $@"
147a8e1175bSopenharmony_ci	$(PERL) ../scripts/generate_query_config.pl
148a8e1175bSopenharmony_ci
149a8e1175bSopenharmony_ciaes/crypt_and_hash$(EXEXT): aes/crypt_and_hash.c $(DEP)
150a8e1175bSopenharmony_ci	echo "  CC    aes/crypt_and_hash.c"
151a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) aes/crypt_and_hash.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
152a8e1175bSopenharmony_ci
153a8e1175bSopenharmony_cicipher/cipher_aead_demo$(EXEXT): cipher/cipher_aead_demo.c $(DEP)
154a8e1175bSopenharmony_ci	echo "  CC    cipher/cipher_aead_demo.c"
155a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) cipher/cipher_aead_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
156a8e1175bSopenharmony_ci
157a8e1175bSopenharmony_cihash/generic_sum$(EXEXT): hash/generic_sum.c $(DEP)
158a8e1175bSopenharmony_ci	echo "  CC    hash/generic_sum.c"
159a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) hash/generic_sum.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
160a8e1175bSopenharmony_ci
161a8e1175bSopenharmony_cihash/hello$(EXEXT): hash/hello.c $(DEP)
162a8e1175bSopenharmony_ci	echo "  CC    hash/hello.c"
163a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) hash/hello.c       $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
164a8e1175bSopenharmony_ci
165a8e1175bSopenharmony_cihash/md_hmac_demo$(EXEXT): hash/md_hmac_demo.c $(DEP)
166a8e1175bSopenharmony_ci	echo "  CC    hash/md_hmac_demo.c"
167a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) hash/md_hmac_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
168a8e1175bSopenharmony_ci
169a8e1175bSopenharmony_cipkey/dh_client$(EXEXT): pkey/dh_client.c $(DEP)
170a8e1175bSopenharmony_ci	echo "  CC    pkey/dh_client.c"
171a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/dh_client.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
172a8e1175bSopenharmony_ci
173a8e1175bSopenharmony_cipkey/dh_genprime$(EXEXT): pkey/dh_genprime.c $(DEP)
174a8e1175bSopenharmony_ci	echo "  CC    pkey/dh_genprime.c"
175a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/dh_genprime.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
176a8e1175bSopenharmony_ci
177a8e1175bSopenharmony_cipkey/dh_server$(EXEXT): pkey/dh_server.c $(DEP)
178a8e1175bSopenharmony_ci	echo "  CC    pkey/dh_server.c"
179a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/dh_server.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
180a8e1175bSopenharmony_ci
181a8e1175bSopenharmony_cipkey/ecdh_curve25519$(EXEXT): pkey/ecdh_curve25519.c $(DEP)
182a8e1175bSopenharmony_ci	echo "  CC    pkey/ecdh_curve25519.c"
183a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/ecdh_curve25519.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
184a8e1175bSopenharmony_ci
185a8e1175bSopenharmony_cipkey/ecdsa$(EXEXT): pkey/ecdsa.c $(DEP)
186a8e1175bSopenharmony_ci	echo "  CC    pkey/ecdsa.c"
187a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/ecdsa.c       $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
188a8e1175bSopenharmony_ci
189a8e1175bSopenharmony_cipkey/gen_key$(EXEXT): pkey/gen_key.c $(DEP)
190a8e1175bSopenharmony_ci	echo "  CC    pkey/gen_key.c"
191a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/gen_key.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
192a8e1175bSopenharmony_ci
193a8e1175bSopenharmony_cipkey/key_app$(EXEXT): pkey/key_app.c $(DEP)
194a8e1175bSopenharmony_ci	echo "  CC    pkey/key_app.c"
195a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/key_app.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
196a8e1175bSopenharmony_ci
197a8e1175bSopenharmony_cipkey/key_app_writer$(EXEXT): pkey/key_app_writer.c $(DEP)
198a8e1175bSopenharmony_ci	echo "  CC    pkey/key_app_writer.c"
199a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/key_app_writer.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
200a8e1175bSopenharmony_ci
201a8e1175bSopenharmony_cipkey/mpi_demo$(EXEXT): pkey/mpi_demo.c $(DEP)
202a8e1175bSopenharmony_ci	echo "  CC    pkey/mpi_demo.c"
203a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/mpi_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
204a8e1175bSopenharmony_ci
205a8e1175bSopenharmony_cipkey/pk_decrypt$(EXEXT): pkey/pk_decrypt.c $(DEP)
206a8e1175bSopenharmony_ci	echo "  CC    pkey/pk_decrypt.c"
207a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_decrypt.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
208a8e1175bSopenharmony_ci
209a8e1175bSopenharmony_cipkey/pk_encrypt$(EXEXT): pkey/pk_encrypt.c $(DEP)
210a8e1175bSopenharmony_ci	echo "  CC    pkey/pk_encrypt.c"
211a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_encrypt.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
212a8e1175bSopenharmony_ci
213a8e1175bSopenharmony_cipkey/pk_sign$(EXEXT): pkey/pk_sign.c $(DEP)
214a8e1175bSopenharmony_ci	echo "  CC    pkey/pk_sign.c"
215a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_sign.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
216a8e1175bSopenharmony_ci
217a8e1175bSopenharmony_cipkey/pk_verify$(EXEXT): pkey/pk_verify.c $(DEP)
218a8e1175bSopenharmony_ci	echo "  CC    pkey/pk_verify.c"
219a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_verify.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
220a8e1175bSopenharmony_ci
221a8e1175bSopenharmony_cipkey/rsa_genkey$(EXEXT): pkey/rsa_genkey.c $(DEP)
222a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_genkey.c"
223a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_genkey.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
224a8e1175bSopenharmony_ci
225a8e1175bSopenharmony_cipkey/rsa_sign$(EXEXT): pkey/rsa_sign.c $(DEP)
226a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_sign.c"
227a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_sign.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
228a8e1175bSopenharmony_ci
229a8e1175bSopenharmony_cipkey/rsa_verify$(EXEXT): pkey/rsa_verify.c $(DEP)
230a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_verify.c"
231a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_verify.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
232a8e1175bSopenharmony_ci
233a8e1175bSopenharmony_cipkey/rsa_sign_pss$(EXEXT): pkey/rsa_sign_pss.c $(DEP)
234a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_sign_pss.c"
235a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_sign_pss.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
236a8e1175bSopenharmony_ci
237a8e1175bSopenharmony_cipkey/rsa_verify_pss$(EXEXT): pkey/rsa_verify_pss.c $(DEP)
238a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_verify_pss.c"
239a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_verify_pss.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
240a8e1175bSopenharmony_ci
241a8e1175bSopenharmony_cipkey/rsa_decrypt$(EXEXT): pkey/rsa_decrypt.c $(DEP)
242a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_decrypt.c"
243a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_decrypt.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
244a8e1175bSopenharmony_ci
245a8e1175bSopenharmony_cipkey/rsa_encrypt$(EXEXT): pkey/rsa_encrypt.c $(DEP)
246a8e1175bSopenharmony_ci	echo "  CC    pkey/rsa_encrypt.c"
247a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_encrypt.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
248a8e1175bSopenharmony_ci
249a8e1175bSopenharmony_cipsa/aead_demo$(EXEXT): psa/aead_demo.c $(DEP)
250a8e1175bSopenharmony_ci	echo "  CC    psa/aead_demo.c"
251a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/aead_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
252a8e1175bSopenharmony_ci
253a8e1175bSopenharmony_cipsa/crypto_examples$(EXEXT): psa/crypto_examples.c $(DEP)
254a8e1175bSopenharmony_ci	echo "  CC    psa/crypto_examples.c"
255a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/crypto_examples.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
256a8e1175bSopenharmony_ci
257a8e1175bSopenharmony_cipsa/hmac_demo$(EXEXT): psa/hmac_demo.c $(DEP)
258a8e1175bSopenharmony_ci	echo "  CC    psa/hmac_demo.c"
259a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/hmac_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
260a8e1175bSopenharmony_ci
261a8e1175bSopenharmony_cipsa/key_ladder_demo$(EXEXT): psa/key_ladder_demo.c $(DEP)
262a8e1175bSopenharmony_ci	echo "  CC    psa/key_ladder_demo.c"
263a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/key_ladder_demo.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
264a8e1175bSopenharmony_ci
265a8e1175bSopenharmony_cipsa/psa_constant_names$(EXEXT): psa/psa_constant_names.c psa/psa_constant_names_generated.c $(DEP)
266a8e1175bSopenharmony_ci	echo "  CC    psa/psa_constant_names.c"
267a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/psa_constant_names.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
268a8e1175bSopenharmony_ci
269a8e1175bSopenharmony_cipsa/psa_hash$(EXEXT): psa/psa_hash.c $(DEP)
270a8e1175bSopenharmony_ci	echo "  CC    psa/psa_hash.c"
271a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/psa_hash.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
272a8e1175bSopenharmony_ci
273a8e1175bSopenharmony_cirandom/gen_entropy$(EXEXT): random/gen_entropy.c $(DEP)
274a8e1175bSopenharmony_ci	echo "  CC    random/gen_entropy.c"
275a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) random/gen_entropy.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
276a8e1175bSopenharmony_ci
277a8e1175bSopenharmony_cirandom/gen_random_ctr_drbg$(EXEXT): random/gen_random_ctr_drbg.c $(DEP)
278a8e1175bSopenharmony_ci	echo "  CC    random/gen_random_ctr_drbg.c"
279a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) random/gen_random_ctr_drbg.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
280a8e1175bSopenharmony_ci
281a8e1175bSopenharmony_cissl/dtls_client$(EXEXT): ssl/dtls_client.c $(DEP)
282a8e1175bSopenharmony_ci	echo "  CC    ssl/dtls_client.c"
283a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/dtls_client.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
284a8e1175bSopenharmony_ci
285a8e1175bSopenharmony_cissl/dtls_server$(EXEXT): ssl/dtls_server.c $(DEP)
286a8e1175bSopenharmony_ci	echo "  CC    ssl/dtls_server.c"
287a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/dtls_server.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
288a8e1175bSopenharmony_ci
289a8e1175bSopenharmony_cissl/ssl_client1$(EXEXT): ssl/ssl_client1.c $(DEP)
290a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_client1.c"
291a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_client1.c  $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
292a8e1175bSopenharmony_ci
293a8e1175bSopenharmony_ciSSL_TEST_OBJECTS = test/query_config.o ssl/ssl_test_lib.o
294a8e1175bSopenharmony_ciSSL_TEST_DEPS = $(SSL_TEST_OBJECTS) \
295a8e1175bSopenharmony_ci		test/query_config.h \
296a8e1175bSopenharmony_ci		ssl/ssl_test_lib.h \
297a8e1175bSopenharmony_ci		ssl/ssl_test_common_source.c \
298a8e1175bSopenharmony_ci		$(DEP)
299a8e1175bSopenharmony_ci
300a8e1175bSopenharmony_cissl/ssl_test_lib.o: ssl/ssl_test_lib.c ssl/ssl_test_lib.h $(DEP)
301a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_test_lib.c"
302a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) -c ssl/ssl_test_lib.c -o $@
303a8e1175bSopenharmony_ci
304a8e1175bSopenharmony_cissl/ssl_client2$(EXEXT): ssl/ssl_client2.c $(SSL_TEST_DEPS)
305a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_client2.c"
306a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_client2.c $(SSL_TEST_OBJECTS) $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
307a8e1175bSopenharmony_ci
308a8e1175bSopenharmony_cissl/ssl_server$(EXEXT): ssl/ssl_server.c $(DEP)
309a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_server.c"
310a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_server.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
311a8e1175bSopenharmony_ci
312a8e1175bSopenharmony_cissl/ssl_server2$(EXEXT): ssl/ssl_server2.c $(SSL_TEST_DEPS)
313a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_server2.c"
314a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_server2.c $(SSL_TEST_OBJECTS) $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
315a8e1175bSopenharmony_ci
316a8e1175bSopenharmony_cissl/ssl_context_info$(EXEXT): ssl/ssl_context_info.c test/query_config.o test/query_config.h $(DEP)
317a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_context_info.c"
318a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_context_info.c test/query_config.o $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
319a8e1175bSopenharmony_ci
320a8e1175bSopenharmony_cissl/ssl_fork_server$(EXEXT): ssl/ssl_fork_server.c $(DEP)
321a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_fork_server.c"
322a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_fork_server.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
323a8e1175bSopenharmony_ci
324a8e1175bSopenharmony_cissl/ssl_pthread_server$(EXEXT): ssl/ssl_pthread_server.c $(DEP)
325a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_pthread_server.c"
326a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_pthread_server.c   $(LOCAL_LDFLAGS) -lpthread  $(LDFLAGS) -o $@
327a8e1175bSopenharmony_ci
328a8e1175bSopenharmony_cissl/ssl_mail_client$(EXEXT): ssl/ssl_mail_client.c $(DEP)
329a8e1175bSopenharmony_ci	echo "  CC    ssl/ssl_mail_client.c"
330a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/ssl_mail_client.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
331a8e1175bSopenharmony_ci
332a8e1175bSopenharmony_cissl/mini_client$(EXEXT): ssl/mini_client.c $(DEP)
333a8e1175bSopenharmony_ci	echo "  CC    ssl/mini_client.c"
334a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) ssl/mini_client.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
335a8e1175bSopenharmony_ci
336a8e1175bSopenharmony_citest/benchmark$(EXEXT): test/benchmark.c $(DEP)
337a8e1175bSopenharmony_ci	echo "  CC    test/benchmark.c"
338a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/benchmark.c   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
339a8e1175bSopenharmony_ci
340a8e1175bSopenharmony_citest/cpp_dummy_build.cpp: test/generate_cpp_dummy_build.sh
341a8e1175bSopenharmony_ci	echo "  Gen   test/cpp_dummy_build.cpp"
342a8e1175bSopenharmony_ci	test/generate_cpp_dummy_build.sh
343a8e1175bSopenharmony_ci
344a8e1175bSopenharmony_citest/cpp_dummy_build$(EXEXT): test/cpp_dummy_build.cpp $(DEP)
345a8e1175bSopenharmony_ci	echo "  CXX   test/cpp_dummy_build.cpp"
346a8e1175bSopenharmony_ci	$(CXX) $(LOCAL_CXXFLAGS) $(CXXFLAGS) test/cpp_dummy_build.cpp   $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
347a8e1175bSopenharmony_ci
348a8e1175bSopenharmony_ciifdef BUILD_DLOPEN
349a8e1175bSopenharmony_citest/dlopen$(EXEXT): test/dlopen.c $(DEP)
350a8e1175bSopenharmony_ci	echo "  CC    test/dlopen.c"
351a8e1175bSopenharmony_ci# Do not link any test objects (that would bring in a static dependency on
352a8e1175bSopenharmony_ci# libmbedcrypto at least). Do not link with libmbed* (that would defeat the
353a8e1175bSopenharmony_ci# purpose of testing dynamic loading).
354a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/dlopen.c $(LDFLAGS) $(DLOPEN_LDFLAGS) -o $@
355a8e1175bSopenharmony_ciendif
356a8e1175bSopenharmony_ci
357a8e1175bSopenharmony_citest/metatest$(EXEXT): test/metatest.c $(DEP)
358a8e1175bSopenharmony_ci	echo "  CC    test/metatest.c"
359a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) -I ../library test/metatest.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
360a8e1175bSopenharmony_ci
361a8e1175bSopenharmony_citest/query_config.o: test/query_config.c test/query_config.h $(DEP)
362a8e1175bSopenharmony_ci	echo "  CC    test/query_config.c"
363a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) -c test/query_config.c -o $@
364a8e1175bSopenharmony_ci
365a8e1175bSopenharmony_citest/query_included_headers$(EXEXT): test/query_included_headers.c $(DEP)
366a8e1175bSopenharmony_ci	echo "  CC    test/query_included_headers.c"
367a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/query_included_headers.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
368a8e1175bSopenharmony_ci
369a8e1175bSopenharmony_citest/selftest$(EXEXT): test/selftest.c $(DEP)
370a8e1175bSopenharmony_ci	echo "  CC    test/selftest.c"
371a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/selftest.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
372a8e1175bSopenharmony_ci
373a8e1175bSopenharmony_citest/udp_proxy$(EXEXT): test/udp_proxy.c $(DEP)
374a8e1175bSopenharmony_ci	echo "  CC    test/udp_proxy.c"
375a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/udp_proxy.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
376a8e1175bSopenharmony_ci
377a8e1175bSopenharmony_citest/zeroize$(EXEXT): test/zeroize.c $(DEP)
378a8e1175bSopenharmony_ci	echo "  CC    test/zeroize.c"
379a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/zeroize.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
380a8e1175bSopenharmony_ci
381a8e1175bSopenharmony_citest/query_compile_time_config$(EXEXT): test/query_compile_time_config.c test/query_config.o test/query_config.h $(DEP)
382a8e1175bSopenharmony_ci	echo "  CC    test/query_compile_time_config.c"
383a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/query_compile_time_config.c test/query_config.o $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
384a8e1175bSopenharmony_ci
385a8e1175bSopenharmony_ciutil/pem2der$(EXEXT): util/pem2der.c $(DEP)
386a8e1175bSopenharmony_ci	echo "  CC    util/pem2der.c"
387a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) util/pem2der.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
388a8e1175bSopenharmony_ci
389a8e1175bSopenharmony_ciutil/strerror$(EXEXT): util/strerror.c $(DEP)
390a8e1175bSopenharmony_ci	echo "  CC    util/strerror.c"
391a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) util/strerror.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
392a8e1175bSopenharmony_ci
393a8e1175bSopenharmony_cix509/cert_app$(EXEXT): x509/cert_app.c $(DEP)
394a8e1175bSopenharmony_ci	echo "  CC    x509/cert_app.c"
395a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/cert_app.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
396a8e1175bSopenharmony_ci
397a8e1175bSopenharmony_cix509/cert_write$(EXEXT): x509/cert_write.c $(DEP)
398a8e1175bSopenharmony_ci	echo "  CC    x509/cert_write.c"
399a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/cert_write.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
400a8e1175bSopenharmony_ci
401a8e1175bSopenharmony_cix509/crl_app$(EXEXT): x509/crl_app.c $(DEP)
402a8e1175bSopenharmony_ci	echo "  CC    x509/crl_app.c"
403a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/crl_app.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
404a8e1175bSopenharmony_ci
405a8e1175bSopenharmony_cix509/cert_req$(EXEXT): x509/cert_req.c $(DEP)
406a8e1175bSopenharmony_ci	echo "  CC    x509/cert_req.c"
407a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/cert_req.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
408a8e1175bSopenharmony_ci
409a8e1175bSopenharmony_cix509/load_roots$(EXEXT): x509/load_roots.c $(DEP)
410a8e1175bSopenharmony_ci	echo "  CC    x509/load_roots.c"
411a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/load_roots.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
412a8e1175bSopenharmony_ci
413a8e1175bSopenharmony_cix509/req_app$(EXEXT): x509/req_app.c $(DEP)
414a8e1175bSopenharmony_ci	echo "  CC    x509/req_app.c"
415a8e1175bSopenharmony_ci	$(CC) $(LOCAL_CFLAGS) $(CFLAGS) x509/req_app.c    $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
416a8e1175bSopenharmony_ci
417a8e1175bSopenharmony_ciclean:
418a8e1175bSopenharmony_ciifndef WINDOWS
419a8e1175bSopenharmony_ci	rm -f $(EXES)
420a8e1175bSopenharmony_ci	-rm -f ssl/ssl_pthread_server$(EXEXT)
421a8e1175bSopenharmony_ci	-rm -f test/cpp_dummy_build.cpp test/cpp_dummy_build$(EXEXT)
422a8e1175bSopenharmony_ci	-rm -f test/dlopen$(EXEXT)
423a8e1175bSopenharmony_cielse
424a8e1175bSopenharmony_ci	if exist *.o del /Q /F *.o
425a8e1175bSopenharmony_ci	if exist *.exe del /Q /F *.exe
426a8e1175bSopenharmony_ci	if exist test\cpp_dummy_build.cpp del /Q /F test\cpp_dummy_build.cpp
427a8e1175bSopenharmony_ciendif
428a8e1175bSopenharmony_ci	$(MAKE) -C fuzz clean
429a8e1175bSopenharmony_ci
430a8e1175bSopenharmony_cilist:
431a8e1175bSopenharmony_ci	echo $(EXES)
432