Merge bitcoin-core/secp256k1#1554: cmake: Clean up testing code
7c987ec89ecmake: Call `enable_testing()` unconditionally (Hennadii Stepanov)6aa576515ecmake: Delete `CTest` module (Hennadii Stepanov) Pull request description: 1. Delete `CTest` module. The `CTest` module handles `CDash` integration, which we do not use. It is not required for testing functionality. 2. Clean up cases when to invoke `enable_testing()` The `enable_testing()` command invocation is required for `add_test()` commands, which are used only for `{noverify_}tests`, `exhaustive_tests` and examples. ACKs for top commit: real-or-random: utACK7c987ec89etheStack: ACK7c987ec89eTree-SHA512: f2628a4c4363b86f7c49d705df192e76368997e3f01cb736fcc272330bbf481af023d29d9faec17878d3bf74e4d265870cd93953406ae4612cd717811f22dd1a
This commit is contained in:
@@ -1,5 +1,8 @@
|
|||||||
cmake_minimum_required(VERSION 3.16)
|
cmake_minimum_required(VERSION 3.16)
|
||||||
|
|
||||||
|
#=============================
|
||||||
|
# Project / Package metadata
|
||||||
|
#=============================
|
||||||
project(libsecp256k1
|
project(libsecp256k1
|
||||||
# The package (a.k.a. release) version is based on semantic versioning 2.0.0 of
|
# The package (a.k.a. release) version is based on semantic versioning 2.0.0 of
|
||||||
# the API. All changes in experimental modules are treated as
|
# the API. All changes in experimental modules are treated as
|
||||||
@@ -9,6 +12,8 @@ project(libsecp256k1
|
|||||||
HOMEPAGE_URL "https://github.com/bitcoin-core/secp256k1"
|
HOMEPAGE_URL "https://github.com/bitcoin-core/secp256k1"
|
||||||
LANGUAGES C
|
LANGUAGES C
|
||||||
)
|
)
|
||||||
|
enable_testing()
|
||||||
|
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
||||||
|
|
||||||
if(CMAKE_VERSION VERSION_LESS 3.21)
|
if(CMAKE_VERSION VERSION_LESS 3.21)
|
||||||
# Emulates CMake 3.21+ behavior.
|
# Emulates CMake 3.21+ behavior.
|
||||||
@@ -30,11 +35,15 @@ set(${PROJECT_NAME}_LIB_VERSION_CURRENT 4)
|
|||||||
set(${PROJECT_NAME}_LIB_VERSION_REVISION 2)
|
set(${PROJECT_NAME}_LIB_VERSION_REVISION 2)
|
||||||
set(${PROJECT_NAME}_LIB_VERSION_AGE 2)
|
set(${PROJECT_NAME}_LIB_VERSION_AGE 2)
|
||||||
|
|
||||||
|
#=============================
|
||||||
|
# Language setup
|
||||||
|
#=============================
|
||||||
set(CMAKE_C_STANDARD 90)
|
set(CMAKE_C_STANDARD 90)
|
||||||
set(CMAKE_C_EXTENSIONS OFF)
|
set(CMAKE_C_EXTENSIONS OFF)
|
||||||
|
|
||||||
list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
#=============================
|
||||||
|
# Configurable options
|
||||||
|
#=============================
|
||||||
option(BUILD_SHARED_LIBS "Build shared libraries." ON)
|
option(BUILD_SHARED_LIBS "Build shared libraries." ON)
|
||||||
option(SECP256K1_DISABLE_SHARED "Disable shared library. Overrides BUILD_SHARED_LIBS." OFF)
|
option(SECP256K1_DISABLE_SHARED "Disable shared library. Overrides BUILD_SHARED_LIBS." OFF)
|
||||||
if(SECP256K1_DISABLE_SHARED)
|
if(SECP256K1_DISABLE_SHARED)
|
||||||
@@ -262,13 +271,6 @@ if(SECP256K1_BUILD_CTIME_TESTS)
|
|||||||
unset(msan_enabled)
|
unset(msan_enabled)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include(CTest)
|
|
||||||
# We do not use CTest's BUILD_TESTING because a single toggle for all tests is too coarse for our needs.
|
|
||||||
mark_as_advanced(BUILD_TESTING)
|
|
||||||
if(SECP256K1_BUILD_BENCHMARK OR SECP256K1_BUILD_TESTS OR SECP256K1_BUILD_EXHAUSTIVE_TESTS OR SECP256K1_BUILD_CTIME_TESTS OR SECP256K1_BUILD_EXAMPLES)
|
|
||||||
enable_testing()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(SECP256K1_APPEND_CFLAGS "" CACHE STRING "Compiler flags that are appended to the command line after all other flags added by the build system. This variable is intended for debugging and special builds.")
|
set(SECP256K1_APPEND_CFLAGS "" CACHE STRING "Compiler flags that are appended to the command line after all other flags added by the build system. This variable is intended for debugging and special builds.")
|
||||||
if(SECP256K1_APPEND_CFLAGS)
|
if(SECP256K1_APPEND_CFLAGS)
|
||||||
# Appending to this low-level rule variable is the only way to
|
# Appending to this low-level rule variable is the only way to
|
||||||
|
|||||||
Reference in New Issue
Block a user