From fb012a005573435af7fef8d37df39c06b3c37c65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dag-Erling=20Sm=C3=B8rgrav?= Date: Thu, 9 Jul 2026 09:26:24 +0200 Subject: [PATCH] CMake: Fix symbol versioning tests The tests were trying to produce a versioned executable, which isn't what we actually want and does not reliably work. Change the tests so they try to produce a versioned library instead. --- CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5a540774..c5d7a7ba 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -304,17 +304,17 @@ if(JANSSON_BUILD_SHARED_LIBS) src/jansson.def) # check if linker support --default-symver - list(APPEND CMAKE_REQUIRED_LIBRARIES "-Wl,--default-symver") + list(APPEND CMAKE_REQUIRED_LIBRARIES "-shared -Wl,--default-symver") check_c_source_compiles( " - int main (void) + int function (void) { return 0; } " SYMVER_WORKS ) - list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES "-Wl,--default-symver") + list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES "-shared -Wl,--default-symver") if (SYMVER_WORKS) set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--default-symver") @@ -328,17 +328,17 @@ if(JANSSON_BUILD_SHARED_LIBS) *; }; ") - list(APPEND CMAKE_REQUIRED_LIBRARIES "-Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/jansson.sym") + list(APPEND CMAKE_REQUIRED_LIBRARIES "-shared -Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/jansson.sym") check_c_source_compiles( " - int main (void) + int function (void) { return 0; } " VSCRIPT_WORKS ) - list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES "-Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/jansson.sym") + list(REMOVE_ITEM CMAKE_REQUIRED_LIBRARIES "-shared -Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/jansson.sym") if (VSCRIPT_WORKS) set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--version-script,${CMAKE_CURRENT_BINARY_DIR}/jansson.sym") endif()