early-access version 2853
This commit is contained in:
17
externals/vcpkg/ports/omplapp/fix_boost_static_link.patch
vendored
Executable file
17
externals/vcpkg/ports/omplapp/fix_boost_static_link.patch
vendored
Executable file
@@ -0,0 +1,17 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 4b391b5..24d2c66 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -36,10 +36,10 @@ set(OMPL_DEMO_INSTALL_DIR "${CMAKE_INSTALL_DATAROOTDIR}/ompl/demos"
|
||||
set(OMPL_CMAKE_UTIL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ompl/CMakeModules"
|
||||
CACHE FILEPATH "Path to directory with auxiliary CMake scripts for OMPL")
|
||||
|
||||
-if(MSVC)
|
||||
+if(false)
|
||||
add_definitions(-DBOOST_ALL_NO_LIB)
|
||||
add_definitions(-DBOOST_PROGRAM_OPTIONS_DYN_LINK)
|
||||
-endif(MSVC)
|
||||
+endif(false)
|
||||
# Ensure dynamic linking with boost unit_test_framework
|
||||
add_definitions(-DBOOST_TEST_DYN_LINK)
|
||||
# Avoid valgrind error due to overflow error, cf. https://bitbucket.org/ompl/ompl/issues/543
|
||||
128
externals/vcpkg/ports/omplapp/fix_dependency.patch
vendored
Executable file
128
externals/vcpkg/ports/omplapp/fix_dependency.patch
vendored
Executable file
@@ -0,0 +1,128 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index 4c7e690..4b391b5 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -73,12 +73,15 @@ set_package_properties(OpenGL PROPERTIES
|
||||
URL "http://opengl.org"
|
||||
PURPOSE "Used to render graphics in ompl_app.")
|
||||
set(OpenGL_GL_PREFERENCE GLVND)
|
||||
-find_package(OpenGL)
|
||||
+if (OMPLAPP_WITH_OPENGL)
|
||||
+find_package(OpenGL REQUIRED)
|
||||
+endif()
|
||||
set_package_properties(Python PROPERTIES
|
||||
URL "http://python.org"
|
||||
PURPOSE "Used for python bindings.")
|
||||
# This includes our own FindPython.cmake in ompl/CMakeModules. It defines,
|
||||
# among other things, the find_python_module() function used below.
|
||||
+if (OMPLAPP_WITH_PYTHON)
|
||||
find_package(Python)
|
||||
find_boost_python()
|
||||
|
||||
@@ -105,55 +108,76 @@ find_python_module(OpenGL)
|
||||
if (NOT OPENGL_FOUND OR NOT PY_OPENGL)
|
||||
message(WARNING "Both OpenGL and the Python OpenGL module need to be installed to use the GUI")
|
||||
endif()
|
||||
+endif()
|
||||
set_package_properties(Eigen3 PROPERTIES
|
||||
URL "http://eigen.tuxfamily.org"
|
||||
PURPOSE "A linear algebra library used throughout OMPL.")
|
||||
-find_package(Eigen3 REQUIRED)
|
||||
+find_package(Eigen3 CONFIG REQUIRED)
|
||||
set_package_properties(Triangle PROPERTIES
|
||||
URL "http://www.cs.cmu.edu/~quake/triangle.html"
|
||||
PURPOSE "Used to create triangular decompositions of polygonal 2D environments.")
|
||||
+if (OMPLAPP_WITH_TRIANGLE)
|
||||
find_package(Triangle QUIET)
|
||||
+endif()
|
||||
set_package_properties(flann PROPERTIES
|
||||
URL "https://github.com/mariusmuja/flann"
|
||||
PURPOSE "If detetected, FLANN can be used for nearest neighbor queries by OMPL.")
|
||||
+if (OMPLAPP_WITH_FLANN)
|
||||
find_package(flann 1.8.3 QUIET)
|
||||
+endif()
|
||||
set_package_properties(spot PROPERTIES
|
||||
URL "http://spot.lrde.epita.fr"
|
||||
PURPOSE "Used for constructing finite automata from LTL formulae.")
|
||||
+if (OMPLAPP_WITH_SPOT)
|
||||
find_package(spot)
|
||||
+endif()
|
||||
set_package_properties(MORSE PROPERTIES
|
||||
URL "https://www.openrobots.org/wiki/morse"
|
||||
PURPOSE "OMPL includes a plugin for the MORSE Robot Simulation engine.")
|
||||
+if (OMPLAPP_WITH_MORSE)
|
||||
find_package(MORSE QUIET)
|
||||
+endif()
|
||||
set_package_properties(ODE PROPERTIES
|
||||
URL "http://ode.org"
|
||||
PURPOSE "The Open Dynamics Engine can be used as a \"black box\" for kinodynamic planning.")
|
||||
-find_package(ODE QUIET)
|
||||
+if (OMPLAPP_WITH_ODE)
|
||||
+find_package(ODE CONFIG REQUIRED)
|
||||
+set(ODE_LIBRARIES ODE::ODE)
|
||||
+endif()
|
||||
set_package_properties(Drawstuff PROPERTIES
|
||||
URL "http://ode.org"
|
||||
PURPOSE "Part of the ODE source distribution, used in one demo program.")
|
||||
+if (OMPLAPP_WITH_DRAWSTUFF)
|
||||
find_package(Drawstuff QUIET)
|
||||
+endif()
|
||||
set_package_properties(assimp PROPERTIES
|
||||
URL "http://assimp.org"
|
||||
PURPOSE "Used in ompl_app for reading meshes representing robots and environments.")
|
||||
-find_package(assimp REQUIRED)
|
||||
+find_package(assimp CONFIG REQUIRED)
|
||||
+set(ASSIMP_LIBRARIES assimp::assimp)
|
||||
set_package_properties(ccd PROPERTIES
|
||||
URL "https://github.com/danfis/libccd"
|
||||
PURPOSE "Collision detection library used by fcl.")
|
||||
-find_package(ccd REQUIRED)
|
||||
+find_package(ccd CONFIG REQUIRED)
|
||||
set_package_properties(fcl PROPERTIES
|
||||
URL "https://github.com/flexible-collision-library/fcl"
|
||||
PURPOSE "The default collision checking library.")
|
||||
+if (OMPLAPP_WITH_OCTOMAP)
|
||||
find_package(octomap QUIET)
|
||||
+endif()
|
||||
find_package(fcl REQUIRED)
|
||||
set_package_properties(Threads PROPERTIES
|
||||
URL "https://en.wikipedia.org/wiki/POSIX_Threads"
|
||||
PURPOSE "Pthreads is sometimes needed, depending on OS / compiler.")
|
||||
+if (OMPLAPP_WITH_THREADS)
|
||||
find_package(Threads QUIET)
|
||||
+endif()
|
||||
set_package_properties(Doxygen PROPERTIES
|
||||
URL "http://doxygen.org"
|
||||
PURPOSE "Used to create the OMPL documentation (i.e., http://ompl.kavrakilab.org).")
|
||||
+if (OMPLAPP_WITH_DOXYGEN)
|
||||
find_package(Doxygen)
|
||||
+endif()
|
||||
|
||||
enable_testing()
|
||||
|
||||
@@ -177,9 +201,7 @@ include_directories(SYSTEM "${Boost_INCLUDE_DIR}")
|
||||
include_directories(
|
||||
"${OMPLAPP_INCLUDE_DIRS}"
|
||||
"${OMPL_INCLUDE_DIRS}"
|
||||
- "${EIGEN3_INCLUDE_DIR}"
|
||||
- "${FCL_INCLUDE_DIRS}"
|
||||
- "${ASSIMP_INCLUDE_DIRS}")
|
||||
+ "${FCL_INCLUDE_DIRS}")
|
||||
|
||||
# ROS installs fcl in /usr. In /usr/include/fcl/config.h it says octomap was
|
||||
# enabled. Octomap is installed in /opt/ros/${ROS_DISTRO}/include (most
|
||||
@@ -242,12 +264,14 @@ endif()
|
||||
set_package_properties(PQP PROPERTIES
|
||||
URL "http://gamma.cs.unc.edu/SSV/"
|
||||
PURPOSE "Used as an alternative, additional collision checking library (the default is FCL).")
|
||||
+IF (OMPLAPP_WITH_PQP)
|
||||
find_package(PQP QUIET)
|
||||
if(PQP_FOUND)
|
||||
include_directories("${PQP_INCLUDE_DIR}")
|
||||
set(OMPLAPP_MODULE_LIBRARIES ${OMPLAPP_MODULE_LIBRARIES} ${PQP_LIBRARY})
|
||||
set(OMPLAPP_LIBRARIES ${OMPLAPP_LIBRARIES} ${PQP_LIBRARY})
|
||||
endif()
|
||||
+endif()
|
||||
|
||||
add_subdirectory(ompl/doc)
|
||||
add_subdirectory(ompl/src)
|
||||
89
externals/vcpkg/ports/omplapp/portfile.cmake
vendored
Executable file
89
externals/vcpkg/ports/omplapp/portfile.cmake
vendored
Executable file
@@ -0,0 +1,89 @@
|
||||
vcpkg_buildpath_length_warning(37)
|
||||
|
||||
set(OMPL_VERSION 1.5.1)
|
||||
|
||||
vcpkg_download_distfile(ARCHIVE
|
||||
URLS "https://github.com/ompl/omplapp/releases/download/1.5.1/omplapp-1.5.1-Source.tar.gz"
|
||||
FILENAME "omplapp-${OMPL_VERSION}.tar.gz"
|
||||
SHA512 83b1b09d6be776f7e15a748402f0c2f072459921de61a92731daf5171bd1f91a829fbeb6e10a489b92fba0297f6272e7bb6b8f07830c387bb29ccdbc7b3731f3
|
||||
)
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
|
||||
set(STATIC_PATCH fix_boost_static_link.patch)
|
||||
endif()
|
||||
|
||||
vcpkg_extract_source_archive_ex(
|
||||
OUT_SOURCE_PATH SOURCE_PATH
|
||||
ARCHIVE ${ARCHIVE}
|
||||
REF ${OMPL_VERSION}
|
||||
PATCHES
|
||||
fix_dependency.patch
|
||||
${STATIC_PATCH}
|
||||
)
|
||||
|
||||
vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
|
||||
FEATURES
|
||||
ode OMPLAPP_WITH_ODE
|
||||
opengl OMPLAPP_WITH_OPENGL
|
||||
threads OMPLAPP_WITH_THREADS
|
||||
)
|
||||
|
||||
vcpkg_cmake_configure(
|
||||
SOURCE_PATH "${SOURCE_PATH}"
|
||||
DISABLE_PARALLEL_CONFIGURE
|
||||
OPTIONS
|
||||
${FEATURE_OPTIONS}
|
||||
-DOMPL_VERSIONED_INSTALL=OFF
|
||||
-DOMPL_REGISTRATION=OFF
|
||||
-DOMPL_BUILD_DEMOS=OFF
|
||||
-DOMPL_BUILD_TESTS=OFF
|
||||
-DOMPL_BUILD_PYBINDINGS=OFF
|
||||
-DOMPL_BUILD_PYTESTS=OFF
|
||||
# Not implement
|
||||
-DOMPLAPP_WITH_PYTHON=OFF
|
||||
-DOMPLAPP_WITH_TRIANGLE=OFF
|
||||
-DOMPLAPP_WITH_OCTOMAP=OFF
|
||||
-DOMPLAPP_WITH_FLANN=OFF # Requires 1.8.3
|
||||
# Missing dependencies in vcpkg
|
||||
-DOMPLAPP_WITH_SPOT=OFF
|
||||
-DOMPLAPP_WITH_MORSE=OFF
|
||||
-DOMPLAPP_WITH_DRAWSTUFF=OFF
|
||||
-DOMPLAPP_WITH_PQP=OFF
|
||||
-DOMPLAPP_WITH_DOXYGEN=OFF
|
||||
)
|
||||
|
||||
vcpkg_cmake_install()
|
||||
|
||||
vcpkg_cmake_config_fixup(CONFIG_PATH share/ompl/cmake)
|
||||
|
||||
# Remove debug distribution and other, move ompl_benchmark to tools/ dir
|
||||
vcpkg_copy_tools(TOOL_NAMES ompl_benchmark AUTO_CLEAN)
|
||||
file(REMOVE_RECURSE
|
||||
"${CURRENT_PACKAGES_DIR}/include/ompl"
|
||||
"${CURRENT_PACKAGES_DIR}/bin"
|
||||
"${CURRENT_PACKAGES_DIR}/include/omplapp/CMakeFiles"
|
||||
"${CURRENT_PACKAGES_DIR}/lib/ompl.lib"
|
||||
"${CURRENT_PACKAGES_DIR}/share/ompl"
|
||||
"${CURRENT_PACKAGES_DIR}/share/man"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/bin"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/include"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/lib/ompl.lib"
|
||||
"${CURRENT_PACKAGES_DIR}/debug/share"
|
||||
)
|
||||
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/omplapp/config.h" "#define OMPLAPP_RESOURCE_DIR \"${CURRENT_PACKAGES_DIR}/share/ompl/resources\"" "")
|
||||
|
||||
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
|
||||
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/bin" "${CURRENT_PACKAGES_DIR}/debug/bin")
|
||||
endif()
|
||||
|
||||
if(NOT VCPKG_TARGET_IS_WINDOWS)
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/lib/pkgconfig/ompl.pc" "assimp::assimp" "assimp")
|
||||
if(NOT VCPKG_BUILD_TYPE)
|
||||
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/debug/lib/pkgconfig/ompl.pc" "assimp::assimp" "assimp")
|
||||
endif()
|
||||
vcpkg_fixup_pkgconfig()
|
||||
endif()
|
||||
|
||||
# Handle copyright
|
||||
file(INSTALL "${SOURCE_PATH}/LICENSE" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
|
||||
46
externals/vcpkg/ports/omplapp/vcpkg.json
vendored
Executable file
46
externals/vcpkg/ports/omplapp/vcpkg.json
vendored
Executable file
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"name": "omplapp",
|
||||
"version": "1.5.1",
|
||||
"port-version": 3,
|
||||
"description": "Use OMPL for reading meshes and performing collision checking",
|
||||
"homepage": "https://ompl.kavrakilab.org/",
|
||||
"dependencies": [
|
||||
"assimp",
|
||||
"boost-filesystem",
|
||||
"boost-program-options",
|
||||
"boost-serialization",
|
||||
"boost-system",
|
||||
"ccd",
|
||||
"eigen3",
|
||||
"fcl",
|
||||
"ompl",
|
||||
{
|
||||
"name": "vcpkg-cmake",
|
||||
"host": true
|
||||
},
|
||||
{
|
||||
"name": "vcpkg-cmake-config",
|
||||
"host": true
|
||||
}
|
||||
],
|
||||
"features": {
|
||||
"ode": {
|
||||
"description": "Build with Open Dynamics Engine support",
|
||||
"dependencies": [
|
||||
"ode"
|
||||
]
|
||||
},
|
||||
"opengl": {
|
||||
"description": "Build with OpenGL support",
|
||||
"dependencies": [
|
||||
"opengl"
|
||||
]
|
||||
},
|
||||
"threads": {
|
||||
"description": "Build with Threads support",
|
||||
"dependencies": [
|
||||
"pthreads"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user