From ea720bbf595d48ea610cd32d2064fb0ecf98aa78 Mon Sep 17 00:00:00 2001 From: "Juan C. Santamaria" Date: Wed, 20 Feb 2019 13:23:21 -0500 Subject: [ompl] Add new port (#5350) * [ompl] Add new port Add new port for the https://github.com/ompl/ompl library * [ompl] Disable extra components * [ompl] Disable buggy CMake test --- ports/ompl/001-disable-extra-components.patch | 23 +++++++++++ ports/ompl/CONTROL | 4 ++ ports/ompl/portfile.cmake | 56 +++++++++++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 ports/ompl/001-disable-extra-components.patch create mode 100644 ports/ompl/CONTROL create mode 100644 ports/ompl/portfile.cmake diff --git a/ports/ompl/001-disable-extra-components.patch b/ports/ompl/001-disable-extra-components.patch new file mode 100644 index 000000000..b1bb8bc39 --- /dev/null +++ b/ports/ompl/001-disable-extra-components.patch @@ -0,0 +1,23 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fbde81b..da11bfe 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -173,12 +173,13 @@ endif() + # R is needed for running Planner Arena locally + find_program(R_EXEC R) + +-add_subdirectory(py-bindings) ++# VCPKG PATCH: Disable extra components from library. ++# add_subdirectory(py-bindings) + add_subdirectory(src) +-add_subdirectory(tests) +-add_subdirectory(demos) +-add_subdirectory(scripts) +-add_subdirectory(doc) ++# add_subdirectory(tests) ++# add_subdirectory(demos) ++# add_subdirectory(scripts) ++# add_subdirectory(doc) + + target_link_flags(ompl) + set(PKG_NAME "ompl") diff --git a/ports/ompl/CONTROL b/ports/ompl/CONTROL new file mode 100644 index 000000000..082853664 --- /dev/null +++ b/ports/ompl/CONTROL @@ -0,0 +1,4 @@ +Source: ompl +Version: 1.4.1-2 +Description: The Open Motion Planning Library, consists of many state-of-the-art sampling-based motion planning algorithms +Build-Depends: boost-disjoint-sets, boost-dynamic-bitset, boost-filesystem, boost-graph, boost-odeint, boost-program-options, boost-serialization, boost-system, boost-test, boost-ublas, eigen3 \ No newline at end of file diff --git a/ports/ompl/portfile.cmake b/ports/ompl/portfile.cmake new file mode 100644 index 000000000..b0814e3b1 --- /dev/null +++ b/ports/ompl/portfile.cmake @@ -0,0 +1,56 @@ +# Common Ambient Variables: +# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT} +# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET} +# CURRENT_PORT_DIR = ${VCPKG_ROOT_DIR}\ports\${PORT} +# PORT = current port name (zlib, etc) +# TARGET_TRIPLET = current triplet (x86-windows, x64-windows-static, etc) +# VCPKG_CRT_LINKAGE = C runtime linkage type (static, dynamic) +# VCPKG_LIBRARY_LINKAGE = target library linkage type (static, dynamic) +# VCPKG_ROOT_DIR = +# VCPKG_TARGET_ARCHITECTURE = target architecture (x64, x86, arm) +# + +include(vcpkg_common_functions) + +set(OMPL_VERSION 1.4.1) +vcpkg_download_distfile(ARCHIVE + URLS "https://github.com/ompl/ompl/archive/${OMPL_VERSION}.zip" + FILENAME "ompl-${OMPL_VERSION}.zip" + SHA512 2552476e86fdd4d61a5663d401c18f873424127d04d2342f1e0e5d4a15212b952c9de59f1a2483c2c71ee3cc3aadbe1b5912ae7fa262c218dd0b22daadfcd95c +) + +vcpkg_extract_source_archive_ex( + OUT_SOURCE_PATH SOURCE_PATH + ARCHIVE ${ARCHIVE} + REF ${OMPL_VERSION} + PATCHES + "001-disable-extra-components.patch" +) +# For some reason, demos and tests are being installed +# even when disabling the correct OMPL options. +# The "001-disable-extra-components.patch" avoids that issue. +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DOMPL_VERSIONED_INSTALL=OFF + -DOMPL_REGISTRATION=OFF + -DOMPL_BUILD_DEMOS=OFF + -DOMPL_BUILD_TESTS=OFF + -DOMPL_BUILD_PYBINDINGS=OFF + -DOMPL_BUILD_PYTESTS=OFF +) + +vcpkg_install_cmake() + +vcpkg_fixup_cmake_targets(CONFIG_PATH share/ompl/cmake) + +# Remove debug distribution +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share) + +# Handle copyright +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/ompl RENAME copyright) + +# Post-build test for cmake libraries +# vcpkg_test_cmake(PACKAGE_NAME ompl) -- cgit v1.2.3