HyPhy is an open-source software package for the analysis of genetic sequences
using techniques in phylogenetics, molecular evolution, and machine learning. It
features a rich scripting language for limitless customization of
analyses. Additionally, HyPhy features support for parallel computing
environments via message passing interface, MPI and it can be compiled as a
shared library and called from other programming environments such as Python and
R.
===> The following configuration options are available for hyphy-2.5.103:
AVX=off: Support for AVX (Advanced Vector Extensions) instructions
FMA3=off: Support for FMA3 (Fused Multiply-Add) instructions on x86
NEON=off: Support for NEON SIMD instructions on ARM
SSE4=off: Support for SSE4 (Streaming SIMD Extensions) instructions
TARGET_NATIVE=off: Enable CPU-specific optimizations for the build machine
===> Use 'make config' to modify these settings
biology/hyphy: Fix build on i386
After updating to 2.5.77, the build was failing on i386 with:
/wrkdirs/usr/ports/biology/hyphy/work/hyphy-2.5.77/src/core/global_things.cpp:176:62:
error: conversion from 'size_t' (aka 'unsigned int') to 'const _String' is
ambiguous
176 | HandleApplicationError(_String("Failed to allocate '") & bytes & "'
bytes'",
| ^~~~~
Fix the build by explicitly casting size_t variables to unsigned long
when passing them to _String constructors. _String has multiple
constructors accepting numeric types (long, unsigned long, hyFloat,
char), but not directly a size_t.
Sponsored by: The FreeBSD Foundation
biology/hyphy: Add TARGET_NATIVE option
Add a new TARGET_NATIVE option to control -march=native and
-mtune=native. The option is off by default so the official packages
are portable.
Reported by: diizzy
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D51977
biology/hyphy: fix build on armv7
With OpenMP not present, the code had a duplicate function definition.
Get rid of one of the two to enable a build on armv7.
Approved by: portmgr (build fix blanket)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
biology/hyphy: Fix build with clang 13.0.0
clang 13 complains about duplicate loop unrolling pragmas for clang and
CGG. According to [1], clang supports #pragma GCC unroll with identical
semantics to #pragma clang loop unroll, so remove instances of #pragma
clang loop unroll and #pragma unroll when they appear with #pragma GCC
unroll for the same loop.
[1]
https://clang.llvm.org/docs/AttributeReference.html#pragma-unroll-pragma-nounroll
Sponsored by: The FreeBSD Foundation
biology/hyphy: Remove USES=compiler:openmp
USES=compiler:openmp still forces building with GCC. This is no longer
necessary on tier 1 platforms, which have openmp in the base system.
PR: 247753, 252379
biology/hyphy: Update to version 2.5.18 and add AVX option
The AVX option is off by default, because hyphy will crash on systems
without advanced vector extensions support.
Bump PORTREVISION for ports depending on the canonical version of GCC
as defined in Mk/bsd.default-versions.mk which has moved from GCC 8.3
to GCC 9.1 under most circumstances now after revision 507371.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, everything INDEX-11 shows with a dependency on lang/gcc9 now.
PR: 238330
Change cmake default behaviour to outsource.
Ports that build out of source now simply can use "USES=cmake"
instead of "USES=cmake:outsource". Ports that fail to build
out of source now need to specify "USES=cmake:insource".
I tried to only set insource where explictely needed.
PR: 232038
Exp-run by: antoine
Bump PORTREVISION for ports depending on the canonical version of GCC
defined via Mk/bsd.default-versions.mk which has moved from GCC 7.4 t
GCC 8.2 under most circumstances.
This includes ports
- with USE_GCC=yes or USE_GCC=any,
- with USES=fortran,
- using Mk/bsd.octave.mk which in turn features USES=fortran, and
- with USES=compiler specifying openmp, nestedfct, c11, c++0x, c++11-lang,
c++11-lib, c++14-lang, c++17-lang, or gcc-c++11-lib
plus, as a double check, everything INDEX-11 showed depending on lang/gcc7.
PR: 231590
biology/hyphy: Bump PORTREVISION after upstream rerolled release
Also, remove patch that upstream incorporated in new tarball.
Upstream issue: https://github.com/veg/hyphy/issues/796