diff options
| author | Mikhail Paulyshka <me@mixaill.tk> | 2017-08-27 04:18:26 +0300 |
|---|---|---|
| committer | Mikhail Paulyshka <me@mixaill.tk> | 2017-08-27 04:18:26 +0300 |
| commit | 36d359679a6df150b3ed595da6c085732fff515d (patch) | |
| tree | 41c55555522853bfdbd0543b1b9adee6c9939c05 | |
| parent | 3a026cbe21881dc35278c2c7946b3b12b7815d09 (diff) | |
| download | vcpkg-36d359679a6df150b3ed595da6c085732fff515d.tar.gz vcpkg-36d359679a6df150b3ed595da6c085732fff515d.zip | |
[FCL] add version 0.5.0
| -rw-r--r-- | ports/fcl/0001_fix_package_detection.patch | 81 | ||||
| -rw-r--r-- | ports/fcl/CONTROL | 4 | ||||
| -rw-r--r-- | ports/fcl/portfile.cmake | 42 |
3 files changed, 127 insertions, 0 deletions
diff --git a/ports/fcl/0001_fix_package_detection.patch b/ports/fcl/0001_fix_package_detection.patch new file mode 100644 index 000000000..9ae1b60e5 --- /dev/null +++ b/ports/fcl/0001_fix_package_detection.patch @@ -0,0 +1,81 @@ +From c43e3771cc2ec314191e5d4a5b485aab258c1b18 Mon Sep 17 00:00:00 2001 +From: Mikhail Paulyshka <me@mixaill.tk> +Date: Sun, 27 Aug 2017 04:12:36 +0300 +Subject: [PATCH] use cmake-exports for package detection + +--- + CMakeLists.txt | 48 +++--------------------------------------------- + 1 file changed, 3 insertions(+), 45 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 5a4a559..8978b61 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -65,32 +65,11 @@ if(FCL_COVERALLS) + endif() + + # Find Octomap (optional) +-find_package(PkgConfig QUIET) +- + option(FCL_WITH_OCTOMAP "octomap library support" ON) + set(FCL_HAVE_OCTOMAP 0) + if(FCL_WITH_OCTOMAP) +- if(PKG_CONFIG_FOUND) +- pkg_check_modules(OCTOMAP QUIET octomap) +- endif() +- if(NOT OCTOMAP_FOUND) +- # if pkgconfig is not installed, then fall back on more fragile detection +- # of octomap +- find_path(OCTOMAP_INCLUDE_DIRS octomap.h +- PATH_SUFFIXES octomap) +- find_library(OCTOMAP_LIBRARY_DIRS +- ${CMAKE_SHARED_LIBRARY_PREFIX}octomap${CMAKE_SHARED_LIBRARY_SUFFIX}) +- if(OCTOMAP_INCLUDE_DIRS AND OCTOMAP_LIBRARY_DIRS) +- set(OCTOMAP_LIBRARIES "octomap;octomath") +- endif() +- endif() +- if (OCTOMAP_FOUND OR (OCTOMAP_INCLUDE_DIRS AND OCTOMAP_LIBRARY_DIRS)) +- string(REPLACE "." ";" VERSION_LIST ${OCTOMAP_VERSION}) +- list(GET VERSION_LIST 0 OCTOMAP_MAJOR_VERSION) +- list(GET VERSION_LIST 1 OCTOMAP_MINOR_VERSION) +- list(GET VERSION_LIST 2 OCTOMAP_PATCH_VERSION) +- include_directories(${OCTOMAP_INCLUDE_DIRS}) +- link_directories(${OCTOMAP_LIBRARY_DIRS}) ++ find_package(OCTOMAP REQUIRED) ++ if (OCTOMAP_FOUND) + set(FCL_HAVE_OCTOMAP 1) + message(STATUS "FCL uses Octomap") + else() +@@ -116,28 +95,7 @@ endif() + include_directories(BEFORE "include") + include_directories("${CMAKE_CURRENT_BINARY_DIR}/include") + +-if(PKG_CONFIG_FOUND) +- pkg_check_modules(CCD ccd) +- # check to see if the pkg is installed under the libccd name +- if(NOT CCD_FOUND) +- pkg_check_modules(CCD libccd) +- endif() +-endif() +- +-if(NOT CCD_FOUND) +- # if pkgconfig is not installed, then fall back on more fragile detection +- # of ccd +- find_path(CCD_INCLUDE_DIRS ccd/ccd.h) +- find_library(CCD_LIBRARY +- ${CMAKE_SHARED_LIBRARY_PREFIX}ccd${CMAKE_SHARED_LIBRARY_SUFFIX}) +- if(CCD_INCLUDE_DIRS AND CCD_LIBRARY) +- set(CCD_LIBRARIES "${CCD_LIBRARY}") +- else() +- message(FATAL_ERROR "Libccd is required by FCL") +- endif() +-endif() +-include_directories(${CCD_INCLUDE_DIRS}) +-link_directories(${CCD_LIBRARY_DIRS}) ++find_package(CCD REQUIRED) + + add_subdirectory(include/fcl) + add_subdirectory(src) +-- +2.12.2.windows.2 + diff --git a/ports/fcl/CONTROL b/ports/fcl/CONTROL new file mode 100644 index 000000000..c83593cb3 --- /dev/null +++ b/ports/fcl/CONTROL @@ -0,0 +1,4 @@ +Source: fcl +Version: 0.5.0-1 +Description: a library for performing three types of proximity queries on a pair of geometric models composed of triangles +Build-Depends: boost, ccd, octomap
\ No newline at end of file diff --git a/ports/fcl/portfile.cmake b/ports/fcl/portfile.cmake new file mode 100644 index 000000000..e0cee7e02 --- /dev/null +++ b/ports/fcl/portfile.cmake @@ -0,0 +1,42 @@ +include(vcpkg_common_functions) + +if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic) + message(STATUS "Warning: Dynamic building not supported yet. Building static.") + set(VCPKG_LIBRARY_LINKAGE static) +endif() + +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO flexible-collision-library/fcl + REF 54e9619bc2b084ee50e986ac3308160d663481c4 + SHA512 11bfa3fdeeda6766769a34d2248ca32b6b13ecb32b412c068aa1c7aa3495d55b3f7a82a93621965904f9813c3fd0f128a84f796ae5731d2ff15b85935a0e1261 + HEAD_REF fcl-0.5 +) + +vcpkg_apply_patches( + SOURCE_PATH ${SOURCE_PATH} + PATCHES + ${CMAKE_CURRENT_LIST_DIR}/0001_fix_package_detection.patch) + +if(VCPKG_LIBRARY_LINKAGE STREQUAL static) + set(FCL_STATIC_LIBRARY ON) +else() + set(FCL_STATIC_LIBRARY OFF) +endif() + +vcpkg_configure_cmake( + SOURCE_PATH ${SOURCE_PATH} + PREFER_NINJA + OPTIONS + -DFCL_STATIC_LIBRARY=${FCL_STATIC_LIBRARY} + -DFCL_BUILD_TESTS=OFF +) + +vcpkg_install_cmake() +vcpkg_copy_pdbs() + +vcpkg_fixup_cmake_targets(CONFIG_PATH "cmake/") + +file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include) + +file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/fcl RENAME copyright) |
