This commit is contained in:
Cristian Morales Vega 2022-11-01 05:21:18 +09:00 committed by GitHub
commit 73346d512c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 38 additions and 2 deletions

View File

@ -456,10 +456,21 @@ file(RELATIVE_PATH top_builddir "${CMAKE_CURRENT_BINARY_DIR}/dir" "${CMAKE_CURRE
set(abs_top_srcdir "${CMAKE_CURRENT_SOURCE_DIR}")
set(abs_top_builddir "${CMAKE_CURRENT_BINARY_DIR}")
# libnghttp2.pc (pkg-config file)
if(RELOCATABLE_PKGCONFIG)
file(RELATIVE_PATH PKGCONF_TO_PREFIX "${CMAKE_INSTALL_FULL_LIBDIR}/pkgconfig" "${CMAKE_INSTALL_PREFIX}")
file(RELATIVE_PATH EXEC_PREFIX_TO_LIBDIR "${CMAKE_INSTALL_PREFIX}" "${CMAKE_INSTALL_FULL_LIBDIR}")
file(RELATIVE_PATH PREFIX_TO_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}" "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
set(prefix "\${pcfiledir}/${PKGCONF_TO_PREFIX}")
set(exec_prefix "\${prefix}")
set(libdir "\${exec_prefix}/${EXEC_PREFIX_TO_LIBDIR}")
set(includedir "\${prefix}/${PREFIX_TO_INCLUDEDIR}")
else()
set(prefix "${CMAKE_INSTALL_PREFIX}")
set(exec_prefix "${CMAKE_INSTALL_PREFIX}")
set(libdir "${CMAKE_INSTALL_FULL_LIBDIR}")
set(includedir "${CMAKE_INSTALL_FULL_INCLUDEDIR}")
endif()
set(VERSION "${PACKAGE_VERSION}")
# For init scripts and systemd service file (in contrib/)
set(bindir "${CMAKE_INSTALL_FULL_BINDIR}")
@ -505,6 +516,27 @@ set(PKGLIBDIR "${CMAKE_INSTALL_FULL_LIBDIR}/${CMAKE_PROJECT_NAME}")
install(FILES README.rst DESTINATION "${CMAKE_INSTALL_DOCDIR}")
install(
EXPORT nghttp2-targets
DESTINATION "${CMAKE_INSTALL_LIBDIR}/cmake/nghttp2"
NAMESPACE nghttp2::
FILE nghttp2-config.cmake
)
include(CMakePackageConfigHelpers)
write_basic_package_version_file(
nghttp2-config-version.cmake
VERSION ${nghttp2_VERSION}
COMPATIBILITY SameMajorVersion
)
install(
FILES
"${CMAKE_CURRENT_BINARY_DIR}/nghttp2-config-version.cmake"
DESTINATION
"${CMAKE_INSTALL_LIBDIR}/cmake/nghttp2"
)
add_subdirectory(lib)
#add_subdirectory(lib/includes)
add_subdirectory(third-party)

View File

@ -28,4 +28,6 @@ option(WITH_MRUBY "Use mruby")
option(WITH_NEVERBLEED "Use neverbleed")
option(WITH_LIBBPF "Use libbpf")
option(RELOCATABLE_PKGCONFIG "Make the pkg-config files relocatable")
# vim: ft=cmake:

View File

@ -47,11 +47,13 @@ if(ENABLE_SHARED_LIB)
C_VISIBILITY_PRESET hidden
)
target_include_directories(nghttp2 INTERFACE
"${CMAKE_CURRENT_BINARY_DIR}/includes"
"${CMAKE_CURRENT_SOURCE_DIR}/includes"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/includes>"
"$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/includes>"
"$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>"
)
install(TARGETS nghttp2
EXPORT nghttp2-targets
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}"
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}"
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")