Generate pkg-config file via CMake (#9945)
Summary: Fixes https://github.com/facebook/rocksdb/issues/7934 Pull Request resolved: https://github.com/facebook/rocksdb/pull/9945 Test Plan: Built via Homebrew pointing to my fork/branch: ``` ~/src/github.com/facebook/fbthrift on main ❯ cat ~/.homebrew/opt/rocksdb/lib/pkgconfig/rocksdb.pc took 1h 17m 48s at 04:24:54 pm prefix="/Users/trynity/.homebrew/Cellar/rocksdb/HEAD-968e4dd" exec_prefix="${prefix}" libdir="${prefix}/lib" includedir="${prefix}/include" Name: rocksdb Description: An embeddable persistent key-value store for fast storage URL: https://rocksdb.org/ Version: 7.3.0 Cflags: -I"${includedir}" Libs: -L"${libdir}" -lrocksdb ``` Reviewed By: riversand963 Differential Revision: D36161635 Pulled By: trynity fbshipit-source-id: 0f1a9c30e43797ee65e6696896e06fde0658456e
This commit is contained in:
parent
9d634dd5b6
commit
e62c23cce4
@ -40,6 +40,8 @@ include(GoogleTest)
|
|||||||
get_rocksdb_version(rocksdb_VERSION)
|
get_rocksdb_version(rocksdb_VERSION)
|
||||||
project(rocksdb
|
project(rocksdb
|
||||||
VERSION ${rocksdb_VERSION}
|
VERSION ${rocksdb_VERSION}
|
||||||
|
DESCRIPTION "An embeddable persistent key-value store for fast storage"
|
||||||
|
HOMEPAGE_URL https://rocksdb.org/
|
||||||
LANGUAGES CXX C ASM)
|
LANGUAGES CXX C ASM)
|
||||||
|
|
||||||
if(POLICY CMP0042)
|
if(POLICY CMP0042)
|
||||||
@ -1121,6 +1123,12 @@ if(NOT WIN32 OR ROCKSDB_INSTALL_ON_WINDOWS)
|
|||||||
COMPATIBILITY SameMajorVersion
|
COMPATIBILITY SameMajorVersion
|
||||||
)
|
)
|
||||||
|
|
||||||
|
configure_file(
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc.in
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc
|
||||||
|
@ONLY
|
||||||
|
)
|
||||||
|
|
||||||
install(DIRECTORY include/rocksdb COMPONENT devel DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
install(DIRECTORY include/rocksdb COMPONENT devel DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}")
|
||||||
|
|
||||||
install(DIRECTORY "${PROJECT_SOURCE_DIR}/cmake/modules" COMPONENT devel DESTINATION ${package_config_destination})
|
install(DIRECTORY "${PROJECT_SOURCE_DIR}/cmake/modules" COMPONENT devel DESTINATION ${package_config_destination})
|
||||||
@ -1159,6 +1167,13 @@ if(NOT WIN32 OR ROCKSDB_INSTALL_ON_WINDOWS)
|
|||||||
COMPONENT devel
|
COMPONENT devel
|
||||||
DESTINATION ${package_config_destination}
|
DESTINATION ${package_config_destination}
|
||||||
)
|
)
|
||||||
|
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc
|
||||||
|
COMPONENT devel
|
||||||
|
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
|
||||||
|
)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
option(WITH_ALL_TESTS "Build all test, rather than a small subset" ON)
|
option(WITH_ALL_TESTS "Build all test, rather than a small subset" ON)
|
||||||
|
11
rocksdb.pc.in
Normal file
11
rocksdb.pc.in
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
prefix="@CMAKE_INSTALL_PREFIX@"
|
||||||
|
exec_prefix="${prefix}"
|
||||||
|
libdir="${prefix}/lib"
|
||||||
|
includedir="${prefix}/include"
|
||||||
|
|
||||||
|
Name: @PROJECT_NAME@
|
||||||
|
Description: @CMAKE_PROJECT_DESCRIPTION@
|
||||||
|
URL: @CMAKE_PROJECT_HOMEPAGE_URL@
|
||||||
|
Version: @PROJECT_VERSION@
|
||||||
|
Cflags: -I"${includedir}"
|
||||||
|
Libs: -L"${libdir}" -lrocksdb
|
Loading…
Reference in New Issue
Block a user