mirror of
https://github.com/transmission/transmission.git
synced 2026-02-15 07:26:49 +00:00
build: improve building with system dht (#8192)
This commit is contained in:
@@ -557,7 +557,8 @@ unset(TR_MINIUPNPC_LIBNAME)
|
||||
|
||||
add_subdirectory(${TR_THIRD_PARTY_SOURCE_DIR}/wildmat)
|
||||
|
||||
tr_add_external_auto_library_legacy(DHT dht dht
|
||||
tr_add_external_auto_library(DHT dht
|
||||
LIBNAME dht
|
||||
TARGET dht::dht)
|
||||
|
||||
tr_add_external_auto_library(PSL libpsl
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
if(DHT_PREFER_STATIC_LIB)
|
||||
set(DHT_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
if(WIN32)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a .lib ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
else()
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(UNIX)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(_DHT QUIET libdht)
|
||||
endif()
|
||||
|
||||
find_path(DHT_INCLUDE_DIR
|
||||
NAMES dht/dht.h
|
||||
HINTS ${_DHT_INCLUDEDIR})
|
||||
find_library(DHT_LIBRARY
|
||||
NAMES dht
|
||||
HINTS ${_DHT_LIBDIR})
|
||||
|
||||
set(DHT_INCLUDE_DIRS ${DHT_INCLUDE_DIR})
|
||||
set(DHT_LIBRARIES ${DHT_LIBRARY})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
find_package_handle_standard_args(DHT
|
||||
REQUIRED_VARS
|
||||
DHT_LIBRARY
|
||||
DHT_INCLUDE_DIR)
|
||||
|
||||
mark_as_advanced(DHT_INCLUDE_DIR DHT_LIBRARY)
|
||||
|
||||
if(DHT_PREFER_STATIC_LIB)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${DHT_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
unset(DHT_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
endif()
|
||||
39
cmake/Finddht.cmake
Normal file
39
cmake/Finddht.cmake
Normal file
@@ -0,0 +1,39 @@
|
||||
if(${CMAKE_FIND_PACKAGE_NAME}_PREFER_STATIC_LIB)
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
if(WIN32)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a .lib ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
else()
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES .a ${CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(UNIX)
|
||||
find_package(PkgConfig QUIET)
|
||||
pkg_check_modules(_DHT QUIET libdht)
|
||||
endif()
|
||||
|
||||
find_path(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIR
|
||||
NAMES dht/dht.h
|
||||
HINTS ${_DHT_INCLUDEDIR})
|
||||
find_library(${CMAKE_FIND_PACKAGE_NAME}_LIBRARY
|
||||
NAMES dht
|
||||
HINTS ${_DHT_LIBDIR})
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
|
||||
find_package_handle_standard_args(${CMAKE_FIND_PACKAGE_NAME}
|
||||
REQUIRED_VARS
|
||||
${CMAKE_FIND_PACKAGE_NAME}_LIBRARY
|
||||
${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIR)
|
||||
|
||||
if(${CMAKE_FIND_PACKAGE_NAME}_FOUND)
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIRS ${${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIR})
|
||||
set(${CMAKE_FIND_PACKAGE_NAME}_LIBRARIES ${${CMAKE_FIND_PACKAGE_NAME}_LIBRARY})
|
||||
endif()
|
||||
|
||||
mark_as_advanced(${CMAKE_FIND_PACKAGE_NAME}_INCLUDE_DIR ${CMAKE_FIND_PACKAGE_NAME}_LIBRARY)
|
||||
|
||||
if(${CMAKE_FIND_PACKAGE_NAME}_PREFER_STATIC_LIB)
|
||||
set(CMAKE_FIND_LIBRARY_SUFFIXES ${${CMAKE_FIND_PACKAGE_NAME}_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES})
|
||||
unset(${CMAKE_FIND_PACKAGE_NAME}_ORIG_CMAKE_FIND_LIBRARY_SUFFIXES)
|
||||
endif()
|
||||
Reference in New Issue
Block a user