diff --git a/CMakeLists.txt b/CMakeLists.txt index eb62721..f29dae5 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,6 +14,7 @@ set(BUILD_TESTS ON CACHE BOOL "Enable building test programs.") set(KTE_FONT_SIZE "18.0" CACHE STRING "Default font size for GUI") option(KTE_UNDO_DEBUG "Enable undo instrumentation logs" OFF) option(KTE_ENABLE_TREESITTER "Enable optional Tree-sitter highlighter adapter" OFF) +option(KTE_STATIC_LINK "Enable static linking on Linux" ON) # Optionally enable AddressSanitizer (ASan) option(ENABLE_ASAN "Enable AddressSanitizer for builds" OFF) @@ -285,7 +286,7 @@ endif () target_link_libraries(kte ${CURSES_LIBRARIES}) # Static linking on Linux only (macOS does not support static linking of system libraries) -if (NOT APPLE) +if (NOT APPLE AND KTE_STATIC_LINK) target_link_options(kte PRIVATE -static) endif () @@ -375,7 +376,7 @@ if (BUILD_TESTS) endif () # Static linking on Linux only (macOS does not support static linking of system libraries) - if (NOT APPLE) + if (NOT APPLE AND KTE_STATIC_LINK) target_link_options(kte_tests PRIVATE -static) endif () endif () @@ -418,7 +419,7 @@ if (BUILD_GUI) endif () # Static linking on Linux only (macOS does not support static linking of system libraries) - if (NOT APPLE) + if (NOT APPLE AND KTE_STATIC_LINK) target_link_options(kge PRIVATE -static) endif () diff --git a/default.nix b/default.nix index 6357d11..1dcc9da 100644 --- a/default.nix +++ b/default.nix @@ -48,6 +48,7 @@ stdenv.mkDerivation { "-DBUILD_GUI=${if graphical then "ON" else "OFF"}" "-DKTE_USE_QT=${if graphical-qt then "ON" else "OFF"}" "-DCMAKE_BUILD_TYPE=Debug" + "-DKTE_STATIC_LINK=OFF" ]; installPhase = '' diff --git a/tests/test_swap_edge_cases.cc b/tests/test_swap_edge_cases.cc index 1b61968..3ca1bb2 100644 --- a/tests/test_swap_edge_cases.cc +++ b/tests/test_swap_edge_cases.cc @@ -5,6 +5,7 @@ #include #include +#include #include #include #include