aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Elliott <paul.elliott@arm.com>2024-01-24 18:05:53 +0000
committerPaul Elliott <paul.elliott@arm.com>2024-01-24 18:05:53 +0000
commit7fd162ec262408e4700f95bfe90638dca5247967 (patch)
tree4a9a9a4a0a37eddb6e7193179f2184d63df118d2
parented3ba3cc8e23c0776ca23293a25d747b7183e10e (diff)
downloadmbedtls-7fd162ec262408e4700f95bfe90638dca5247967.zip
mbedtls-7fd162ec262408e4700f95bfe90638dca5247967.tar.gz
mbedtls-7fd162ec262408e4700f95bfe90638dca5247967.tar.bz2
Refactor common PThreads CMake code
Move the flags and find of Threads to root CMakeLists.txt, rather than duplicate these everywhere. Make explicit linking of library with PThreads use the same mechanism. Signed-off-by: Paul Elliott <paul.elliott@arm.com>
-rw-r--r--CMakeLists.txt5
-rw-r--r--library/CMakeLists.txt2
-rw-r--r--programs/aes/CMakeLists.txt4
-rw-r--r--programs/cipher/CMakeLists.txt4
-rw-r--r--programs/fuzz/CMakeLists.txt4
-rw-r--r--programs/hash/CMakeLists.txt4
-rw-r--r--programs/pkey/CMakeLists.txt4
-rw-r--r--programs/psa/CMakeLists.txt4
-rw-r--r--programs/random/CMakeLists.txt4
-rw-r--r--programs/ssl/CMakeLists.txt3
-rw-r--r--programs/test/CMakeLists.txt4
-rw-r--r--programs/test/cmake_subproject/CMakeLists.txt4
-rw-r--r--programs/util/CMakeLists.txt4
-rw-r--r--programs/x509/CMakeLists.txt4
-rw-r--r--tests/CMakeLists.txt4
15 files changed, 6 insertions, 52 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ad05646..68dfcb0 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -114,6 +114,11 @@ if(MBEDTLS_PYTHON_EXECUTABLE)
endif()
+# We now potentially need to link all executables against PThreads, if available
+set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
+set(THREADS_PREFER_PTHREAD_FLAG TRUE)
+find_package(Threads)
+
# If this is the root project add longer list of available CMAKE_BUILD_TYPE values
if(CMAKE_SOURCE_DIR STREQUAL CMAKE_CURRENT_SOURCE_DIR)
set(CMAKE_BUILD_TYPE ${CMAKE_BUILD_TYPE}
diff --git a/library/CMakeLists.txt b/library/CMakeLists.txt
index 5c297e0..4980341 100644
--- a/library/CMakeLists.txt
+++ b/library/CMakeLists.txt
@@ -231,7 +231,7 @@ if(HAIKU)
endif(HAIKU)
if(LINK_WITH_PTHREAD)
- set(libs ${libs} pthread)
+ set(libs ${libs} ${CMAKE_THREAD_LIBS_INIT})
endif()
if(LINK_WITH_TRUSTED_STORAGE)
diff --git a/programs/aes/CMakeLists.txt b/programs/aes/CMakeLists.txt
index 8174102..ccb8db5 100644
--- a/programs/aes/CMakeLists.txt
+++ b/programs/aes/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables
crypt_and_hash
)
diff --git a/programs/cipher/CMakeLists.txt b/programs/cipher/CMakeLists.txt
index b497e8a..e925524 100644
--- a/programs/cipher/CMakeLists.txt
+++ b/programs/cipher/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables
cipher_aead_demo
)
diff --git a/programs/fuzz/CMakeLists.txt b/programs/fuzz/CMakeLists.txt
index 97b8fd2..c389029 100644
--- a/programs/fuzz/CMakeLists.txt
+++ b/programs/fuzz/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(libs
${mbedtls_target}
${CMAKE_THREAD_LIBS_INIT}
diff --git a/programs/hash/CMakeLists.txt b/programs/hash/CMakeLists.txt
index 504a405..fcacf3b 100644
--- a/programs/hash/CMakeLists.txt
+++ b/programs/hash/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables
generic_sum
hello
diff --git a/programs/pkey/CMakeLists.txt b/programs/pkey/CMakeLists.txt
index 2f55c61..cd0387a 100644
--- a/programs/pkey/CMakeLists.txt
+++ b/programs/pkey/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables_mbedtls
dh_client
dh_server
diff --git a/programs/psa/CMakeLists.txt b/programs/psa/CMakeLists.txt
index dd1b1a2..a8e4b0e 100644
--- a/programs/psa/CMakeLists.txt
+++ b/programs/psa/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables
aead_demo
crypto_examples
diff --git a/programs/random/CMakeLists.txt b/programs/random/CMakeLists.txt
index c1184d1..5940395 100644
--- a/programs/random/CMakeLists.txt
+++ b/programs/random/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(executables
gen_entropy
gen_random_ctr_drbg
diff --git a/programs/ssl/CMakeLists.txt b/programs/ssl/CMakeLists.txt
index 8047b9f..ec2c86f 100644
--- a/programs/ssl/CMakeLists.txt
+++ b/programs/ssl/CMakeLists.txt
@@ -1,6 +1,3 @@
-set(THREADS_USE_PTHREADS_WIN32 true)
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads)
set(libs
diff --git a/programs/test/CMakeLists.txt b/programs/test/CMakeLists.txt
index 3709276..f91f786 100644
--- a/programs/test/CMakeLists.txt
+++ b/programs/test/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(libs
${mbedtls_target}
)
diff --git a/programs/test/cmake_subproject/CMakeLists.txt b/programs/test/cmake_subproject/CMakeLists.txt
index 2f8ab2a..78bd5e7 100644
--- a/programs/test/cmake_subproject/CMakeLists.txt
+++ b/programs/test/cmake_subproject/CMakeLists.txt
@@ -1,9 +1,5 @@
cmake_minimum_required(VERSION 3.5.1)
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
# Test the target renaming support by adding a prefix to the targets built
set(MBEDTLS_TARGET_PREFIX subproject_test_)
diff --git a/programs/util/CMakeLists.txt b/programs/util/CMakeLists.txt
index 6a8659e..cb6bc3d 100644
--- a/programs/util/CMakeLists.txt
+++ b/programs/util/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(libs
${mbedcrypto_target}
)
diff --git a/programs/x509/CMakeLists.txt b/programs/x509/CMakeLists.txt
index e41b406..43437f0 100644
--- a/programs/x509/CMakeLists.txt
+++ b/programs/x509/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(libs
${mbedx509_target}
)
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index cb54ea4..70f5bc9 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -1,7 +1,3 @@
-set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
-set(THREADS_PREFER_PTHREAD_FLAG TRUE)
-find_package(Threads)
-
set(libs
${mbedtls_target}
${CMAKE_THREAD_LIBS_INIT}