GPA Rotation for Factor Analysis
The GPArotation package contains functions for the rotation of factor loadings
matrices. The functions implement Gradient Projection (GP) algorithms for
orthogonal and oblique rotation. Additionally, a number of rotation criteria
are provided. The GP algorithms minimize the rotation criterion function, and
provide the corresponding rotation matrix. For oblique rotation, the
covariance/correlation matrix of the factors is also provided.
The port is required by update of math/R-cran-psych.
Functions are provided for computing the density and the distribution
function of d-dimensional normal and "t" random variables, possibly
truncated (on one side or two sides), and for generating random vectors
sampled from these distributions, except sampling from the truncated
"t". Moments of arbitrary order of a multivariate truncated normal are
computed, and converted to cumulants up to order 4. Probabilities are
computed via non-Monte Carlo methods; different routines are used in the
case d=1, d=2, d=3, d>3, if d denotes the dimensionality.
Required by update of math/R-cran-psych.
Reasons:
* Port build shouldn't use cross-compilation mode
because it buids for the same architecture.
* RUSTFLAGS isn't passed to the build of all or some Rust ports
in the cross-compilation mode.
Essential changes:
* Remove the CARGO_BUILD_TARGET make variable.
* Remove CARGO_BUILD_TARGET and CARGO_TARGET_* from CARGO_ENV.
* Update many ports that used CARGO_BUILD_TARGET.
* Build paths now don't include the architecture triplet part.
Immadiate benefits:
* Unbreak build on architectures like i386 that sometimes require
special RUSTFLAGS that were not effective in the cross-compilation
mode.
Ports that really need cross-compilation for some reason should
enable it on case-by-case basis. Example: net-p2p/cncli
(Not sure why does net-p2p/cncli actually need it, but it only
builds with these options.)
PR: 280305
Approved by: rust@FreeBSD.org (maintainer's timeout; 98 days)
- replace complex.h hack with less crude hack
- use sse2neon to build on armv7/aarch64
- armv7 should work, but falls to an unrelated issue
- touch up CFLAGS slightly
- rework do-test
Clang 19 has become more strict about errors in member functions, which
results in errors building ports that use headers from math/cgal, such
as cad/csxcad:
In file included from /wrkdirs/usr/ports/cad/csxcad/work/CSXCAD-0.6.3/src/CSPrimPolyhedron.cpp:25:
In file included from /wrkdirs/usr/ports/cad/csxcad/work/CSXCAD-0.6.3/src/CSPrimPolyhedron_p.h:6:
In file included from /usr/local/include/CGAL/Polyhedron_3.h:25:
In file included from /usr/local/include/CGAL/HalfedgeDS_default.h:23:
In file included from /usr/local/include/CGAL/boost/graph/graph_traits_HalfedgeDS_default.h:15:
In file included from /usr/local/include/CGAL/boost/graph/graph_traits_HalfedgeDS.h:29:
/usr/local/include/CGAL/boost/graph/iterator.h:224:22: error: no member named 'base' in 'Halfedge_around_source_iterator<Graph>'
224 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
/usr/local/include/CGAL/boost/graph/iterator.h:324:22: error: no member named 'base' in 'Halfedge_around_target_iterator<Graph>'
324 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
/usr/local/include/CGAL/boost/graph/iterator.h:423:22: error: no member named 'base' in 'Halfedge_around_face_iterator<Graph>'
423 | return (! (this->base() == nullptr)) ?
| ~~~~ ^
The problem is that the `base()` member function is only available when
an iterator is derived from `boost::iterator_adaptor`, but the three
iterators mentioned above, `Halfedge_around_source_iterator`,
`Halfedge_around_target_iterator` and `Halfedge_around_face_iterator`
are not.
Upstream CGAL has done a bit more refactoring in this particular area,
but is enough to cherry-pick the changes that remove the `operator
bool_type() const` member functions, which reference the non-existing
`base()` member function.
Bump PORTREVISION to ensure dependent ports build against the fixed
headers.
PR: 281880
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q4
devel/py-qtbuilder and devel/py-sip should only be used as a
BUILD_DEPENDS. (e.g. USE_PYQT=qtbuilder:build sip:build)
Usually, these are only used to build the PyQt framework, but a few
other ports need them to build. Ports that have them as a BUILD_DEPENDS
unnecessarily haven't been audited yet.
Sip used to be needed for run, but this hasn't been the case for quite
some time. Runtime is provided by the devel/py-qt[56]-sip ports.
(USE_PYQT=pysip). The main PyQt ports provide this automatically, so
it isn't necessary to add it to individual consumers.
While here:
www/onionshare: Remove PyQt stuff completely. It uses PySide.
With hat: kde@
Add WEBKIT option to use WebKitGTK for display of the user manual in the
application instead opening it in an external browser. Enabled by default
since it's a cleaner way of displaying the docs and webkit2-gtk3 is
needed in the dependency chain for gnuplot anyways.
https://github.com/Qalculate/qalculate-gtk/releases/tag/v5.3.0
The HyperNetX library provides classes and methods for the analysis
and visualization of complex network data modeled as hypergraphs.
The library generalizes traditional graph metrics.
Seq the ocaml module is part of lang/ocaml since 4.07. This package is a
compatibility shims that is needed for people using 4.06 and earlier.
PR: 280761
Approved by: submitter is maintainer