diff --git a/CMakeLists.txt b/CMakeLists.txt index 11887ad..3f0fa52 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,4 @@ -cmake_minimum_required(VERSION 2.8.4) +cmake_minimum_required(VERSION 3.0.2) project(redox) set(REDOX_VERSION_MAJOR 0) @@ -193,6 +193,11 @@ endif() if (lib) # Install the dynamic library to /usr/lib[64] install(TARGETS redox DESTINATION lib${LIB_SUFFIX}) + # Generate the redox.pc pkg-config file in /usr/lib[64]/pkgconfig + get_filename_component(HIREDIS_LIBRARY_DIRECTORY ${HIREDIS_LIBRARIES} DIRECTORY) + get_filename_component(LIBEV_LIBRARY_DIRECTORY ${LIBEV_LIBRARIES} DIRECTORY) + configure_file("${CMAKE_HOME_DIRECTORY}/cmake/redox.pc.in" "${PROJECT_BINARY_DIR}/redox.pc" @ONLY) + install(FILES "${PROJECT_BINARY_DIR}/redox.pc" DESTINATION lib${LIB_SUFFIX}/pkgconfig/) endif() if (static_lib) diff --git a/cmake/redox.pc.in b/cmake/redox.pc.in new file mode 100644 index 0000000..1574542 --- /dev/null +++ b/cmake/redox.pc.in @@ -0,0 +1,11 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=${prefix} +libdir=${prefix}/lib@LIB_SUFFIX@ +includedir=${prefix}/include + +Name: redox +Description: Modern, asynchronous, and wicked fast C++11 client for Redis +Version: @REDOX_VERSION_STRING@ + +Libs: -L${libdir} -lredox -L@HIREDIS_LIBRARY_DIRECTORY@ -lhiredis -L@LIBEV_LIBRARY_DIRECTORY@ -lev @CMAKE_THREAD_LIBS_INIT@ +Cflags: -I${includedir} -I@HIREDIS_INCLUDE_DIRS@