9afbfdc833
First deal with deleted files. * Files deleted by us: keep them deleted. * Files deleted by them, whether modified by us or not: keep our version. ``` git rm $(git status -s | sed -n 's/^DU //p') git reset -- $(git status -s | sed -n 's/^D //p') git checkout -- $(git status -s | sed -n 's/^ D //p') git add -- $(git status -s | sed -n 's/^UD //p') ``` Individual files with conflicts: * `3rdparty/everest/library/Hacl_Curve25519_joined.c`: spurious conflict because git mistakenly identified this file as a rename. Keep our version. * `README.md`: conflict due to their change in a paragraph that doesn't exist in our version. Keep our version of this paragraph. * `docs/architecture/Makefile`: near-identical additions. Adapt the definition of `all_markdown` and include the clean target. * `doxygen/input/docs_mainpage.h`: conflict in the version number. Keep our version number. * `include/mbedtls/config.h`: two delete/modify conflicts. Keep the removed chunks out. * `library/CMakeLists.txt`: discard all their changes as they are not relevant. * `library/Makefile`: * Discard the added chunk about the crypto submodule starting with `INCLUDING_FROM_MBEDTLS:=1`. * delete/modify: keep the removed chunk out. * library build: This is almost delete/modify. Their changes are mostly not applicable. Do keep the `libmbedcrypto.$(DLEXT): | libmbedcrypto.a` order dependency. * `.c.o`: `-o` was added on both sides but in a different place. Change to their place. * `library/error.c`: to be regenerated. * `library/version_features.c`: to be regenerated. * `programs/Makefile`: Most of the changes are not relevant. The one relevant change is in the `clean` target for Windows; adapt it by removing `/S` from our version. * `programs/test/query_config.c`: to be regenerated. * `scripts/config.py`: added in parallel on both sides. Keep our version. * `scripts/footprint.sh`: parallel changes. Keep our version. * `scripts/generate_visualc_files.pl`: one delete/modify conflict. Keep the removed chunks out. * `tests/Makefile`: discard all of their changes. * `tests/scripts/all.sh`: * `pre_initialize_variables` add `append_outcome`: add it. * `pre_initialize_variables` add `ASAN_CFLAGS`: already there, keep our version. * `pre_parse_command_line` add `--no-append-outcome`: add it. * `pre_parse_command_line` add `--outcome-file`: add it. * `pre_print_configuration`: add `MBEDTLS_TEST_OUTCOME_FILE`. * Several changes in SSL-specific components: keep our version without them. * Several changes where `config.pl` was changed to `config.py` and there was an adjacent difference: keep our version. * Changes regarding the inclusion of `MBEDTLS_MEMORY_xxx`: ignore them here, they will be normalized in a subsequent commit. * `component_test_full_cmake_gcc_asan`: add it without the TLS tests. * `component_test_no_use_psa_crypto_full_cmake_asan`: keep the fixed `msg`, discard other changes. * `component_test_memory_buffer_allocator_backtrace`, `component_test_memory_buffer_allocator`: add them without the TLS tests. * `component_test_m32_everest`: added in parallel on both sides. Keep our version. * `tests/scripts/check-names.sh`, `tests/scripts/list-enum-consts.pl`, `tests/scripts/list-identifiers.sh`, ``tests/scripts/list-macros.sh`: discard all of their changes. * `tests/scripts/test-ref-configs.pl`: the change in the conflict is not relevant, so keep our version there. * `visualc/VS2010/*.vcxproj`: to be regenerated. Regenerate files: ``` scripts/generate_visualc_files.pl git add visualc/VS2010/*.vcxproj scripts/generate_errors.pl git add library/error.c scripts/generate_features.pl git add library/version_features.c scripts/generate_query_config.pl git add programs/test/query_config.c ``` Rejected changes in non-conflicting files: * `CMakeLists.txt`: discard their addition which has already been side-ported. * `doxygen/mbedtls.doxyfile`: keep the version number change. Discard the changes related to `../crypto` paths. Keep the following changes after examination: * `.travis.yml`: all of their changes are relevant. * `include/mbedtls/error.h`: do keep their changes. Even though Crypto doesn't use TLS errors, it must not encroach on TLS's allocated numbers. * `tests/scripts/check-test-cases.py`: keep the code dealing with `ssl-opt.sh`. It works correctly when the file is not present.
258 lines
8.6 KiB
Makefile
258 lines
8.6 KiB
Makefile
|
|
# To compile on SunOS: add "-lsocket -lnsl" to LDFLAGS
|
|
|
|
CFLAGS ?= -O2
|
|
WARNING_CFLAGS ?= -Wall -Wextra
|
|
WARNING_CXXFLAGS ?= -Wall -Wextra
|
|
LDFLAGS ?=
|
|
|
|
LOCAL_CFLAGS = $(WARNING_CFLAGS) -I../include -D_FILE_OFFSET_BITS=64
|
|
LOCAL_CXXFLAGS = $(WARNING_CXXFLAGS) -I../include -D_FILE_OFFSET_BITS=64
|
|
LOCAL_LDFLAGS = -L../library \
|
|
-lmbedcrypto$(SHARED_SUFFIX)
|
|
|
|
include ../3rdparty/Makefile.inc
|
|
LOCAL_CFLAGS+=$(THIRDPARTY_INCLUDES)
|
|
|
|
ifndef SHARED
|
|
DEP=../library/libmbedcrypto.a
|
|
else
|
|
DEP=../library/libmbedcrypto.$(DLEXT)
|
|
endif
|
|
|
|
ifdef DEBUG
|
|
LOCAL_CFLAGS += -g3
|
|
endif
|
|
|
|
# if we're running on Windows, build for Windows
|
|
ifdef WINDOWS
|
|
WINDOWS_BUILD=1
|
|
endif
|
|
|
|
ifdef WINDOWS_BUILD
|
|
DLEXT=dll
|
|
EXEXT=.exe
|
|
LOCAL_LDFLAGS += -lws2_32
|
|
ifdef SHARED
|
|
SHARED_SUFFIX=.$(DLEXT)
|
|
endif
|
|
else
|
|
DLEXT ?= so
|
|
EXEXT=
|
|
SHARED_SUFFIX=
|
|
endif
|
|
|
|
APPS = \
|
|
aes/aescrypt2$(EXEXT) \
|
|
aes/crypt_and_hash$(EXEXT) \
|
|
hash/hello$(EXEXT) \
|
|
hash/generic_sum$(EXEXT) \
|
|
pkey/dh_genprime$(EXEXT) \
|
|
pkey/ecdh_curve25519$(EXEXT) \
|
|
pkey/ecdsa$(EXEXT) \
|
|
pkey/gen_key$(EXEXT) \
|
|
pkey/key_app$(EXEXT) \
|
|
pkey/key_app_writer$(EXEXT) \
|
|
pkey/mpi_demo$(EXEXT) \
|
|
pkey/pk_decrypt$(EXEXT) \
|
|
pkey/pk_encrypt$(EXEXT) \
|
|
pkey/pk_sign$(EXEXT) \
|
|
pkey/pk_verify$(EXEXT) \
|
|
pkey/rsa_genkey$(EXEXT) \
|
|
pkey/rsa_decrypt$(EXEXT) \
|
|
pkey/rsa_encrypt$(EXEXT) \
|
|
pkey/rsa_sign$(EXEXT) \
|
|
pkey/rsa_verify$(EXEXT) \
|
|
pkey/rsa_sign_pss$(EXEXT) \
|
|
pkey/rsa_verify_pss$(EXEXT) \
|
|
psa/crypto_examples$(EXEXT) \
|
|
psa/key_ladder_demo$(EXEXT) \
|
|
psa/psa_constant_names$(EXEXT) \
|
|
random/gen_entropy$(EXEXT) \
|
|
random/gen_random_havege$(EXEXT) \
|
|
random/gen_random_ctr_drbg$(EXEXT) \
|
|
test/benchmark$(EXEXT) \
|
|
test/selftest$(EXEXT) \
|
|
test/zeroize$(EXEXT) \
|
|
test/query_compile_time_config$(EXEXT) \
|
|
util/pem2der$(EXEXT) \
|
|
util/strerror$(EXEXT) \
|
|
# End of APPS
|
|
|
|
ifdef TEST_CPP
|
|
APPS += test/cpp_dummy_build$(EXEXT)
|
|
endif
|
|
|
|
EXTRA_GENERATED =
|
|
|
|
.SILENT:
|
|
|
|
.PHONY: all clean list
|
|
|
|
all: $(APPS)
|
|
|
|
$(DEP):
|
|
$(MAKE) -C ../library
|
|
|
|
ifdef WINDOWS
|
|
EXTRA_GENERATED += psa\psa_constant_names_generated.c
|
|
else
|
|
EXTRA_GENERATED += psa/psa_constant_names_generated.c
|
|
endif
|
|
|
|
psa/psa_constant_names$(EXEXT): psa/psa_constant_names_generated.c
|
|
psa/psa_constant_names_generated.c: ../scripts/generate_psa_constants.py ../include/psa/crypto_values.h ../include/psa/crypto_extra.h
|
|
../scripts/generate_psa_constants.py
|
|
|
|
aes/aescrypt2$(EXEXT): aes/aescrypt2.c $(DEP)
|
|
echo " CC aes/aescrypt2.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) aes/aescrypt2.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
aes/crypt_and_hash$(EXEXT): aes/crypt_and_hash.c $(DEP)
|
|
echo " CC aes/crypt_and_hash.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) aes/crypt_and_hash.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
hash/hello$(EXEXT): hash/hello.c $(DEP)
|
|
echo " CC hash/hello.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) hash/hello.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
hash/generic_sum$(EXEXT): hash/generic_sum.c $(DEP)
|
|
echo " CC hash/generic_sum.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) hash/generic_sum.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/dh_genprime$(EXEXT): pkey/dh_genprime.c $(DEP)
|
|
echo " CC pkey/dh_genprime.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/dh_genprime.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/ecdh_curve25519$(EXEXT): pkey/ecdh_curve25519.c $(DEP)
|
|
echo " CC pkey/ecdh_curve25519.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/ecdh_curve25519.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/ecdsa$(EXEXT): pkey/ecdsa.c $(DEP)
|
|
echo " CC pkey/ecdsa.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/ecdsa.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/gen_key$(EXEXT): pkey/gen_key.c $(DEP)
|
|
echo " CC pkey/gen_key.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/gen_key.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/key_app$(EXEXT): pkey/key_app.c $(DEP)
|
|
echo " CC pkey/key_app.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/key_app.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/key_app_writer$(EXEXT): pkey/key_app_writer.c $(DEP)
|
|
echo " CC pkey/key_app_writer.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/key_app_writer.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/mpi_demo$(EXEXT): pkey/mpi_demo.c $(DEP)
|
|
echo " CC pkey/mpi_demo.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/mpi_demo.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/pk_decrypt$(EXEXT): pkey/pk_decrypt.c $(DEP)
|
|
echo " CC pkey/pk_decrypt.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_decrypt.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/pk_encrypt$(EXEXT): pkey/pk_encrypt.c $(DEP)
|
|
echo " CC pkey/pk_encrypt.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_encrypt.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/pk_sign$(EXEXT): pkey/pk_sign.c $(DEP)
|
|
echo " CC pkey/pk_sign.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_sign.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/pk_verify$(EXEXT): pkey/pk_verify.c $(DEP)
|
|
echo " CC pkey/pk_verify.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/pk_verify.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_genkey$(EXEXT): pkey/rsa_genkey.c $(DEP)
|
|
echo " CC pkey/rsa_genkey.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_genkey.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_sign$(EXEXT): pkey/rsa_sign.c $(DEP)
|
|
echo " CC pkey/rsa_sign.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_sign.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_verify$(EXEXT): pkey/rsa_verify.c $(DEP)
|
|
echo " CC pkey/rsa_verify.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_verify.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_sign_pss$(EXEXT): pkey/rsa_sign_pss.c $(DEP)
|
|
echo " CC pkey/rsa_sign_pss.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_sign_pss.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_verify_pss$(EXEXT): pkey/rsa_verify_pss.c $(DEP)
|
|
echo " CC pkey/rsa_verify_pss.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_verify_pss.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_decrypt$(EXEXT): pkey/rsa_decrypt.c $(DEP)
|
|
echo " CC pkey/rsa_decrypt.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_decrypt.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
pkey/rsa_encrypt$(EXEXT): pkey/rsa_encrypt.c $(DEP)
|
|
echo " CC pkey/rsa_encrypt.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) pkey/rsa_encrypt.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
psa/key_ladder_demo$(EXEXT): psa/key_ladder_demo.c $(DEP)
|
|
echo " CC psa/key_ladder_demo.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/key_ladder_demo.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
psa/psa_constant_names$(EXEXT): psa/psa_constant_names.c $(DEP)
|
|
echo " CC psa/psa_constant_names.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/psa_constant_names.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
random/gen_entropy$(EXEXT): random/gen_entropy.c $(DEP)
|
|
echo " CC random/gen_entropy.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) random/gen_entropy.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
random/gen_random_havege$(EXEXT): random/gen_random_havege.c $(DEP)
|
|
echo " CC random/gen_random_havege.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) random/gen_random_havege.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
random/gen_random_ctr_drbg$(EXEXT): random/gen_random_ctr_drbg.c $(DEP)
|
|
echo " CC random/gen_random_ctr_drbg.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) random/gen_random_ctr_drbg.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
test/benchmark$(EXEXT): test/benchmark.c $(DEP)
|
|
echo " CC test/benchmark.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/benchmark.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
test/cpp_dummy_build$(EXEXT): test/cpp_dummy_build.cpp $(DEP)
|
|
echo " CXX test/cpp_dummy_build.cpp"
|
|
$(CXX) $(LOCAL_CXXFLAGS) $(CXXFLAGS) test/cpp_dummy_build.cpp $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
test/selftest$(EXEXT): test/selftest.c $(DEP)
|
|
echo " CC test/selftest.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/selftest.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
test/zeroize$(EXEXT): test/zeroize.c $(DEP)
|
|
echo " CC test/zeroize.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/zeroize.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
test/query_compile_time_config$(EXEXT): test/query_compile_time_config.c test/query_config.c $(DEP)
|
|
echo " CC test/query_compile_time_config.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) test/query_compile_time_config.c test/query_config.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
util/pem2der$(EXEXT): util/pem2der.c $(DEP)
|
|
echo " CC util/pem2der.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) util/pem2der.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
util/strerror$(EXEXT): util/strerror.c $(DEP)
|
|
echo " CC util/strerror.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) util/strerror.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
psa/crypto_examples$(EXEXT): psa/crypto_examples.c $(DEP)
|
|
echo " CC psa/crypto_examples.c"
|
|
$(CC) $(LOCAL_CFLAGS) $(CFLAGS) psa/crypto_examples.c $(LOCAL_LDFLAGS) $(LDFLAGS) -o $@
|
|
|
|
clean:
|
|
ifndef WINDOWS
|
|
rm -f $(APPS) $(EXTRA_GENERATED)
|
|
-rm -f test/cpp_dummy_build$(EXEXT)
|
|
else
|
|
if exist *.o del /Q /F *.o
|
|
if exist *.exe del /Q /F *.exe
|
|
if exist $(EXTRA_GENERATED) del /S /Q /F $(EXTRA_GENERATED)
|
|
endif
|
|
|
|
list:
|
|
echo $(APPS)
|