forked from microsoft/vcpkg
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
3 changed files
with
127 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,81 @@ | ||
From c43e3771cc2ec314191e5d4a5b485aab258c1b18 Mon Sep 17 00:00:00 2001 | ||
From: Mikhail Paulyshka <[email protected]> | ||
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 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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) |