diff options
author | Dominique Leuenberger <dimstar@opensuse.org> | 2022-12-09 21:50:07 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-12-09 21:50:07 +0100 |
commit | b7a4a52ad0b4a55d3b7284c04e6fedbc9a8299c5 (patch) | |
tree | ae2bc1c3551c3bb7553a7a33514043fa68ef701d | |
parent | 9d3ee2936e2ab521748973aed9c4aad0e62f72fc (diff) | |
parent | 99b59f0868aeff94af89b23a07dcb34b7a3ce4e4 (diff) | |
download | libproxy-git-b7a4a52ad0b4a55d3b7284c04e6fedbc9a8299c5.tar.gz |
Merge pull request #195 from illera88/enable_static_builds
Enable static builds for libproxy
-rw-r--r-- | CMakeLists.txt | 10 | ||||
-rw-r--r-- | libproxy/cmake/libproxy.cmk | 12 | ||||
-rw-r--r-- | libproxy/cmake/modules/pacrunner_duktape.cmk | 2 | ||||
-rw-r--r-- | utils/CMakeLists.txt | 2 |
4 files changed, 20 insertions, 6 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4f51e38..08f9170 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ ### Required -cmake_minimum_required(VERSION 2.6) +cmake_minimum_required(VERSION 3.15) project(libproxy) @@ -31,6 +31,14 @@ include(cmake/ctest.cmk) include(cmake/paths.cmk) option(WITH_WEBKIT3 "Build against gtk-3 version of webkitgtk" OFF) +option(BUILD_SHARED_LIBS "Build using shared libraries" ON) + +if(WIN32) + option(MSVC_STATIC "Use statically-linked runtime library" ON) + if(MSVC_STATIC) + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") + endif() +endif() ### Subdirectories diff --git a/libproxy/cmake/libproxy.cmk b/libproxy/cmake/libproxy.cmk index de68e5c..adc0f2e 100644 --- a/libproxy/cmake/libproxy.cmk +++ b/libproxy/cmake/libproxy.cmk @@ -1,4 +1,11 @@ -add_library(libproxy SHARED extension_config.cpp extension_pacrunner.cpp extension_wpad.cpp proxy.cpp url.cpp ${LIBPROXY_SOURCES}) +set(LIBPROXY_SOURCES ${LIBPROXY_SOURCES} extension_config.cpp extension_pacrunner.cpp extension_wpad.cpp proxy.cpp url.cpp) + +if(BUILD_SHARED_LIBS) + add_library(libproxy SHARED ${LIBPROXY_SOURCES}) +else () + add_library(libproxy STATIC ${LIBPROXY_SOURCES}) +endif() + if(WIN32) target_link_libraries(libproxy modman;ws2_32;${LIBPROXY_LIBRARIES}) else() @@ -19,8 +26,7 @@ set_property(SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/proxy.cpp PROPERTY COMPILE_DEFINITIONS MODULEDIR="${MODULEDIR}";BUILTIN_MODULES=${BUILTIN_MODULES}) # When changing the SOVERSION here remember to also bump the 'favorite proxy .so' in python bindings. set_target_properties(libproxy PROPERTIES PREFIX "" VERSION 1.0.0 SOVERSION 1) -set_target_properties(libproxy PROPERTIES INTERFACE_LINK_LIBRARIES "") -set_target_properties(libproxy PROPERTIES LINK_INTERFACE_LIBRARIES "") + if(NOT APPLE) set_target_properties(libproxy PROPERTIES LINK_FLAGS "-Wl,--version-script,${CMAKE_CURRENT_SOURCE_DIR}/libproxy.map") endif() diff --git a/libproxy/cmake/modules/pacrunner_duktape.cmk b/libproxy/cmake/modules/pacrunner_duktape.cmk index 0f2c323..781985d 100644 --- a/libproxy/cmake/modules/pacrunner_duktape.cmk +++ b/libproxy/cmake/modules/pacrunner_duktape.cmk @@ -3,7 +3,7 @@ option(WITH_DUKTAPE "Search for Duktape package" ON) if(WIN32) set(DUKTAPE_FOUND 0) if(WITH_DUKTAPE) - find_package(duktape QUIET) + find_package(Duktape QUIET) if(DUKTAPE_FOUND) include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${DUKTAPE_INCLUDE_DIRS}) link_libraries(${DUKTAPE_LIBRARY}) diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt index 52010c6..53cf0c0 100644 --- a/utils/CMakeLists.txt +++ b/utils/CMakeLists.txt @@ -2,4 +2,4 @@ include_directories("../libproxy") add_executable(proxy proxy.c) target_link_libraries(proxy libproxy) -install(TARGETS proxy RUNTIME DESTINATION ${BIN_INSTALL_DIR}) +install(TARGETS proxy RUNTIME DESTINATION ${BIN_INSTALL_DIR})
\ No newline at end of file |