From 88c0adfc4892aa65f37dceeaffc4f247c01e6ca3 Mon Sep 17 00:00:00 2001 From: Ionel-Cristinel ANICHITEI Date: Wed, 18 Nov 2020 14:21:08 +0200 Subject: [PATCH] Add support for find_package --- CMakeLists.txt | 22 ++++++++++++++++++++++ bddisasmConfig.cmake.in | 13 +++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 bddisasmConfig.cmake.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 48c6839..04cd498 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -126,11 +126,33 @@ CONFIGURE_FILE("${CMAKE_STATIC_LIBRARY_PREFIX}bddisasm.pc.in" ) INSTALL(TARGETS bddisasm bdshemu + EXPORT bddisasmTargets LIBRARY DESTINATION "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" ARCHIVE DESTINATION "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}" PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/bddisasm" ) +set(CMAKE_INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/cmake/bddisasm) +install(EXPORT bddisasmTargets + DESTINATION ${CMAKE_INSTALL_CONFIGDIR} + ) + +include(CMakePackageConfigHelpers) + +configure_package_config_file(${PROJECT_SOURCE_DIR}/bddisasmConfig.cmake.in ${PROJECT_BINARY_DIR}/bddisasmConfig.cmake + INSTALL_DESTINATION ${CMAKE_INSTALL_CONFIGDIR} + PATH_VARS CMAKE_INSTALL_FULL_INCLUDEDIR CMAKE_INSTALL_FULL_LIBDIR + ) + +write_basic_package_version_file(${PROJECT_BINARY_DIR}/bddisasmConfigVersion.cmake + VERSION ${PROJECT_VERSION} + COMPATIBILITY SameMajorVersion + ) + +install(FILES ${PROJECT_BINARY_DIR}/bddisasmConfig.cmake ${PROJECT_BINARY_DIR}/bddisasmConfigVersion.cmake + DESTINATION ${CMAKE_INSTALL_CONFIGDIR} + ) + INSTALL(FILES "${PROJECT_SOURCE_DIR}/${CMAKE_STATIC_LIBRARY_PREFIX}bddisasm.pc" DESTINATION "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}/pkgconfig" ) diff --git a/bddisasmConfig.cmake.in b/bddisasmConfig.cmake.in new file mode 100644 index 0000000..8dd7328 --- /dev/null +++ b/bddisasmConfig.cmake.in @@ -0,0 +1,13 @@ +@PACKAGE_INIT@ + +set(BDDISASM_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@") +set(BDDISASM_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@") +set(BDDISASM_LIBRARY_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_LIBDIR@") + +include(${CMAKE_CURRENT_LIST_DIR}/bddisasmTargets.cmake) + +set(BDDISASM_LIBRARIES @PRIVATE_LIBS@) + +check_required_components(bddisasm) +check_required_components(bdshemu) +set(BDDISASM_FOUND 1)