mirror of
https://github.com/microsoft/vcpkg.git
synced 2025-01-18 09:53:01 +08:00
commit
83464ec5b7
81
ports/fcl/0001_fix_package_detection.patch
Normal file
81
ports/fcl/0001_fix_package_detection.patch
Normal file
@ -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
|
||||
|
4
ports/fcl/CONTROL
Normal file
4
ports/fcl/CONTROL
Normal file
@ -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
|
42
ports/fcl/portfile.cmake
Normal file
42
ports/fcl/portfile.cmake
Normal file
@ -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)
|
Loading…
Reference in New Issue
Block a user