[ignition-cmake2] Add new port 🤖 (#10014)

* ignition-modularscripts: move CMake config files only if necessary

Some ignition libraries (such as ignition-cmake2) already install the
CMake config file in the location required by vcpkg

* Add new port ignition-cmake2
This commit is contained in:
Silvio Traversaro 2020-03-11 00:49:53 +01:00 committed by GitHub
parent b813a777e8
commit 249b8555eb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 37 additions and 15 deletions

View File

@ -0,0 +1,5 @@
Source: ignition-cmake2
Version: 2.1.1
Homepage: https://ignitionrobotics.org/libs/cmake
Description: CMake helper functions for building robotic applications
Build-Depends: ignition-modularscripts

View File

@ -0,0 +1,16 @@
include(${CURRENT_INSTALLED_DIR}/share/ignitionmodularscripts/ignition_modular_library.cmake)
set(PACKAGE_VERSION "2.1.1")
ignition_modular_library(NAME cmake
VERSION ${PACKAGE_VERSION}
SHA512 4d22a45ccc9582c7e4b370b884511782d1629fa3e257dd92300388b5050d22fa63dd4a6ef8942abb9ebbc300df4cd526d1d8a7088a92b0073e152c16c7b97e2b)
# Permit empty include folder
set(VCPKG_POLICY_EMPTY_INCLUDE_FOLDER enabled)
# Remove unneccessary directory, as ignition-cmake is a pure CMake package
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/lib ${CURRENT_PACKAGES_DIR}/debug)
# Install custom usage
configure_file(${CMAKE_CURRENT_LIST_DIR}/usage ${CURRENT_PACKAGES_DIR}/share/${PORT}/usage @ONLY)

View File

@ -0,0 +1,3 @@
The package ignition-cmake2 provides CMake integration:
find_package(ignition-cmake2 CONFIG REQUIRED)

View File

@ -1,3 +1,3 @@
Source: ignition-modularscripts
Version: 2019-09-11
Version: 2020-02-10
Description: Vcpkg helpers to package ignition libraries

View File

@ -8,23 +8,21 @@ function(ignition_modular_build_library NAME MAJOR_VERSION SOURCE_PATH CMAKE_PAC
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/${CMAKE_PACKAGE_NAME}" TARGET_PATH "share/${CMAKE_PACKAGE_NAME}")
# If necessary, move the CMake config files
if(EXISTS "${CURRENT_PACKAGES_DIR}/lib/cmake")
vcpkg_fixup_cmake_targets(CONFIG_PATH "lib/cmake/${CMAKE_PACKAGE_NAME}" TARGET_PATH "share/${CMAKE_PACKAGE_NAME}")
file(GLOB_RECURSE CMAKE_RELEASE_FILES
"${CURRENT_PACKAGES_DIR}/lib/cmake/${CMAKE_PACKAGE_NAME}/*")
file(GLOB_RECURSE CMAKE_RELEASE_FILES
"${CURRENT_PACKAGES_DIR}/lib/cmake/${CMAKE_PACKAGE_NAME}/*")
file(COPY ${CMAKE_RELEASE_FILES} DESTINATION
"${CURRENT_PACKAGES_DIR}/share/${CMAKE_PACKAGE_NAME}/")
file(COPY ${CMAKE_RELEASE_FILES} DESTINATION
"${CURRENT_PACKAGES_DIR}/share/${CMAKE_PACKAGE_NAME}/")
# Remove debug files
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include
${CURRENT_PACKAGES_DIR}/debug/lib/cmake
${CURRENT_PACKAGES_DIR}/debug/share)
# Post-build test for cmake libraries
vcpkg_test_cmake(PACKAGE_NAME ${CMAKE_PACKAGE_NAME})
# Remove debug files
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include
${CURRENT_PACKAGES_DIR}/debug/lib/cmake
${CURRENT_PACKAGES_DIR}/debug/share)
endif()
# Find the relevant license file and install it
if(EXISTS "${SOURCE_PATH}/LICENSE")