git: fa8df33c779a - main - math/ttmath: New port: C++ headers-only library for big integer and floating point numbers

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Wed, 29 Jun 2022 20:11:26 UTC
The branch main has been updated by yuri:

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

commit fa8df33c779ad67e2d2260e29ea552e2113e5020
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-06-29 20:10:51 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-06-29 20:11:24 +0000

    math/ttmath: New port: C++ headers-only library for big integer and floating point numbers
---
 math/Makefile         |  1 +
 math/ttmath/Makefile  | 36 ++++++++++++++++++++++++++++++++++++
 math/ttmath/distinfo  |  3 +++
 math/ttmath/pkg-descr |  5 +++++
 math/ttmath/pkg-plist | 15 +++++++++++++++
 5 files changed, 60 insertions(+)

diff --git a/math/Makefile b/math/Makefile
index ff9aba7d274f..2e50bf157323 100644
--- a/math/Makefile
+++ b/math/Makefile
@@ -1095,6 +1095,7 @@
     SUBDIR += triangle
     SUBDIR += trlan
     SUBDIR += trlib
+    SUBDIR += ttmath
     SUBDIR += tvmet
     SUBDIR += ump
     SUBDIR += units
diff --git a/math/ttmath/Makefile b/math/ttmath/Makefile
new file mode 100644
index 000000000000..6ac908c1f139
--- /dev/null
+++ b/math/ttmath/Makefile
@@ -0,0 +1,36 @@
+PORTNAME=	ttmath
+DISTVERSION=	0.9.3.20191013
+CATEGORIES=	math
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	C++ headers-only library for big integer and floating point numbers
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/COPYRIGHT
+
+FETCH_DEPENDS=	git:devel/git
+
+USES=		cmake:testing
+
+NO_BUILD=	yes
+NO_ARCH=	yes
+
+GIT_URL=	https://gitea.ttmath.org/tomasz.sowa/ttmath.git
+GIT_TAG=	aad580f51e7ffc32966507a9897ec575c389e3e6
+
+do-fetch:
+	@if [ "${FORCE_FETCH_ALL}" = "true" ] || ! [ -f "${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX}" ]; then \
+	  ${MKDIR} ${DISTDIR}/${DIST_SUBDIR} && \
+	  cd ${DISTDIR}/${DIST_SUBDIR} && \
+	    git clone -q ${GIT_URL} ${PORTNAME}-${DISTVERSIONFULL} && \
+	    (cd ${PORTNAME}-${DISTVERSIONFULL} && git reset -q --hard ${GIT_TAG} && ${RM} -r .git) && \
+	    ${FIND} ${PORTNAME}-${DISTVERSIONFULL} -and -exec ${TOUCH} -h -d 1970-01-01T00:00:00Z {} \; && \
+	    ${FIND} ${PORTNAME}-${DISTVERSIONFULL} -print0 | LC_ALL=C ${SORT} -z | \
+	        ${TAR} czf ${PORTNAME}-${DISTVERSIONFULL}${EXTRACT_SUFX} --format=bsdtar --gid 0 --uid 0 --options gzip:!timestamp --no-recursion --null -T - && \
+	    ${RM} -r ${PORTNAME}-${DISTVERSIONFULL}; \
+	fi
+
+do-install:
+	@cd ${WRKSRC} && ${COPYTREE_SHARE} ${PORTNAME} ${STAGEDIR}${PREFIX}/include
+
+.include <bsd.port.mk>
diff --git a/math/ttmath/distinfo b/math/ttmath/distinfo
new file mode 100644
index 000000000000..a11cfa3819fd
--- /dev/null
+++ b/math/ttmath/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1656531839
+SHA256 (ttmath-0.9.3.20191013.tar.gz) = be79987c86f5139cf0ee6ca985412629af9631b967ee495be46065b15f04401d
+SIZE (ttmath-0.9.3.20191013.tar.gz) = 2194590
diff --git a/math/ttmath/pkg-descr b/math/ttmath/pkg-descr
new file mode 100644
index 000000000000..ddf268ccceed
--- /dev/null
+++ b/math/ttmath/pkg-descr
@@ -0,0 +1,5 @@
+TTMath is a small library which allows one to perform arithmetic
+operations with big unsigned integer, big signed integer and big
+floating point numbers.
+
+WWW: https://ttmath.org
diff --git a/math/ttmath/pkg-plist b/math/ttmath/pkg-plist
new file mode 100644
index 000000000000..f194764b4921
--- /dev/null
+++ b/math/ttmath/pkg-plist
@@ -0,0 +1,15 @@
+include/ttmath/ttmath.h
+include/ttmath/ttmathbig.h
+include/ttmath/ttmathdec.h
+include/ttmath/ttmathint.h
+include/ttmath/ttmathmisc.h
+include/ttmath/ttmathobjects.h
+include/ttmath/ttmathparser.h
+include/ttmath/ttmaththreads.h
+include/ttmath/ttmathtypes.h
+include/ttmath/ttmathuint.h
+include/ttmath/ttmathuint_noasm.h
+include/ttmath/ttmathuint_x86.h
+include/ttmath/ttmathuint_x86_64.h
+include/ttmath/ttmathuint_x86_64_msvc.asm
+include/ttmath/win64_assemble.bat