From 90b79ab34229fff167d99c360fdb0c94f17f4666 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bence=20Sz=C3=A9pk=C3=BAti?= Date: Fri, 4 Jun 2021 00:19:53 +0200 Subject: [PATCH] Add migration guide and changelog MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Bence Szépkúti --- ChangeLog.d/split-config.txt | 12 ++++++++++++ docs/3.0-migration-guide.d/split_config.md | 16 ++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 ChangeLog.d/split-config.txt create mode 100644 docs/3.0-migration-guide.d/split_config.md diff --git a/ChangeLog.d/split-config.txt b/ChangeLog.d/split-config.txt new file mode 100644 index 0000000000..bb807be7a2 --- /dev/null +++ b/ChangeLog.d/split-config.txt @@ -0,0 +1,12 @@ +Changes + * config.h has been split into build_info.h and mbedtls_config.h + build_info.h is intended to be included from C code directly, while + mbedtls_config.h is intended to be edited by end users whishing to + change the build configuration, and should generally only be included from + build_info.h. + * The handling of MBEDTLS_CONFIG_FILE has been moved into build_info.h. + * Mandatory version symbols MBEDTLS_CONFIG_VERSION and + MBEDTLS_USER_CONFIG_VERSION were introduced for MBEDTLS_CONFIG_FILE and + MBEDTLS_USER_CONFIG_FILE respectively. They have to be defined with a + value of one in their respective config file for the config to be + considered valid. diff --git a/docs/3.0-migration-guide.d/split_config.md b/docs/3.0-migration-guide.d/split_config.md new file mode 100644 index 0000000000..b8f516af5e --- /dev/null +++ b/docs/3.0-migration-guide.d/split_config.md @@ -0,0 +1,16 @@ +Introduce a level of indirection and versioning in the config files +------------------------------------------------------------------- + +`config.h` was split into `build_info.h` and `mbedtls_config.h`. +`build_info.h` is intended to be included from C code directly, while +`mbedtls_config.h` is intended to be edited by end users whishing to +change the build configuration, and should generally only be included from +`build_info.h`. This is because all the preprocessor logic has been moved +into `build_info.h`, including the handling of the `MBEDTLS_CONFIG_FILE` +macro. + +Mandatory version symbols were introduced for `MBEDTLS_CONFIG_FILE` and +`MBEDTLS_USER_CONFIG_FILE`, `MBEDTLS_CONFIG_VERSION` and +`MBEDTLS_USER_CONFIG_VERSION` respectively. Both config files should include +a definiton of their respective version symbol, with a value of `1` to be +considered valid.