Skip to content

Commit 4b7c2c7

Browse files
committed
fix #120: pkg-config 'Requires:' missing libsasl2
1 parent fd5ff11 commit 4b7c2c7

File tree

4 files changed

+14
-0
lines changed

4 files changed

+14
-0
lines changed

CMake/_Include.cmake

+9
Original file line numberDiff line numberDiff line change
@@ -100,12 +100,21 @@ include(CheckThreads)
100100
include(CheckVisibility)
101101
include(InstallPublicHeaders)
102102

103+
function(pkgconfig_export VAR VAL)
104+
get_property(PREV GLOBAL PROPERTY PKGCONFIG_${VAR})
105+
set_property(GLOBAL PROPERTY PKGCONFIG_${VAR} "${PREV} ${VAL}")
106+
endfunction()
107+
macro(pkgconfig_import VAR)
108+
get_property(PKGCONFIG_${VAR} GLOBAL PROPERTY PKGCONFIG_${VAR})
109+
endmacro()
110+
103111
## sasl
104112
configure_define_01(LIBMEMCACHED_WITH_SASL_SUPPORT)
105113
if(ENABLE_SASL)
106114
check_dependency(LIBSASL sasl2)
107115
if(HAVE_LIBSASL)
108116
set(LIBMEMCACHED_WITH_SASL_SUPPORT 1)
117+
pkgconfig_export(REQUIRES libsasl2)
109118
endif()
110119
endif()
111120

src/libhashkit/CMakeLists.txt

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ if(ENABLE_OPENSSL_CRYPTO)
4646
if(OPENSSL_CRYPTO_LIBRARY)
4747
target_compile_definitions(libhashkit PRIVATE HAVE_OPENSSL_CRYPTO)
4848
target_link_libraries(libhashkit PUBLIC OpenSSL::Crypto)
49+
pkgconfig_export(REQUIRES_PRIVATE libcrypto)
4950
else()
5051
message(WARNING "Could not find OpenSSL::Crypto")
5152
endif()

support/CMakeLists.txt

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/example.cnf
1010
DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}
1111
)
1212

13+
pkgconfig_import(REQUIRES)
14+
pkgconfig_import(REQUIRES_PRIVATE)
1315
configure_file(libmemcached.pc.in libmemcached.pc @ONLY)
1416
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/libmemcached.pc
1517
COMPONENT dev

support/libmemcached.pc.in

+2
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ Description: libmemcached C/C++ library
99
Version: @PROJECT_VERSION@
1010
Libs: -L@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_LIBDIR@ -lmemcached -lmemcachedutil
1111
Cflags: -I@CMAKE_INSTALL_PREFIX@/@CMAKE_INSTALL_INCLUDEDIR@
12+
Requires: @PKGCONFIG_REQUIRES@
13+
Requires.private: @PKGCONFIG_REQUIRES_PRIVATE@

0 commit comments

Comments
 (0)