Date: Wed, 4 Jan 2023 10:52:05 GMT From: Yuri Victorovich <yuri@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 0ce587185546 - main - math/symfpu: New port: Implementation of IEEE-754 / SMT-LIB floating-point Message-ID: <202301041052.304Aq5V9073236@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=0ce58718554603ba9b178a44857e3b088ed0bb0f commit 0ce58718554603ba9b178a44857e3b088ed0bb0f Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2023-01-04 08:29:55 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2023-01-04 10:51:59 +0000 math/symfpu: New port: Implementation of IEEE-754 / SMT-LIB floating-point --- math/Makefile | 1 + math/symfpu/Makefile | 32 ++++++++++++++++++++++ math/symfpu/distinfo | 3 ++ .../files/patch-baseTypes_simpleExecutable.cpp | 11 ++++++++ .../files/patch-baseTypes_simpleExecutable.h | 15 ++++++++++ math/symfpu/pkg-descr | 8 ++++++ math/symfpu/pkg-plist | 19 +++++++++++++ 7 files changed, 89 insertions(+) diff --git a/math/Makefile b/math/Makefile index 7493281fb77c..c5b0cf9072d9 100644 --- a/math/Makefile +++ b/math/Makefile @@ -1140,6 +1140,7 @@ SUBDIR += superlu SUBDIR += superlu-dist SUBDIR += symengine + SUBDIR += symfpu SUBDIR += symmetrica SUBDIR += symphony SUBDIR += sympol diff --git a/math/symfpu/Makefile b/math/symfpu/Makefile new file mode 100644 index 000000000000..c3a04d80a98f --- /dev/null +++ b/math/symfpu/Makefile @@ -0,0 +1,32 @@ +PORTNAME= symfpu +DISTVERSION= g20190517 +CATEGORIES= math + +MAINTAINER= yuri@FreeBSD.org +COMMENT= Implementation of IEEE-754 / SMT-LIB floating-point +WWW= https://github.com/martin-cs/symfpu + +LICENSE= GPLv3 +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= gmake + +USE_GITHUB= yes +GH_ACCOUNT= martin-cs +GH_TAGNAME= c3acaf6 + +CXXFLAGS+= -I${WRKSRC} + +ALL_TARGET= subdirs symfpu.a + +MAKE_ARGS= SUBDIRS=baseTypes + +do-install: + ${MKDIR} \ + ${STAGEDIR}${PREFIX}/include/symfpu/core \ + ${STAGEDIR}${PREFIX}/include/symfpu/utils + ${CP} ${WRKSRC}/core/*.h ${STAGEDIR}${PREFIX}/include/symfpu/core + ${CP} ${WRKSRC}/utils/*.h ${STAGEDIR}${PREFIX}/include/symfpu/utils + ${INSTALL_DATA} ${WRKSRC}/symfpu.a ${STAGEDIR}${PREFIX}/lib + +.include <bsd.port.mk> diff --git a/math/symfpu/distinfo b/math/symfpu/distinfo new file mode 100644 index 000000000000..1a502917e5c9 --- /dev/null +++ b/math/symfpu/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1672799708 +SHA256 (martin-cs-symfpu-g20190517-c3acaf6_GH0.tar.gz) = 3cc3bda6357e98c348abe4b9e72be9ddca918acdcb1f19406e6a35dc939d9f24 +SIZE (martin-cs-symfpu-g20190517-c3acaf6_GH0.tar.gz) = 77560 diff --git a/math/symfpu/files/patch-baseTypes_simpleExecutable.cpp b/math/symfpu/files/patch-baseTypes_simpleExecutable.cpp new file mode 100644 index 000000000000..b48373872b11 --- /dev/null +++ b/math/symfpu/files/patch-baseTypes_simpleExecutable.cpp @@ -0,0 +1,11 @@ +--- baseTypes/simpleExecutable.cpp.orig 2023-01-04 05:09:43 UTC ++++ baseTypes/simpleExecutable.cpp +@@ -28,7 +28,7 @@ + */ + + +-#include "symfpu/baseTypes/simpleExecutable.h" ++#include "baseTypes/simpleExecutable.h" + + #include <assert.h> + #include <math.h> diff --git a/math/symfpu/files/patch-baseTypes_simpleExecutable.h b/math/symfpu/files/patch-baseTypes_simpleExecutable.h new file mode 100644 index 000000000000..62259ae6b1bb --- /dev/null +++ b/math/symfpu/files/patch-baseTypes_simpleExecutable.h @@ -0,0 +1,15 @@ +--- baseTypes/simpleExecutable.h.orig 2023-01-04 05:11:39 UTC ++++ baseTypes/simpleExecutable.h +@@ -34,9 +34,9 @@ + ** + */ + +-#include "symfpu/utils/properties.h" +-#include "symfpu/core/ite.h" +-#include "symfpu/baseTypes/shared.h" ++#include "utils/properties.h" ++#include "core/ite.h" ++#include "baseTypes/shared.h" + + #include <assert.h> + #include <stdint.h> diff --git a/math/symfpu/pkg-descr b/math/symfpu/pkg-descr new file mode 100644 index 000000000000..4c44beef1825 --- /dev/null +++ b/math/symfpu/pkg-descr @@ -0,0 +1,8 @@ +SymFPU is an implementation of the SMT-LIB / IEEE-754 operations in terms of +bit-vector operations. It is templated in terms of the bit-vectors, +propositions, floating-point formats and rounding mode types used. This allow +the same code to be executed as an arbitrary precision "SoftFloat" library +(although it's performance would not be good) or to be used to build symbolic +representation of floating-point operations suitable for use in "bit-blasting" +SMT solvers (you could also generate circuits from them but again, performance +will likely not be good). diff --git a/math/symfpu/pkg-plist b/math/symfpu/pkg-plist new file mode 100644 index 000000000000..14814000293a --- /dev/null +++ b/math/symfpu/pkg-plist @@ -0,0 +1,19 @@ +include/symfpu/core/add.h +include/symfpu/core/classify.h +include/symfpu/core/compare.h +include/symfpu/core/convert.h +include/symfpu/core/divide.h +include/symfpu/core/fma.h +include/symfpu/core/ite.h +include/symfpu/core/multiply.h +include/symfpu/core/operations.h +include/symfpu/core/packing.h +include/symfpu/core/remainder.h +include/symfpu/core/rounder.h +include/symfpu/core/sign.h +include/symfpu/core/sqrt.h +include/symfpu/core/unpackedFloat.h +include/symfpu/utils/common.h +include/symfpu/utils/numberOfRoundingModes.h +include/symfpu/utils/properties.h +lib/symfpu.a
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202301041052.304Aq5V9073236>