aboutsummaryrefslogtreecommitdiffstats
path: root/math
diff options
context:
space:
mode:
authoryuri <yuri@FreeBSD.org>2018-11-20 13:59:27 +0800
committeryuri <yuri@FreeBSD.org>2018-11-20 13:59:27 +0800
commitd9ea39feffe83ef4a6133f8f13d652fecc58acda (patch)
tree2823f38dc6c17c7081a42788ffc36f521c92bd2a /math
parentf245941b3096eb70848cf48bd91a3e228130742b (diff)
downloadfreebsd-ports-gnome-d9ea39feffe83ef4a6133f8f13d652fecc58acda.tar.gz
freebsd-ports-gnome-d9ea39feffe83ef4a6133f8f13d652fecc58acda.tar.zst
freebsd-ports-gnome-d9ea39feffe83ef4a6133f8f13d652fecc58acda.zip
New port: math/libccd: Library for collision detection between two convex shapes
Diffstat (limited to 'math')
-rw-r--r--math/Makefile1
-rw-r--r--math/libccd/Makefile25
-rw-r--r--math/libccd/distinfo3
-rw-r--r--math/libccd/files/patch-CMakeLists.txt8
-rw-r--r--math/libccd/pkg-descr10
-rw-r--r--math/libccd/pkg-plist14
6 files changed, 61 insertions, 0 deletions
diff --git a/math/Makefile b/math/Makefile
index d237f0aa17c1..50b77a2b7c60 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -313,6 +313,7 @@
SUBDIR += lean
SUBDIR += levmar
SUBDIR += libRmath
+ SUBDIR += libccd
SUBDIR += libflame
SUBDIR += liblbfgs
SUBDIR += libmesh
diff --git a/math/libccd/Makefile b/math/libccd/Makefile
new file mode 100644
index 000000000000..eaa15c459df6
--- /dev/null
+++ b/math/libccd/Makefile
@@ -0,0 +1,25 @@
+# $FreeBSD$
+
+PORTNAME= libccd
+DISTVERSIONPREFIX= v
+DISTVERSION= 2.0-49
+DISTVERSIONSUFFIX= -g63d3a91
+CATEGORIES= math
+
+MAINTAINER= yuri@FreeBSD.org
+COMMENT= Library for collision detection between two convex shapes
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/BSD-LICENSE
+
+USES= cmake:outsource
+USE_GITHUB= yes
+GH_ACCOUNT= danfis
+USE_LDCONFIG= yes
+
+OPTIONS_DEFINE= DOUBLE_PECISION
+
+DOUBLE_PECISION_DESC= Enable double precision computations
+DOUBLE_PECISION_CMAKE_BOOL= ENABLE_DOUBLE_PRECISION
+
+.include <bsd.port.mk>
diff --git a/math/libccd/distinfo b/math/libccd/distinfo
new file mode 100644
index 000000000000..cca7d2615b9d
--- /dev/null
+++ b/math/libccd/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1542689250
+SHA256 (danfis-libccd-v2.0-49-g63d3a91_GH0.tar.gz) = f494395baa3bba6eb815d163f69ee94b07bb8ab2c0df77a6bbf9f51883128351
+SIZE (danfis-libccd-v2.0-49-g63d3a91_GH0.tar.gz) = 73675
diff --git a/math/libccd/files/patch-CMakeLists.txt b/math/libccd/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..fc186562e051
--- /dev/null
+++ b/math/libccd/files/patch-CMakeLists.txt
@@ -0,0 +1,8 @@
+--- CMakeLists.txt.orig 2018-11-20 04:50:23 UTC
++++ CMakeLists.txt
+@@ -72,4 +72,4 @@ configure_file(ccd.pc.in ccd.pc @ONLY)
+ install(FILES "${CMAKE_BINARY_DIR}/ccd.pc"
+ DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig")
+
+-install(FILES BSD-LICENSE DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/doc/ccd")
++#install(FILES BSD-LICENSE DESTINATION "${CMAKE_INSTALL_DATAROOTDIR}/doc/ccd")
diff --git a/math/libccd/pkg-descr b/math/libccd/pkg-descr
new file mode 100644
index 000000000000..f63237798694
--- /dev/null
+++ b/math/libccd/pkg-descr
@@ -0,0 +1,10 @@
+libccd is library for a collision detection between two convex shapes. libccd
+implements variation on Gilbert-Johnson-Keerthi algorithm plus Expand Polytope
+Algorithm (EPA) and also implements algorithm Minkowski Portal Refinement (MPR,
+a.k.a. XenoCollide) as described in Game Programming Gems 7.
+
+libccd is the only available open source library of my knowledge that include
+MPR algorithm working in 3-D space. However, there is a library called mpr2d,
+implemented in D programming language, that works in 2-D space.
+
+WWW: https://github.com/danfis/libccd
diff --git a/math/libccd/pkg-plist b/math/libccd/pkg-plist
new file mode 100644
index 000000000000..6c0a004609b7
--- /dev/null
+++ b/math/libccd/pkg-plist
@@ -0,0 +1,14 @@
+include/ccd/ccd.h
+include/ccd/ccd_export.h
+include/ccd/compiler.h
+include/ccd/config.h
+include/ccd/quat.h
+include/ccd/vec3.h
+lib/ccd/ccd-config-version.cmake
+lib/ccd/ccd-config.cmake
+lib/ccd/ccd-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/ccd/ccd-targets.cmake
+lib/libccd.so
+lib/libccd.so.2
+lib/libccd.so.2.0
+libdata/pkgconfig/ccd.pc