aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/fcl
diff options
context:
space:
mode:
authorEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
committerEthan Morgan <ethan@gweithio.com>2026-02-14 16:44:06 +0000
commit54409423f767d8b1cf30cb7d0efca6b4ca138823 (patch)
treed915ac7828703ce4b963efdd9728a1777ba18c1e /vcpkg/ports/fcl
move to own git serverHEADmaster
Diffstat (limited to 'vcpkg/ports/fcl')
-rw-r--r--vcpkg/ports/fcl/dont-lower-c++-std.diff12
-rw-r--r--vcpkg/ports/fcl/portfile.cmake47
-rw-r--r--vcpkg/ports/fcl/vcpkg.json20
3 files changed, 79 insertions, 0 deletions
diff --git a/vcpkg/ports/fcl/dont-lower-c++-std.diff b/vcpkg/ports/fcl/dont-lower-c++-std.diff
new file mode 100644
index 0000000..8352977
--- /dev/null
+++ b/vcpkg/ports/fcl/dont-lower-c++-std.diff
@@ -0,0 +1,12 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 6e5bbb8..57de5e1 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -342,7 +342,6 @@ add_subdirectory(include/fcl)
+
+ set(PKG_DESC "Flexible Collision Library")
+ if(NOT MSVC)
+- set(PKG_CFLAGS "-std=c++11")
+ endif()
+ configure_file(fcl.pc.in fcl.pc @ONLY)
+
diff --git a/vcpkg/ports/fcl/portfile.cmake b/vcpkg/ports/fcl/portfile.cmake
new file mode 100644
index 0000000..7ce43ce
--- /dev/null
+++ b/vcpkg/ports/fcl/portfile.cmake
@@ -0,0 +1,47 @@
+if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO flexible-collision-library/fcl
+ REF ${VERSION}
+ SHA512 95612476f4706fcd60812204ec7495a956c4e318cc6ace9526ac93dc765605ddf73b2d0d9ff9f4c9c739e43c5f8e24670113c86e02868a2949ab234c3bf82374
+ HEAD_REF master
+ PATCHES
+ dont-lower-c++-std.diff
+)
+
+string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" FCL_STATIC_LIBRARY)
+
+if(VCPKG_TARGET_ARCHITECTURE STREQUAL "x64" OR VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
+ set(FCL_USE_X64_SSE ON)
+else()
+ set(FCL_USE_X64_SSE OFF)
+endif()
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ -DCMAKE_DISABLE_FIND_PACKAGE_Doxygen=1
+ -DCMAKE_REQUIRE_FIND_PACKAGE_Eigen3=1
+ -DCMAKE_REQUIRE_FIND_PACKAGE_ccd=1
+ -DCMAKE_REQUIRE_FIND_PACKAGE_octomap=1
+ -DFCL_STATIC_LIBRARY=${FCL_STATIC_LIBRARY}
+ -DFCL_BUILD_TESTS=OFF
+ -DFCL_USE_X64_SSE=${FCL_USE_X64_SSE}
+)
+
+vcpkg_cmake_install()
+vcpkg_copy_pdbs()
+vcpkg_fixup_pkgconfig()
+
+if(EXISTS "${CURRENT_PACKAGES_DIR}/CMake")
+ vcpkg_cmake_config_fixup(CONFIG_PATH CMake)
+else()
+ vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/fcl)
+endif()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/share")
+
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
diff --git a/vcpkg/ports/fcl/vcpkg.json b/vcpkg/ports/fcl/vcpkg.json
new file mode 100644
index 0000000..d781704
--- /dev/null
+++ b/vcpkg/ports/fcl/vcpkg.json
@@ -0,0 +1,20 @@
+{
+ "name": "fcl",
+ "version": "0.7.0",
+ "port-version": 4,
+ "description": "A library for performing three types of proximity queries on a pair of geometric models composed of triangles",
+ "homepage": "https://github.com/flexible-collision-library/fcl",
+ "dependencies": [
+ "ccd",
+ "eigen3",
+ "octomap",
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}