git: 0d855a52256d - main - math/octave-forge-csg-toolkit: New port.

From: Stephen Montgomery-Smith <stephen_at_FreeBSD.org>
Date: Mon, 31 Oct 2022 00:42:31 UTC
The branch main has been updated by stephen:

URL: https://cgit.FreeBSD.org/ports/commit/?id=0d855a52256d9ccb5307e215a8ad21710695fbb9

commit 0d855a52256d9ccb5307e215a8ad21710695fbb9
Author:     Stephen Montgomery-Smith <stephen@FreeBSD.org>
AuthorDate: 2022-10-31 00:40:09 +0000
Commit:     Stephen Montgomery-Smith <stephen@FreeBSD.org>
CommitDate: 2022-10-31 00:42:19 +0000

    math/octave-forge-csg-toolkit: New port.
    
     The present set of GNU Octave functions provides a novel and robust
    algorithm for analyzing the diaphyseal cross-sectional geometric
    properties of long bones, which can be applied to any 3D digital model
    of a humerus, ulna, femur or tibia bone represented as a triangular
    mesh in a Wavefront OBJ file format.
---
 math/Makefile                                      |  1 +
 math/octave-forge-csg-toolkit/Makefile             | 33 ++++++++++++++++++++++
 math/octave-forge-csg-toolkit/distinfo             |  3 ++
 math/octave-forge-csg-toolkit/files/patch-Makefile | 11 ++++++++
 math/octave-forge-csg-toolkit/pkg-descr            | 11 ++++++++
 5 files changed, 59 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index b6435ae148dd..db2ca2a20029 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -539,6 +539,7 @@
     SUBDIR += octave-forge-coder
     SUBDIR += octave-forge-communications
     SUBDIR += octave-forge-control
+    SUBDIR += octave-forge-csg-toolkit
     SUBDIR += octave-forge-data-smoothing
     SUBDIR += octave-forge-database
     SUBDIR += octave-forge-dataframe
diff --git a/math/octave-forge-csg-toolkit/Makefile b/math/octave-forge-csg-toolkit/Makefile
new file mode 100644
index 000000000000..ea9bc73a08a9
--- /dev/null
+++ b/math/octave-forge-csg-toolkit/Makefile
@@ -0,0 +1,33 @@
+PORTNAME=	octave-forge-csg-toolkit
+DISTVERSIONPREFIX=	v
+DISTVERSION=	1.2.3
+CATEGORIES=	math
+
+MAINTAINER=	stephen@FreeBSD.org
+COMMENT=	Octave-forge package ${OCTAVE_PKGNAME}
+WWW=		https://packages.octave.org/
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKDIR}/${OCTSRC}/COPYING
+
+USES+=		compiler:gcc-c++11-lib
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	pr0m1th3as
+GH_PROJECT=	${OCTAVE_PKGNAME}
+
+# OCTSRC is the name of the directory of the package.
+# It is usually ${OCTAVE_PKGNAME} or ${DISTNAME}.
+OCTSRC=		${GH_PROJECT}-${DISTVERSION}
+
+WRKSRC=		${WRKDIR}/${OCTSRC}/src
+
+RUN_DEPENDS+=	${TARBALLS_DIR}/io.tar.gz:math/octave-forge-io
+
+.include "${.CURDIR}/../../Mk/bsd.octave.mk"
+
+post-build:
+	${RM} ${WRKSRC}/Makefile ${WRKSRC}/configure
+	cd ${WRKDIR} && ${TAR} cfz ${OCTAVE_DISTNAME}.tar.gz ${OCTSRC}
+
+.include <bsd.port.mk>
diff --git a/math/octave-forge-csg-toolkit/distinfo b/math/octave-forge-csg-toolkit/distinfo
new file mode 100644
index 000000000000..9edd7b00bb93
--- /dev/null
+++ b/math/octave-forge-csg-toolkit/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1667174462
+SHA256 (octave-forge/pr0m1th3as-csg-toolkit-v1.2.3_GH0.tar.gz) = 08792f464caa1f9b5ef7f0db4517eb21495d446fab871021b29f51f72b595074
+SIZE (octave-forge/pr0m1th3as-csg-toolkit-v1.2.3_GH0.tar.gz) = 235980
diff --git a/math/octave-forge-csg-toolkit/files/patch-Makefile b/math/octave-forge-csg-toolkit/files/patch-Makefile
new file mode 100644
index 000000000000..11e05c1852e5
--- /dev/null
+++ b/math/octave-forge-csg-toolkit/files/patch-Makefile
@@ -0,0 +1,11 @@
+--- Makefile.orig	2022-10-31 00:26:54 UTC
++++ Makefile
+@@ -4,7 +4,7 @@ all:
+ 	$(MKOCTFILE)       readObj.cc
+ 	$(MKOCTFILE)       writeObj.cc
+ 	$(MKOCTFILE)       longbone_maxDistance.cc
+-	$(MKOCTFILE)       longbone_Registration.cc
++	$(MKOCTFILE)       -stdlib=libstdc++ longbone_Registration.cc
+ 	$(MKOCTFILE)       meshArea.cc
+ 	$(MKOCTFILE)       meshBarycenter.cc
+ 	$(MKOCTFILE)       meshSection.cc
diff --git a/math/octave-forge-csg-toolkit/pkg-descr b/math/octave-forge-csg-toolkit/pkg-descr
new file mode 100644
index 000000000000..6dd69c027bb9
--- /dev/null
+++ b/math/octave-forge-csg-toolkit/pkg-descr
@@ -0,0 +1,11 @@
+The octave-forge package is the result of The GNU Octave Repositry project,
+which is intended to be a central location for custom scripts, functions and
+extensions for GNU Octave. contains the source for all the functions plus
+build and install scripts.
+
+This is csg-toolkit.
+
+ The present set of GNU Octave functions provides a novel and robust algorithm
+for analyzing the diaphyseal cross-sectional geometric properties of long bones,
+which can be applied to any 3D digital model of a humerus, ulna, femur or tibia
+bone represented as a triangular mesh in a Wavefront OBJ file format.