Date: Tue, 31 Aug 2021 04:47:19 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: d0103b3d7afc - main - math/heyoka: New port: C++ library for ODE integration via Taylor's method and LLVM Message-ID: <202108310447.17V4lJVI017049@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=d0103b3d7afc2d0dd77f2741c09bbea3dfada685 commit d0103b3d7afc2d0dd77f2741c09bbea3dfada685 Author: Yuri Victorovich <yuri@FreeBSD.org> AuthorDate: 2021-08-31 02:21:23 +0000 Commit: Yuri Victorovich <yuri@FreeBSD.org> CommitDate: 2021-08-31 04:47:14 +0000 math/heyoka: New port: C++ library for ODE integration via Taylor's method and LLVM --- math/Makefile | 1 + math/heyoka/Makefile | 32 +++++++++++++++++ math/heyoka/distinfo | 3 ++ math/heyoka/files/patch-CMakeLists.txt | 13 +++++++ math/heyoka/pkg-descr | 13 +++++++ math/heyoka/pkg-plist | 65 ++++++++++++++++++++++++++++++++++ 6 files changed, 127 insertions(+) diff --git a/math/Makefile b/math/Makefile index 8ce08adedae1..da4469d661d6 100644 --- a/math/Makefile +++ b/math/Makefile @@ -343,6 +343,7 @@ SUBDIR += gsl SUBDIR += half SUBDIR += hexcalc + SUBDIR += heyoka SUBDIR += highs SUBDIR += hipmcl SUBDIR += hmat-oss diff --git a/math/heyoka/Makefile b/math/heyoka/Makefile new file mode 100644 index 000000000000..e588a245c2da --- /dev/null +++ b/math/heyoka/Makefile @@ -0,0 +1,32 @@ +PORTNAME= heyoka +DISTVERSIONPREFIX= v +DISTVERSION= 0.14.0 +CATEGORIES= math + +MAINTAINER= yuri@FreeBSD.org +COMMENT= C++ library for ODE integration via Taylor's method and LLVM + +LICENSE= MPL20 +LICENSE_FILE= ${WRKSRC}/COPYING + +BUILD_DEPENDS= llvm${LLVM_VERSION}>0:devel/llvm${LLVM_VERSION} +LIB_DEPENDS= libboost_serialization.so:devel/boost-libs \ + libfmt.so:devel/libfmt \ + libmp++.so:math/mppp \ + libsleef.so:math/sleef \ + libspdlog.so:devel/spdlog +TEST_DEPENDS= xtensor>0:math/xtensor + +USES= cmake:testing compiler:c++17-lang +USE_LDCONFIG= yes + +USE_GITHUB= yes +GH_ACCOUNT= bluescarni + +LLVM_VERSION= 12 + +CMAKE_ON= HEYOKA_WITH_MPPP HEYOKA_WITH_SLEEF +CMAKE_ARGS= -DFREEBSD_LLVM_VERSION=${LLVM_VERSION} +CMAKE_TESTING_ON= HEYOKA_BUILD_TESTS # tests can't be compiled: xtensor-blas isn't yet ported + +.include <bsd.port.mk> diff --git a/math/heyoka/distinfo b/math/heyoka/distinfo new file mode 100644 index 000000000000..c871613ab4e5 --- /dev/null +++ b/math/heyoka/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1630374700 +SHA256 (bluescarni-heyoka-v0.14.0_GH0.tar.gz) = 0f3157fe9cbff66a2b6c0c66b903cff54de3d1691630868e5e30bad47488d315 +SIZE (bluescarni-heyoka-v0.14.0_GH0.tar.gz) = 5255001 diff --git a/math/heyoka/files/patch-CMakeLists.txt b/math/heyoka/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..ebc7046cd3fd --- /dev/null +++ b/math/heyoka/files/patch-CMakeLists.txt @@ -0,0 +1,13 @@ +- fix llvm version + +--- CMakeLists.txt.orig 2021-08-03 13:32:13 UTC ++++ CMakeLists.txt +@@ -147,7 +147,7 @@ endif() + # NOTE: do it early so that we can set up + # compiler flags based on the LLVM version + # if needed. +-find_package(LLVM REQUIRED CONFIG) ++find_package(LLVM ${FREEBSD_LLVM_VERSION} REQUIRED CONFIG) + + if(${LLVM_VERSION_MAJOR} LESS 10) + message(FATAL_ERROR "LLVM >= 10 is required.") diff --git a/math/heyoka/pkg-descr b/math/heyoka/pkg-descr new file mode 100644 index 000000000000..f188c61767e8 --- /dev/null +++ b/math/heyoka/pkg-descr @@ -0,0 +1,13 @@ +heyoka is a C++ library for the integration of ordinary differential equations +(ODEs) via Taylor's method. Notable features include: +* support for both double-precision and extended-precision floating-point types + (80-bit and 128-bit), +* the ability to maintain machine precision accuracy over tens of billions of + timesteps, +* high-precision zero-cost dense output, +* accurate and reliable event detection, +* batch mode integration to harness the power of modern SIMD instruction sets, +* a high-performance implementation of Taylor's method based on automatic + differentiation techniques and aggressive just-in-time compilation via LLVM. + +WWW: https://bluescarni.github.io/heyoka/ diff --git a/math/heyoka/pkg-plist b/math/heyoka/pkg-plist new file mode 100644 index 000000000000..434d0d4de770 --- /dev/null +++ b/math/heyoka/pkg-plist @@ -0,0 +1,65 @@ +include/heyoka/callable.hpp +include/heyoka/config.hpp +include/heyoka/detail/binomial.hpp +include/heyoka/detail/dfloat.hpp +include/heyoka/detail/event_detection.hpp +include/heyoka/detail/fwd_decl.hpp +include/heyoka/detail/igor.hpp +include/heyoka/detail/llvm_fwd.hpp +include/heyoka/detail/llvm_helpers.hpp +include/heyoka/detail/llvm_vector_type.hpp +include/heyoka/detail/logging_impl.hpp +include/heyoka/detail/simple_timer.hpp +include/heyoka/detail/sleef.hpp +include/heyoka/detail/string_conv.hpp +include/heyoka/detail/taylor_common.hpp +include/heyoka/detail/type_traits.hpp +include/heyoka/detail/visibility.hpp +include/heyoka/exceptions.hpp +include/heyoka/expression.hpp +include/heyoka/func.hpp +include/heyoka/gp.hpp +include/heyoka/heyoka.hpp +include/heyoka/kw.hpp +include/heyoka/llvm_state.hpp +include/heyoka/logging.hpp +include/heyoka/mascon.hpp +include/heyoka/math.hpp +include/heyoka/math/acos.hpp +include/heyoka/math/acosh.hpp +include/heyoka/math/asin.hpp +include/heyoka/math/asinh.hpp +include/heyoka/math/atan.hpp +include/heyoka/math/atanh.hpp +include/heyoka/math/binary_op.hpp +include/heyoka/math/cos.hpp +include/heyoka/math/cosh.hpp +include/heyoka/math/erf.hpp +include/heyoka/math/exp.hpp +include/heyoka/math/kepE.hpp +include/heyoka/math/log.hpp +include/heyoka/math/neg.hpp +include/heyoka/math/pow.hpp +include/heyoka/math/sigmoid.hpp +include/heyoka/math/sin.hpp +include/heyoka/math/sinh.hpp +include/heyoka/math/sqrt.hpp +include/heyoka/math/square.hpp +include/heyoka/math/tan.hpp +include/heyoka/math/tanh.hpp +include/heyoka/math/time.hpp +include/heyoka/math/tpoly.hpp +include/heyoka/nbody.hpp +include/heyoka/number.hpp +include/heyoka/param.hpp +include/heyoka/s11n.hpp +include/heyoka/splitmix64.hpp +include/heyoka/taylor.hpp +include/heyoka/variable.hpp +lib/cmake/heyoka/heyoka-config-version.cmake +lib/cmake/heyoka/heyoka-config.cmake +lib/cmake/heyoka/heyoka_export-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/heyoka/heyoka_export.cmake +lib/libheyoka.so +lib/libheyoka.so.14 +lib/libheyoka.so.14.0
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202108310447.17V4lJVI017049>