comparison cmake/export/CMakeLists.txt @ 711:fc66cc9706a7

CMake: export pkg-config files, closes #874 @1h While here rename libcommon to libirccd-core to avoid collision when installed. For consistency, rename libirccdctl to libirccd-ctl.
author David Demelier <markand@malikania.fr>
date Sat, 07 Jul 2018 15:40:46 +0200
parents a17de53db29b
children 8c44bbcbbab9
comparison
equal deleted inserted replaced
710:a17de53db29b 711:fc66cc9706a7
16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 16 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17 # 17 #
18 18
19 include(CMakePackageConfigHelpers) 19 include(CMakePackageConfigHelpers)
20 20
21 # CMake export files.
21 write_basic_package_version_file( 22 write_basic_package_version_file(
22 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake 23 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
23 VERSION ${IRCCD_VERSION} 24 VERSION ${IRCCD_VERSION}
24 COMPATIBILITY SameMajorVersion 25 COMPATIBILITY SameMajorVersion
25 ) 26 )
36 ${CMAKE_CURRENT_SOURCE_DIR}/irccd-config.cmake 37 ${CMAKE_CURRENT_SOURCE_DIR}/irccd-config.cmake
37 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake 38 ${CMAKE_CURRENT_BINARY_DIR}/irccd-config-version.cmake
38 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd 39 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/irccd
39 COMPONENT Devel 40 COMPONENT Devel
40 ) 41 )
42
43 # pkg-config files.
44 if (IRCCD_WITH_PKGCONFIG)
45 # Since javascript is optional, add it only if required.
46 if (IRCCD_HAVE_JS)
47 set(IRCCD_EXTRA_REQUIRES libirccd-js)
48 endif ()
49 if (IRCCD_HAVE_SSL)
50 set(IRCCD_EXTRA_LIBS "-lssl -lcrypto")
51 endif ()
52
53 foreach (pkg libirccd-core libirccd libirccd-ctl libirccd-js libirccd-test)
54 configure_file(
55 ${CMAKE_CURRENT_SOURCE_DIR}/${pkg}.pc
56 ${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
57 @ONLY
58 )
59 install(
60 FILES ${CMAKE_CURRENT_BINARY_DIR}/${pkg}.pc
61 DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig
62 )
63 endforeach ()
64 endif ()