From 0ae58dd985c3b7c8473c3d969507fffa6f7b3a59 Mon Sep 17 00:00:00 2001 From: Gilles Peskine Date: Tue, 2 Jan 2024 23:11:24 +0100 Subject: [PATCH] Unify MBEDTLS_TEST_OBJS `$(MBEDTLS_TEST_OBJS)` included TLS-specific test support modules in `tests/Makefile` but not in `programs/Makefile`. This difference is not actually necessary. What is necessary is that all programs that use functions from TLS-specific test support modules are linked with those modules in addition to `-lmbedtls`, and programs that are not linked with `-lmbedtls` are not linked with TLS-specific test support modules. Since we always pass `-lmbedtls` when linking programs in `programs/Makefile`, we can link with the TLS-specific test support modules as well. This keeps things simpler. Signed-off-by: Gilles Peskine --- programs/Makefile | 4 ---- scripts/common.make | 12 ++++++++++++ tests/Makefile | 3 --- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/programs/Makefile b/programs/Makefile index 4bf11062c6..82c8569963 100644 --- a/programs/Makefile +++ b/programs/Makefile @@ -7,10 +7,6 @@ else DLOPEN_LDFLAGS ?= endif -# Support code used by test programs and test builds, excluding TLS-specific -# code which is in the src/test_helpers subdirectory. -MBEDTLS_TEST_OBJS = $(patsubst %.c,%.o,$(wildcard ${MBEDTLS_TEST_PATH}/src/*.c ${MBEDTLS_TEST_PATH}/src/drivers/*.c)) - DEP=${MBEDLIBS} ${MBEDTLS_TEST_OBJS} # Only build the dlopen test in shared library builds, and not when building diff --git a/scripts/common.make b/scripts/common.make index e8d22cb748..6c95b42354 100644 --- a/scripts/common.make +++ b/scripts/common.make @@ -105,3 +105,15 @@ ifndef WINDOWS else for %f in ($(subst /,\,$(GENERATED_FILES))) if exist %f del /Q /F %f endif + +# Auxiliary modules used by tests and some sample programs +MBEDTLS_CORE_TEST_OBJS = $(patsubst %.c,%.o,$(wildcard \ + ${MBEDTLS_TEST_PATH}/src/*.c \ + ${MBEDTLS_TEST_PATH}/src/drivers/*.c \ + )) +# Additional auxiliary modules for TLS testing +MBEDTLS_TLS_TEST_OBJS = $(patsubst %.c,%.o,$(wildcard \ + ${MBEDTLS_TEST_PATH}/src/test_helpers/*.c \ + )) + +MBEDTLS_TEST_OBJS = $(MBEDTLS_CORE_TEST_OBJS) $(MBEDTLS_TLS_TEST_OBJS) diff --git a/tests/Makefile b/tests/Makefile index 848d3c499d..f82c267ac5 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -110,9 +110,6 @@ BINARIES := $(addsuffix $(EXEXT),$(APPS)) all: $(BINARIES) -MBEDTLS_TEST_OBJS = $(patsubst %.c,%.o,$(wildcard ${MBEDTLS_TEST_PATH}/src/*.c ${MBEDTLS_TEST_PATH}/src/drivers/*.c)) -MBEDTLS_TEST_OBJS += $(patsubst %.c,%.o,$(wildcard ${MBEDTLS_TEST_PATH}/src/test_helpers/*.c)) - mbedtls_test: $(MBEDTLS_TEST_OBJS) TEST_OBJS_DEPS = $(wildcard include/test/*.h include/test/*/*.h)