pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/math



Module Name:    pkgsrc
Committed By:   thor
Date:           Tue Dec 19 12:28:50 UTC 2023

Modified Files:
        pkgsrc/math: Makefile
Added Files:
        pkgsrc/math/armadillo: DESCR Makefile PLIST buildlink3.mk distinfo
        pkgsrc/math/armadillo/patches: patch-CMakeLists.txt

Log Message:
math/armadillo: C++ linear algebra library

longer form:

Armadillo is a high quality linear algebra library (matrix maths) for the
C++ language, aiming towards a good balance between speed and ease of use

Provides high-level syntax and functionality deliberately similar
to Matlab

Useful for algorithm development directly in C++, or quick conversion
of research code into production environments

Provides efficient classes for vectors, matrices and cubes; dense and
sparse matrices are supported

Integer, floating point and complex numbers are supported

A sophisticated expression evaluator (based on template meta-programming)
automatically combines several operations to increase speed and efficiency

Dynamic evaluation automatically chooses optimal code paths based on
detected matrix structures

Various matrix decompositions (eigen, SVD, QR, etc) are provided
through integration with LAPACK, or one of its high performance drop-in
replacements (eg. MKL or OpenBLAS)

Can automatically use OpenMP multi-threading (parallelisation) to speed
up computationally expensive operations

Distributed under the permissive Apache 2.0 license, useful for both
open-source and proprietary (closed-source) software

Can be used for machine learning, pattern recognition, computer vision,
signal processing, bioinformatics, statistics, finance, etc


To generate a diff of this commit:
cvs rdiff -u -r1.581 -r1.582 pkgsrc/math/Makefile
cvs rdiff -u -r0 -r1.1 pkgsrc/math/armadillo/DESCR \
    pkgsrc/math/armadillo/Makefile pkgsrc/math/armadillo/PLIST \
    pkgsrc/math/armadillo/buildlink3.mk pkgsrc/math/armadillo/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/math/armadillo/patches/patch-CMakeLists.txt

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/math/Makefile
diff -u pkgsrc/math/Makefile:1.581 pkgsrc/math/Makefile:1.582
--- pkgsrc/math/Makefile:1.581  Mon Nov 13 23:48:53 2023
+++ pkgsrc/math/Makefile        Tue Dec 19 12:28:50 2023
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.581 2023/11/13 23:48:53 wiz Exp $
+# $NetBSD: Makefile,v 1.582 2023/12/19 12:28:50 thor Exp $
 
 COMMENT=       Mathematics
 
@@ -141,6 +141,7 @@ SUBDIR+=    analitza
 SUBDIR+=       antixls
 SUBDIR+=       apecrunch
 SUBDIR+=       aribas
+SUBDIR+=       armadillo
 SUBDIR+=       arpack-ng
 SUBDIR+=       basic-stats
 SUBDIR+=       bc

Added files:

Index: pkgsrc/math/armadillo/DESCR
diff -u /dev/null pkgsrc/math/armadillo/DESCR:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/DESCR Tue Dec 19 12:28:50 2023
@@ -0,0 +1,4 @@
+Armadillo is an open-source C++ linear algebra library (matrix maths) aiming
+towards a good balance between speed and ease of use. Integer, floating point
+and complex numbers are supported, as well as a subset of trigonometric and
+statistics functions.
Index: pkgsrc/math/armadillo/Makefile
diff -u /dev/null pkgsrc/math/armadillo/Makefile:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/Makefile      Tue Dec 19 12:28:50 2023
@@ -0,0 +1,28 @@
+# $NetBSD: Makefile,v 1.1 2023/12/19 12:28:50 thor Exp $
+
+DISTNAME=      armadillo-12.6.7
+CATEGORIES=    math
+MASTER_SITES=  ${MASTER_SITE_SOURCEFORGE:=arma/}
+EXTRACT_SUFX=  .tar.xz
+
+MAINTAINER=    bacon%NetBSD.org@localhost
+HOMEPAGE=      https://sourceforge.net/projects/arma/
+COMMENT=       C++ linear algebra library
+LICENSE=       apache-2.0
+
+USE_TOOLS+=            cmake pkg-config
+USE_LANGUAGES+=                c c++
+USE_CXX_FEATURES=      c++11
+USE_CMAKE=             yes
+
+CMAKE_ARGS+=   -DINSTALL_LIB_DIR=${PREFIX}/lib
+CMAKE_ARGS+=   -DBLA_PREFER_PKGCONFIG=ON
+CMAKE_ARGS+=   -DBLA_PKGCONFIG_BLAS=${BLAS_PC}
+CMAKE_ARGS+=   -DBLA_PKGCONFIG_LAPACK=${LAPACK_PC}
+
+.include "../../mk/blas.buildlink3.mk"
+.include "../../math/superlu/buildlink3.mk"
+.include "../../math/arpack-ng/buildlink3.mk"
+# Armadillo references HDF5, but this is header-only and clients
+# are supposed to link HDF5 themselves.
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/math/armadillo/PLIST
diff -u /dev/null pkgsrc/math/armadillo/PLIST:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/PLIST Tue Dec 19 12:28:50 2023
@@ -0,0 +1,631 @@
+@comment $NetBSD: PLIST,v 1.1 2023/12/19 12:28:50 thor Exp $
+include/armadillo
+include/armadillo_bits/BaseCube_bones.hpp
+include/armadillo_bits/BaseCube_meat.hpp
+include/armadillo_bits/Base_bones.hpp
+include/armadillo_bits/Base_meat.hpp
+include/armadillo_bits/Col_bones.hpp
+include/armadillo_bits/Col_meat.hpp
+include/armadillo_bits/CubeToMatOp_bones.hpp
+include/armadillo_bits/CubeToMatOp_meat.hpp
+include/armadillo_bits/Cube_bones.hpp
+include/armadillo_bits/Cube_meat.hpp
+include/armadillo_bits/GenCube_bones.hpp
+include/armadillo_bits/GenCube_meat.hpp
+include/armadillo_bits/Gen_bones.hpp
+include/armadillo_bits/Gen_meat.hpp
+include/armadillo_bits/GlueCube_bones.hpp
+include/armadillo_bits/GlueCube_meat.hpp
+include/armadillo_bits/Glue_bones.hpp
+include/armadillo_bits/Glue_meat.hpp
+include/armadillo_bits/MapMat_bones.hpp
+include/armadillo_bits/MapMat_meat.hpp
+include/armadillo_bits/Mat_bones.hpp
+include/armadillo_bits/Mat_meat.hpp
+include/armadillo_bits/OpCube_bones.hpp
+include/armadillo_bits/OpCube_meat.hpp
+include/armadillo_bits/Op_bones.hpp
+include/armadillo_bits/Op_meat.hpp
+include/armadillo_bits/Proxy.hpp
+include/armadillo_bits/ProxyCube.hpp
+include/armadillo_bits/Row_bones.hpp
+include/armadillo_bits/Row_meat.hpp
+include/armadillo_bits/SizeCube_bones.hpp
+include/armadillo_bits/SizeCube_meat.hpp
+include/armadillo_bits/SizeMat_bones.hpp
+include/armadillo_bits/SizeMat_meat.hpp
+include/armadillo_bits/SpBase_bones.hpp
+include/armadillo_bits/SpBase_meat.hpp
+include/armadillo_bits/SpCol_bones.hpp
+include/armadillo_bits/SpCol_meat.hpp
+include/armadillo_bits/SpGlue_bones.hpp
+include/armadillo_bits/SpGlue_meat.hpp
+include/armadillo_bits/SpMat_bones.hpp
+include/armadillo_bits/SpMat_iterators_meat.hpp
+include/armadillo_bits/SpMat_meat.hpp
+include/armadillo_bits/SpOp_bones.hpp
+include/armadillo_bits/SpOp_meat.hpp
+include/armadillo_bits/SpProxy.hpp
+include/armadillo_bits/SpRow_bones.hpp
+include/armadillo_bits/SpRow_meat.hpp
+include/armadillo_bits/SpSubview_bones.hpp
+include/armadillo_bits/SpSubview_col_list_bones.hpp
+include/armadillo_bits/SpSubview_col_list_meat.hpp
+include/armadillo_bits/SpSubview_iterators_meat.hpp
+include/armadillo_bits/SpSubview_meat.hpp
+include/armadillo_bits/SpToDGlue_bones.hpp
+include/armadillo_bits/SpToDGlue_meat.hpp
+include/armadillo_bits/SpToDOp_bones.hpp
+include/armadillo_bits/SpToDOp_meat.hpp
+include/armadillo_bits/SpValProxy_bones.hpp
+include/armadillo_bits/SpValProxy_meat.hpp
+include/armadillo_bits/access.hpp
+include/armadillo_bits/arma_cmath.hpp
+include/armadillo_bits/arma_config.hpp
+include/armadillo_bits/arma_forward.hpp
+include/armadillo_bits/arma_ostream_bones.hpp
+include/armadillo_bits/arma_ostream_meat.hpp
+include/armadillo_bits/arma_rel_comparators.hpp
+include/armadillo_bits/arma_rng.hpp
+include/armadillo_bits/arma_rng_cxx03.hpp
+include/armadillo_bits/arma_static_check.hpp
+include/armadillo_bits/arma_str.hpp
+include/armadillo_bits/arma_version.hpp
+include/armadillo_bits/arrayops_bones.hpp
+include/armadillo_bits/arrayops_meat.hpp
+include/armadillo_bits/auxlib_bones.hpp
+include/armadillo_bits/auxlib_meat.hpp
+include/armadillo_bits/band_helper.hpp
+include/armadillo_bits/compiler_check.hpp
+include/armadillo_bits/compiler_setup.hpp
+include/armadillo_bits/compiler_setup_post.hpp
+include/armadillo_bits/cond_rel_bones.hpp
+include/armadillo_bits/cond_rel_meat.hpp
+include/armadillo_bits/config.hpp
+include/armadillo_bits/constants.hpp
+include/armadillo_bits/constants_old.hpp
+include/armadillo_bits/csv_name.hpp
+include/armadillo_bits/debug.hpp
+include/armadillo_bits/def_arpack.hpp
+include/armadillo_bits/def_atlas.hpp
+include/armadillo_bits/def_blas.hpp
+include/armadillo_bits/def_fftw3.hpp
+include/armadillo_bits/def_lapack.hpp
+include/armadillo_bits/def_superlu.hpp
+include/armadillo_bits/diagmat_proxy.hpp
+include/armadillo_bits/diagview_bones.hpp
+include/armadillo_bits/diagview_meat.hpp
+include/armadillo_bits/diskio_bones.hpp
+include/armadillo_bits/diskio_meat.hpp
+include/armadillo_bits/distr_param.hpp
+include/armadillo_bits/eGlueCube_bones.hpp
+include/armadillo_bits/eGlueCube_meat.hpp
+include/armadillo_bits/eGlue_bones.hpp
+include/armadillo_bits/eGlue_meat.hpp
+include/armadillo_bits/eOpCube_bones.hpp
+include/armadillo_bits/eOpCube_meat.hpp
+include/armadillo_bits/eOp_bones.hpp
+include/armadillo_bits/eOp_meat.hpp
+include/armadillo_bits/eglue_core_bones.hpp
+include/armadillo_bits/eglue_core_meat.hpp
+include/armadillo_bits/eop_aux.hpp
+include/armadillo_bits/eop_core_bones.hpp
+include/armadillo_bits/eop_core_meat.hpp
+include/armadillo_bits/fft_engine_fftw3.hpp
+include/armadillo_bits/fft_engine_kissfft.hpp
+include/armadillo_bits/field_bones.hpp
+include/armadillo_bits/field_meat.hpp
+include/armadillo_bits/fill.hpp
+include/armadillo_bits/fn_accu.hpp
+include/armadillo_bits/fn_all.hpp
+include/armadillo_bits/fn_any.hpp
+include/armadillo_bits/fn_approx_equal.hpp
+include/armadillo_bits/fn_as_scalar.hpp
+include/armadillo_bits/fn_chi2rnd.hpp
+include/armadillo_bits/fn_chol.hpp
+include/armadillo_bits/fn_clamp.hpp
+include/armadillo_bits/fn_cond_rcond.hpp
+include/armadillo_bits/fn_conv.hpp
+include/armadillo_bits/fn_conv_to.hpp
+include/armadillo_bits/fn_cor.hpp
+include/armadillo_bits/fn_cov.hpp
+include/armadillo_bits/fn_cross.hpp
+include/armadillo_bits/fn_cumprod.hpp
+include/armadillo_bits/fn_cumsum.hpp
+include/armadillo_bits/fn_det.hpp
+include/armadillo_bits/fn_diagmat.hpp
+include/armadillo_bits/fn_diags_spdiags.hpp
+include/armadillo_bits/fn_diagvec.hpp
+include/armadillo_bits/fn_diff.hpp
+include/armadillo_bits/fn_dot.hpp
+include/armadillo_bits/fn_eig_gen.hpp
+include/armadillo_bits/fn_eig_pair.hpp
+include/armadillo_bits/fn_eig_sym.hpp
+include/armadillo_bits/fn_eigs_gen.hpp
+include/armadillo_bits/fn_eigs_sym.hpp
+include/armadillo_bits/fn_elem.hpp
+include/armadillo_bits/fn_eps.hpp
+include/armadillo_bits/fn_expmat.hpp
+include/armadillo_bits/fn_eye.hpp
+include/armadillo_bits/fn_fft.hpp
+include/armadillo_bits/fn_fft2.hpp
+include/armadillo_bits/fn_find.hpp
+include/armadillo_bits/fn_find_unique.hpp
+include/armadillo_bits/fn_flip.hpp
+include/armadillo_bits/fn_hess.hpp
+include/armadillo_bits/fn_hist.hpp
+include/armadillo_bits/fn_histc.hpp
+include/armadillo_bits/fn_index_max.hpp
+include/armadillo_bits/fn_index_min.hpp
+include/armadillo_bits/fn_inplace_strans.hpp
+include/armadillo_bits/fn_inplace_trans.hpp
+include/armadillo_bits/fn_interp1.hpp
+include/armadillo_bits/fn_interp2.hpp
+include/armadillo_bits/fn_intersect.hpp
+include/armadillo_bits/fn_inv.hpp
+include/armadillo_bits/fn_inv_sympd.hpp
+include/armadillo_bits/fn_join.hpp
+include/armadillo_bits/fn_kmeans.hpp
+include/armadillo_bits/fn_kron.hpp
+include/armadillo_bits/fn_log_det.hpp
+include/armadillo_bits/fn_log_normpdf.hpp
+include/armadillo_bits/fn_logmat.hpp
+include/armadillo_bits/fn_lu.hpp
+include/armadillo_bits/fn_max.hpp
+include/armadillo_bits/fn_mean.hpp
+include/armadillo_bits/fn_median.hpp
+include/armadillo_bits/fn_min.hpp
+include/armadillo_bits/fn_misc.hpp
+include/armadillo_bits/fn_mvnrnd.hpp
+include/armadillo_bits/fn_n_unique.hpp
+include/armadillo_bits/fn_nonzeros.hpp
+include/armadillo_bits/fn_norm.hpp
+include/armadillo_bits/fn_normalise.hpp
+include/armadillo_bits/fn_normcdf.hpp
+include/armadillo_bits/fn_normpdf.hpp
+include/armadillo_bits/fn_numel.hpp
+include/armadillo_bits/fn_ones.hpp
+include/armadillo_bits/fn_orth_null.hpp
+include/armadillo_bits/fn_pinv.hpp
+include/armadillo_bits/fn_polyfit.hpp
+include/armadillo_bits/fn_polyval.hpp
+include/armadillo_bits/fn_powext.hpp
+include/armadillo_bits/fn_powmat.hpp
+include/armadillo_bits/fn_princomp.hpp
+include/armadillo_bits/fn_prod.hpp
+include/armadillo_bits/fn_qr.hpp
+include/armadillo_bits/fn_quantile.hpp
+include/armadillo_bits/fn_qz.hpp
+include/armadillo_bits/fn_randg.hpp
+include/armadillo_bits/fn_randi.hpp
+include/armadillo_bits/fn_randn.hpp
+include/armadillo_bits/fn_randperm.hpp
+include/armadillo_bits/fn_randu.hpp
+include/armadillo_bits/fn_range.hpp
+include/armadillo_bits/fn_rank.hpp
+include/armadillo_bits/fn_regspace.hpp
+include/armadillo_bits/fn_repelem.hpp
+include/armadillo_bits/fn_repmat.hpp
+include/armadillo_bits/fn_reshape.hpp
+include/armadillo_bits/fn_resize.hpp
+include/armadillo_bits/fn_reverse.hpp
+include/armadillo_bits/fn_roots.hpp
+include/armadillo_bits/fn_schur.hpp
+include/armadillo_bits/fn_shift.hpp
+include/armadillo_bits/fn_shuffle.hpp
+include/armadillo_bits/fn_size.hpp
+include/armadillo_bits/fn_solve.hpp
+include/armadillo_bits/fn_sort.hpp
+include/armadillo_bits/fn_sort_index.hpp
+include/armadillo_bits/fn_speye.hpp
+include/armadillo_bits/fn_spones.hpp
+include/armadillo_bits/fn_sprandn.hpp
+include/armadillo_bits/fn_sprandu.hpp
+include/armadillo_bits/fn_spsolve.hpp
+include/armadillo_bits/fn_sqrtmat.hpp
+include/armadillo_bits/fn_stddev.hpp
+include/armadillo_bits/fn_strans.hpp
+include/armadillo_bits/fn_sum.hpp
+include/armadillo_bits/fn_svd.hpp
+include/armadillo_bits/fn_svds.hpp
+include/armadillo_bits/fn_sylvester.hpp
+include/armadillo_bits/fn_symmat.hpp
+include/armadillo_bits/fn_toeplitz.hpp
+include/armadillo_bits/fn_trace.hpp
+include/armadillo_bits/fn_trans.hpp
+include/armadillo_bits/fn_trapz.hpp
+include/armadillo_bits/fn_trig.hpp
+include/armadillo_bits/fn_trimat.hpp
+include/armadillo_bits/fn_trimat_ind.hpp
+include/armadillo_bits/fn_trunc_exp.hpp
+include/armadillo_bits/fn_trunc_log.hpp
+include/armadillo_bits/fn_unique.hpp
+include/armadillo_bits/fn_var.hpp
+include/armadillo_bits/fn_vecnorm.hpp
+include/armadillo_bits/fn_vectorise.hpp
+include/armadillo_bits/fn_wishrnd.hpp
+include/armadillo_bits/fn_zeros.hpp
+include/armadillo_bits/glue_affmul_bones.hpp
+include/armadillo_bits/glue_affmul_meat.hpp
+include/armadillo_bits/glue_atan2_bones.hpp
+include/armadillo_bits/glue_atan2_meat.hpp
+include/armadillo_bits/glue_conv_bones.hpp
+include/armadillo_bits/glue_conv_meat.hpp
+include/armadillo_bits/glue_cor_bones.hpp
+include/armadillo_bits/glue_cor_meat.hpp
+include/armadillo_bits/glue_cov_bones.hpp
+include/armadillo_bits/glue_cov_meat.hpp
+include/armadillo_bits/glue_cross_bones.hpp
+include/armadillo_bits/glue_cross_meat.hpp
+include/armadillo_bits/glue_hist_bones.hpp
+include/armadillo_bits/glue_hist_meat.hpp
+include/armadillo_bits/glue_histc_bones.hpp
+include/armadillo_bits/glue_histc_meat.hpp
+include/armadillo_bits/glue_hypot_bones.hpp
+include/armadillo_bits/glue_hypot_meat.hpp
+include/armadillo_bits/glue_intersect_bones.hpp
+include/armadillo_bits/glue_intersect_meat.hpp
+include/armadillo_bits/glue_join_bones.hpp
+include/armadillo_bits/glue_join_meat.hpp
+include/armadillo_bits/glue_kron_bones.hpp
+include/armadillo_bits/glue_kron_meat.hpp
+include/armadillo_bits/glue_max_bones.hpp
+include/armadillo_bits/glue_max_meat.hpp
+include/armadillo_bits/glue_min_bones.hpp
+include/armadillo_bits/glue_min_meat.hpp
+include/armadillo_bits/glue_mixed_bones.hpp
+include/armadillo_bits/glue_mixed_meat.hpp
+include/armadillo_bits/glue_mvnrnd_bones.hpp
+include/armadillo_bits/glue_mvnrnd_meat.hpp
+include/armadillo_bits/glue_polyfit_bones.hpp
+include/armadillo_bits/glue_polyfit_meat.hpp
+include/armadillo_bits/glue_polyval_bones.hpp
+include/armadillo_bits/glue_polyval_meat.hpp
+include/armadillo_bits/glue_powext_bones.hpp
+include/armadillo_bits/glue_powext_meat.hpp
+include/armadillo_bits/glue_quantile_bones.hpp
+include/armadillo_bits/glue_quantile_meat.hpp
+include/armadillo_bits/glue_relational_bones.hpp
+include/armadillo_bits/glue_relational_meat.hpp
+include/armadillo_bits/glue_solve_bones.hpp
+include/armadillo_bits/glue_solve_meat.hpp
+include/armadillo_bits/glue_times_bones.hpp
+include/armadillo_bits/glue_times_meat.hpp
+include/armadillo_bits/glue_times_misc_bones.hpp
+include/armadillo_bits/glue_times_misc_meat.hpp
+include/armadillo_bits/glue_toeplitz_bones.hpp
+include/armadillo_bits/glue_toeplitz_meat.hpp
+include/armadillo_bits/glue_trapz_bones.hpp
+include/armadillo_bits/glue_trapz_meat.hpp
+include/armadillo_bits/gmm_diag_bones.hpp
+include/armadillo_bits/gmm_diag_meat.hpp
+include/armadillo_bits/gmm_full_bones.hpp
+include/armadillo_bits/gmm_full_meat.hpp
+include/armadillo_bits/gmm_misc_bones.hpp
+include/armadillo_bits/gmm_misc_meat.hpp
+include/armadillo_bits/hdf5_misc.hpp
+include/armadillo_bits/hdf5_name.hpp
+include/armadillo_bits/include_hdf5.hpp
+include/armadillo_bits/include_superlu.hpp
+include/armadillo_bits/injector_bones.hpp
+include/armadillo_bits/injector_meat.hpp
+include/armadillo_bits/memory.hpp
+include/armadillo_bits/mp_misc.hpp
+include/armadillo_bits/mtGlueCube_bones.hpp
+include/armadillo_bits/mtGlueCube_meat.hpp
+include/armadillo_bits/mtGlue_bones.hpp
+include/armadillo_bits/mtGlue_meat.hpp
+include/armadillo_bits/mtOpCube_bones.hpp
+include/armadillo_bits/mtOpCube_meat.hpp
+include/armadillo_bits/mtOp_bones.hpp
+include/armadillo_bits/mtOp_meat.hpp
+include/armadillo_bits/mtSpGlue_bones.hpp
+include/armadillo_bits/mtSpGlue_meat.hpp
+include/armadillo_bits/mtSpOp_bones.hpp
+include/armadillo_bits/mtSpOp_meat.hpp
+include/armadillo_bits/mul_gemm.hpp
+include/armadillo_bits/mul_gemm_mixed.hpp
+include/armadillo_bits/mul_gemv.hpp
+include/armadillo_bits/mul_herk.hpp
+include/armadillo_bits/mul_syrk.hpp
+include/armadillo_bits/newarp_DenseGenMatProd_bones.hpp
+include/armadillo_bits/newarp_DenseGenMatProd_meat.hpp
+include/armadillo_bits/newarp_DoubleShiftQR_bones.hpp
+include/armadillo_bits/newarp_DoubleShiftQR_meat.hpp
+include/armadillo_bits/newarp_EigsSelect.hpp
+include/armadillo_bits/newarp_GenEigsSolver_bones.hpp
+include/armadillo_bits/newarp_GenEigsSolver_meat.hpp
+include/armadillo_bits/newarp_SortEigenvalue.hpp
+include/armadillo_bits/newarp_SparseGenMatProd_bones.hpp
+include/armadillo_bits/newarp_SparseGenMatProd_meat.hpp
+include/armadillo_bits/newarp_SparseGenRealShiftSolve_bones.hpp
+include/armadillo_bits/newarp_SparseGenRealShiftSolve_meat.hpp
+include/armadillo_bits/newarp_SymEigsShiftSolver_bones.hpp
+include/armadillo_bits/newarp_SymEigsShiftSolver_meat.hpp
+include/armadillo_bits/newarp_SymEigsSolver_bones.hpp
+include/armadillo_bits/newarp_SymEigsSolver_meat.hpp
+include/armadillo_bits/newarp_TridiagEigen_bones.hpp
+include/armadillo_bits/newarp_TridiagEigen_meat.hpp
+include/armadillo_bits/newarp_UpperHessenbergEigen_bones.hpp
+include/armadillo_bits/newarp_UpperHessenbergEigen_meat.hpp
+include/armadillo_bits/newarp_UpperHessenbergQR_bones.hpp
+include/armadillo_bits/newarp_UpperHessenbergQR_meat.hpp
+include/armadillo_bits/newarp_cx_attrib.hpp
+include/armadillo_bits/op_all_bones.hpp
+include/armadillo_bits/op_all_meat.hpp
+include/armadillo_bits/op_any_bones.hpp
+include/armadillo_bits/op_any_meat.hpp
+include/armadillo_bits/op_chi2rnd_bones.hpp
+include/armadillo_bits/op_chi2rnd_meat.hpp
+include/armadillo_bits/op_chol_bones.hpp
+include/armadillo_bits/op_chol_meat.hpp
+include/armadillo_bits/op_clamp_bones.hpp
+include/armadillo_bits/op_clamp_meat.hpp
+include/armadillo_bits/op_col_as_mat_bones.hpp
+include/armadillo_bits/op_col_as_mat_meat.hpp
+include/armadillo_bits/op_cond_bones.hpp
+include/armadillo_bits/op_cond_meat.hpp
+include/armadillo_bits/op_cor_bones.hpp
+include/armadillo_bits/op_cor_meat.hpp
+include/armadillo_bits/op_cov_bones.hpp
+include/armadillo_bits/op_cov_meat.hpp
+include/armadillo_bits/op_cumprod_bones.hpp
+include/armadillo_bits/op_cumprod_meat.hpp
+include/armadillo_bits/op_cumsum_bones.hpp
+include/armadillo_bits/op_cumsum_meat.hpp
+include/armadillo_bits/op_cx_scalar_bones.hpp
+include/armadillo_bits/op_cx_scalar_meat.hpp
+include/armadillo_bits/op_det_bones.hpp
+include/armadillo_bits/op_det_meat.hpp
+include/armadillo_bits/op_diagmat_bones.hpp
+include/armadillo_bits/op_diagmat_meat.hpp
+include/armadillo_bits/op_diagvec_bones.hpp
+include/armadillo_bits/op_diagvec_meat.hpp
+include/armadillo_bits/op_diff_bones.hpp
+include/armadillo_bits/op_diff_meat.hpp
+include/armadillo_bits/op_dot_bones.hpp
+include/armadillo_bits/op_dot_meat.hpp
+include/armadillo_bits/op_dotext_bones.hpp
+include/armadillo_bits/op_dotext_meat.hpp
+include/armadillo_bits/op_expmat_bones.hpp
+include/armadillo_bits/op_expmat_meat.hpp
+include/armadillo_bits/op_fft_bones.hpp
+include/armadillo_bits/op_fft_meat.hpp
+include/armadillo_bits/op_find_bones.hpp
+include/armadillo_bits/op_find_meat.hpp
+include/armadillo_bits/op_find_unique_bones.hpp
+include/armadillo_bits/op_find_unique_meat.hpp
+include/armadillo_bits/op_flip_bones.hpp
+include/armadillo_bits/op_flip_meat.hpp
+include/armadillo_bits/op_hist_bones.hpp
+include/armadillo_bits/op_hist_meat.hpp
+include/armadillo_bits/op_htrans_bones.hpp
+include/armadillo_bits/op_htrans_meat.hpp
+include/armadillo_bits/op_index_max_bones.hpp
+include/armadillo_bits/op_index_max_meat.hpp
+include/armadillo_bits/op_index_min_bones.hpp
+include/armadillo_bits/op_index_min_meat.hpp
+include/armadillo_bits/op_inv_gen_bones.hpp
+include/armadillo_bits/op_inv_gen_meat.hpp
+include/armadillo_bits/op_inv_spd_bones.hpp
+include/armadillo_bits/op_inv_spd_meat.hpp
+include/armadillo_bits/op_log_det_bones.hpp
+include/armadillo_bits/op_log_det_meat.hpp
+include/armadillo_bits/op_logmat_bones.hpp
+include/armadillo_bits/op_logmat_meat.hpp
+include/armadillo_bits/op_max_bones.hpp
+include/armadillo_bits/op_max_meat.hpp
+include/armadillo_bits/op_mean_bones.hpp
+include/armadillo_bits/op_mean_meat.hpp
+include/armadillo_bits/op_median_bones.hpp
+include/armadillo_bits/op_median_meat.hpp
+include/armadillo_bits/op_min_bones.hpp
+include/armadillo_bits/op_min_meat.hpp
+include/armadillo_bits/op_misc_bones.hpp
+include/armadillo_bits/op_misc_meat.hpp
+include/armadillo_bits/op_nonzeros_bones.hpp
+include/armadillo_bits/op_nonzeros_meat.hpp
+include/armadillo_bits/op_norm2est_bones.hpp
+include/armadillo_bits/op_norm2est_meat.hpp
+include/armadillo_bits/op_norm_bones.hpp
+include/armadillo_bits/op_norm_meat.hpp
+include/armadillo_bits/op_normalise_bones.hpp
+include/armadillo_bits/op_normalise_meat.hpp
+include/armadillo_bits/op_orth_null_bones.hpp
+include/armadillo_bits/op_orth_null_meat.hpp
+include/armadillo_bits/op_pinv_bones.hpp
+include/armadillo_bits/op_pinv_meat.hpp
+include/armadillo_bits/op_powmat_bones.hpp
+include/armadillo_bits/op_powmat_meat.hpp
+include/armadillo_bits/op_princomp_bones.hpp
+include/armadillo_bits/op_princomp_meat.hpp
+include/armadillo_bits/op_prod_bones.hpp
+include/armadillo_bits/op_prod_meat.hpp
+include/armadillo_bits/op_range_bones.hpp
+include/armadillo_bits/op_range_meat.hpp
+include/armadillo_bits/op_rank_bones.hpp
+include/armadillo_bits/op_rank_meat.hpp
+include/armadillo_bits/op_rcond_bones.hpp
+include/armadillo_bits/op_rcond_meat.hpp
+include/armadillo_bits/op_relational_bones.hpp
+include/armadillo_bits/op_relational_meat.hpp
+include/armadillo_bits/op_repelem_bones.hpp
+include/armadillo_bits/op_repelem_meat.hpp
+include/armadillo_bits/op_repmat_bones.hpp
+include/armadillo_bits/op_repmat_meat.hpp
+include/armadillo_bits/op_reshape_bones.hpp
+include/armadillo_bits/op_reshape_meat.hpp
+include/armadillo_bits/op_resize_bones.hpp
+include/armadillo_bits/op_resize_meat.hpp
+include/armadillo_bits/op_reverse_bones.hpp
+include/armadillo_bits/op_reverse_meat.hpp
+include/armadillo_bits/op_roots_bones.hpp
+include/armadillo_bits/op_roots_meat.hpp
+include/armadillo_bits/op_row_as_mat_bones.hpp
+include/armadillo_bits/op_row_as_mat_meat.hpp
+include/armadillo_bits/op_shift_bones.hpp
+include/armadillo_bits/op_shift_meat.hpp
+include/armadillo_bits/op_shuffle_bones.hpp
+include/armadillo_bits/op_shuffle_meat.hpp
+include/armadillo_bits/op_sort_bones.hpp
+include/armadillo_bits/op_sort_index_bones.hpp
+include/armadillo_bits/op_sort_index_meat.hpp
+include/armadillo_bits/op_sort_meat.hpp
+include/armadillo_bits/op_sp_minus_bones.hpp
+include/armadillo_bits/op_sp_minus_meat.hpp
+include/armadillo_bits/op_sp_plus_bones.hpp
+include/armadillo_bits/op_sp_plus_meat.hpp
+include/armadillo_bits/op_sqrtmat_bones.hpp
+include/armadillo_bits/op_sqrtmat_meat.hpp
+include/armadillo_bits/op_stddev_bones.hpp
+include/armadillo_bits/op_stddev_meat.hpp
+include/armadillo_bits/op_strans_bones.hpp
+include/armadillo_bits/op_strans_meat.hpp
+include/armadillo_bits/op_sum_bones.hpp
+include/armadillo_bits/op_sum_meat.hpp
+include/armadillo_bits/op_symmat_bones.hpp
+include/armadillo_bits/op_symmat_meat.hpp
+include/armadillo_bits/op_toeplitz_bones.hpp
+include/armadillo_bits/op_toeplitz_meat.hpp
+include/armadillo_bits/op_trimat_bones.hpp
+include/armadillo_bits/op_trimat_meat.hpp
+include/armadillo_bits/op_unique_bones.hpp
+include/armadillo_bits/op_unique_meat.hpp
+include/armadillo_bits/op_var_bones.hpp
+include/armadillo_bits/op_var_meat.hpp
+include/armadillo_bits/op_vecnorm_bones.hpp
+include/armadillo_bits/op_vecnorm_meat.hpp
+include/armadillo_bits/op_vectorise_bones.hpp
+include/armadillo_bits/op_vectorise_meat.hpp
+include/armadillo_bits/op_wishrnd_bones.hpp
+include/armadillo_bits/op_wishrnd_meat.hpp
+include/armadillo_bits/operator_cube_div.hpp
+include/armadillo_bits/operator_cube_minus.hpp
+include/armadillo_bits/operator_cube_plus.hpp
+include/armadillo_bits/operator_cube_relational.hpp
+include/armadillo_bits/operator_cube_schur.hpp
+include/armadillo_bits/operator_cube_times.hpp
+include/armadillo_bits/operator_div.hpp
+include/armadillo_bits/operator_minus.hpp
+include/armadillo_bits/operator_ostream.hpp
+include/armadillo_bits/operator_plus.hpp
+include/armadillo_bits/operator_relational.hpp
+include/armadillo_bits/operator_schur.hpp
+include/armadillo_bits/operator_times.hpp
+include/armadillo_bits/podarray_bones.hpp
+include/armadillo_bits/podarray_meat.hpp
+include/armadillo_bits/promote_type.hpp
+include/armadillo_bits/restrictors.hpp
+include/armadillo_bits/running_stat_bones.hpp
+include/armadillo_bits/running_stat_meat.hpp
+include/armadillo_bits/running_stat_vec_bones.hpp
+include/armadillo_bits/running_stat_vec_meat.hpp
+include/armadillo_bits/sp_auxlib_bones.hpp
+include/armadillo_bits/sp_auxlib_meat.hpp
+include/armadillo_bits/span.hpp
+include/armadillo_bits/spdiagview_bones.hpp
+include/armadillo_bits/spdiagview_meat.hpp
+include/armadillo_bits/spglue_join_bones.hpp
+include/armadillo_bits/spglue_join_meat.hpp
+include/armadillo_bits/spglue_kron_bones.hpp
+include/armadillo_bits/spglue_kron_meat.hpp
+include/armadillo_bits/spglue_max_bones.hpp
+include/armadillo_bits/spglue_max_meat.hpp
+include/armadillo_bits/spglue_merge_bones.hpp
+include/armadillo_bits/spglue_merge_meat.hpp
+include/armadillo_bits/spglue_min_bones.hpp
+include/armadillo_bits/spglue_min_meat.hpp
+include/armadillo_bits/spglue_minus_bones.hpp
+include/armadillo_bits/spglue_minus_meat.hpp
+include/armadillo_bits/spglue_plus_bones.hpp
+include/armadillo_bits/spglue_plus_meat.hpp
+include/armadillo_bits/spglue_relational_bones.hpp
+include/armadillo_bits/spglue_relational_meat.hpp
+include/armadillo_bits/spglue_schur_bones.hpp
+include/armadillo_bits/spglue_schur_meat.hpp
+include/armadillo_bits/spglue_times_bones.hpp
+include/armadillo_bits/spglue_times_meat.hpp
+include/armadillo_bits/spop_diagmat_bones.hpp
+include/armadillo_bits/spop_diagmat_meat.hpp
+include/armadillo_bits/spop_htrans_bones.hpp
+include/armadillo_bits/spop_htrans_meat.hpp
+include/armadillo_bits/spop_max_bones.hpp
+include/armadillo_bits/spop_max_meat.hpp
+include/armadillo_bits/spop_mean_bones.hpp
+include/armadillo_bits/spop_mean_meat.hpp
+include/armadillo_bits/spop_min_bones.hpp
+include/armadillo_bits/spop_min_meat.hpp
+include/armadillo_bits/spop_misc_bones.hpp
+include/armadillo_bits/spop_misc_meat.hpp
+include/armadillo_bits/spop_norm_bones.hpp
+include/armadillo_bits/spop_norm_meat.hpp
+include/armadillo_bits/spop_normalise_bones.hpp
+include/armadillo_bits/spop_normalise_meat.hpp
+include/armadillo_bits/spop_repmat_bones.hpp
+include/armadillo_bits/spop_repmat_meat.hpp
+include/armadillo_bits/spop_reverse_bones.hpp
+include/armadillo_bits/spop_reverse_meat.hpp
+include/armadillo_bits/spop_strans_bones.hpp
+include/armadillo_bits/spop_strans_meat.hpp
+include/armadillo_bits/spop_sum_bones.hpp
+include/armadillo_bits/spop_sum_meat.hpp
+include/armadillo_bits/spop_symmat_bones.hpp
+include/armadillo_bits/spop_symmat_meat.hpp
+include/armadillo_bits/spop_trimat_bones.hpp
+include/armadillo_bits/spop_trimat_meat.hpp
+include/armadillo_bits/spop_var_bones.hpp
+include/armadillo_bits/spop_var_meat.hpp
+include/armadillo_bits/spop_vecnorm_bones.hpp
+include/armadillo_bits/spop_vecnorm_meat.hpp
+include/armadillo_bits/spop_vectorise_bones.hpp
+include/armadillo_bits/spop_vectorise_meat.hpp
+include/armadillo_bits/spsolve_factoriser_bones.hpp
+include/armadillo_bits/spsolve_factoriser_meat.hpp
+include/armadillo_bits/strip.hpp
+include/armadillo_bits/subview_bones.hpp
+include/armadillo_bits/subview_cube_bones.hpp
+include/armadillo_bits/subview_cube_each_bones.hpp
+include/armadillo_bits/subview_cube_each_meat.hpp
+include/armadillo_bits/subview_cube_meat.hpp
+include/armadillo_bits/subview_cube_slices_bones.hpp
+include/armadillo_bits/subview_cube_slices_meat.hpp
+include/armadillo_bits/subview_each_bones.hpp
+include/armadillo_bits/subview_each_meat.hpp
+include/armadillo_bits/subview_elem1_bones.hpp
+include/armadillo_bits/subview_elem1_meat.hpp
+include/armadillo_bits/subview_elem2_bones.hpp
+include/armadillo_bits/subview_elem2_meat.hpp
+include/armadillo_bits/subview_field_bones.hpp
+include/armadillo_bits/subview_field_meat.hpp
+include/armadillo_bits/subview_meat.hpp
+include/armadillo_bits/sym_helper.hpp
+include/armadillo_bits/traits.hpp
+include/armadillo_bits/translate_arpack.hpp
+include/armadillo_bits/translate_atlas.hpp
+include/armadillo_bits/translate_blas.hpp
+include/armadillo_bits/translate_fftw3.hpp
+include/armadillo_bits/translate_lapack.hpp
+include/armadillo_bits/translate_superlu.hpp
+include/armadillo_bits/trimat_helper.hpp
+include/armadillo_bits/typedef_elem.hpp
+include/armadillo_bits/typedef_elem_check.hpp
+include/armadillo_bits/typedef_mat.hpp
+include/armadillo_bits/typedef_mat_fixed.hpp
+include/armadillo_bits/unwrap.hpp
+include/armadillo_bits/unwrap_cube.hpp
+include/armadillo_bits/unwrap_spmat.hpp
+include/armadillo_bits/upgrade_val.hpp
+include/armadillo_bits/wall_clock_bones.hpp
+include/armadillo_bits/wall_clock_meat.hpp
+include/armadillo_bits/xtrans_mat_bones.hpp
+include/armadillo_bits/xtrans_mat_meat.hpp
+include/armadillo_bits/xvec_htrans_bones.hpp
+include/armadillo_bits/xvec_htrans_meat.hpp
+lib/libarmadillo.so
+lib/libarmadillo.so.12
+lib/libarmadillo.so.${PKGVERSION}
+lib/pkgconfig/armadillo.pc
+share/Armadillo/CMake/ArmadilloConfig.cmake
+share/Armadillo/CMake/ArmadilloConfigVersion.cmake
+share/Armadillo/CMake/ArmadilloLibraryDepends-noconfig.cmake
+share/Armadillo/CMake/ArmadilloLibraryDepends.cmake
Index: pkgsrc/math/armadillo/buildlink3.mk
diff -u /dev/null pkgsrc/math/armadillo/buildlink3.mk:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/buildlink3.mk Tue Dec 19 12:28:50 2023
@@ -0,0 +1,17 @@
+# $NetBSD: buildlink3.mk,v 1.1 2023/12/19 12:28:50 thor Exp $
+
+BUILDLINK_TREE+=       armadillo
+
+.if !defined(ARMADILLO_BUILDLINK3_MK)
+ARMADILLO_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.armadillo+=      armadillo>=4.45.2
+BUILDLINK_ABI_DEPENDS.armadillo?=      armadillo>=4.45.2
+BUILDLINK_PKGSRCDIR.armadillo?=                ../../math/armadillo
+
+.include "../../mk/blas.buildlink3.mk"
+.include "../../math/superlu/buildlink3.mk"
+.include "../../math/arpack-ng/buildlink3.mk"
+.endif # ARMADILLO_BUILDLINK3_MK
+
+BUILDLINK_TREE+=       -armadillo
Index: pkgsrc/math/armadillo/distinfo
diff -u /dev/null pkgsrc/math/armadillo/distinfo:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/distinfo      Tue Dec 19 12:28:50 2023
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1 2023/12/19 12:28:50 thor Exp $
+
+BLAKE2s (armadillo-12.6.7.tar.xz) = 6953048ef4570294c4851f6684147106a33b8abade8cc36fe49be35a0a6827ab
+SHA512 (armadillo-12.6.7.tar.xz) = bf792ab2655b1cf957a29f1bdd7a692fd75c79f4f2df1eca35d84969908784f3542b82dd5a5b0a339ab88719c2c602a175dee7fd1e9dbd2884eb19a81d061fa3
+Size (armadillo-12.6.7.tar.xz) = 6813060 bytes
+SHA1 (patch-CMakeLists.txt) = 9c6d822e52b1020c594116156018e7434cda3e17

Index: pkgsrc/math/armadillo/patches/patch-CMakeLists.txt
diff -u /dev/null pkgsrc/math/armadillo/patches/patch-CMakeLists.txt:1.1
--- /dev/null   Tue Dec 19 12:28:50 2023
+++ pkgsrc/math/armadillo/patches/patch-CMakeLists.txt  Tue Dec 19 12:28:50 2023
@@ -0,0 +1,241 @@
+$NetBSD: patch-CMakeLists.txt,v 1.1 2023/12/19 12:28:50 thor Exp $
+
+Make the build just use the modern FindBLAS and FindLAPACK builtins
+of a recent-ish cmake. That avoids so much trouble forcing choices.
+
+--- CMakeLists.txt.orig        2016-06-16 16:27:07.000000000 +0000
++++ CMakeLists.txt
+@@ -28,7 +28,7 @@
+ ## NOTE: More details: https://arma.sourceforge.net/faq.html
+ 
+ 
+-cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
++cmake_minimum_required(VERSION 3.6 FATAL_ERROR)
+ 
+ if(NOT (${CMAKE_MAJOR_VERSION} LESS 3))
+   if(POLICY CMP0025)
+@@ -249,194 +249,21 @@ message(STATUS "*** Looking for external
+ ## Find LAPACK and BLAS libraries, or their optimised versions
+ ##
+ 
+-set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake_aux/Modules/")
+-
+-if(APPLE)
+-  message(STATUS "Detected macOS")
+-  
+-  set(ARMA_USE_LAPACK     true)
+-  set(ARMA_USE_BLAS       true)
+-  set(ARMA_USE_ACCELERATE true)
+-  
+-  if(ALLOW_OPENBLAS_MACOS)
+-    include(ARMA_FindOpenBLAS)
+-    message(STATUS "OpenBLAS_FOUND = ${OpenBLAS_FOUND}")
+-    message(STATUS "")
+-    message(STATUS "*** If use of OpenBLAS is causing problems,")
+-    message(STATUS "*** rerun cmake with detection of OpenBLAS disabled:")
+-    message(STATUS "*** cmake -D ALLOW_OPENBLAS_MACOS=false .")
+-    message(STATUS "")
+-    
+-    if(OpenBLAS_FOUND)
+-      set(ARMA_LIBS ${ARMA_LIBS} ${OpenBLAS_LIBRARIES})
+-      set(ARMA_USE_ACCELERATE false)
+-    endif()
+-  endif()
+-  
+-  if(ALLOW_BLAS_LAPACK_MACOS)
+-    include(ARMA_FindBLAS)
+-    include(ARMA_FindLAPACK)
+-    message(STATUS "  BLAS_FOUND = ${BLAS_FOUND}"  )
+-    message(STATUS "LAPACK_FOUND = ${LAPACK_FOUND}")
+-    message(STATUS "")
+-    message(STATUS "*** If use of BLAS and LAPACK is causing problems,")
+-    message(STATUS "*** rerun cmake with detection of BLAS and LAPACK disabled:")
+-    message(STATUS "*** cmake -D ALLOW_BLAS_LAPACK_MACOS=false .")
+-    message(STATUS "")
+-    
+-    if(BLAS_FOUND AND LAPACK_FOUND)
+-      set(ARMA_LIBS ${ARMA_LIBS} ${BLAS_LIBRARIES})
+-      set(ARMA_LIBS ${ARMA_LIBS} ${LAPACK_LIBRARIES})
+-      set(ARMA_USE_ACCELERATE false)
+-    endif()
+-  endif()
+-  
+-  if(ARMA_USE_ACCELERATE)
+-    set(ARMA_LIBS ${ARMA_LIBS} "-framework Accelerate")  # or "-framework accelerate" ?
+-    message(STATUS "Added '-framework Accelerate' to compiler flags")
+-  endif()
+-  
+-  if(DEFINED CMAKE_CXX_COMPILER_ID)
+-    if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
+-      set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
+-      message(STATUS "Detected Clang compiler on macOS. Added '-stdlib=libc++' to compiler flags")
+-    endif()
+-    
+-    if(NOT (${CMAKE_MAJOR_VERSION} LESS 3))
+-      if(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
+-        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
+-        message(STATUS "Detected AppleClang compiler on macOS. Added '-stdlib=libc++' to compiler flags")
+-      endif()
+-    endif()
+-  endif()
+-  
+-  set(CMAKE_MACOSX_RPATH 1)
+-  
+-else()
+-  
+-  if(ALLOW_FLEXIBLAS_LINUX AND (${CMAKE_SYSTEM_NAME} MATCHES "Linux"))
+-    include(ARMA_FindFlexiBLAS)
+-  else()
+-    set(FlexiBLAS_FOUND false)
+-  endif()
+-  
+-  include(ARMA_FindMKL)
+-  include(ARMA_FindOpenBLAS)
+-  include(ARMA_FindATLAS)     # TODO: remove support for ATLAS in next major version
+-  include(ARMA_FindBLAS)
+-  include(ARMA_FindLAPACK)
+-  
+-  message(STATUS "FlexiBLAS_FOUND = ${FlexiBLAS_FOUND}" )
+-  message(STATUS "      MKL_FOUND = ${MKL_FOUND}"       )
+-  message(STATUS " OpenBLAS_FOUND = ${OpenBLAS_FOUND}"  )
+-  message(STATUS "    ATLAS_FOUND = ${ATLAS_FOUND}"     )
+-  message(STATUS "     BLAS_FOUND = ${BLAS_FOUND}"      )
+-  message(STATUS "   LAPACK_FOUND = ${LAPACK_FOUND}"    )
+-  
+-  if(FlexiBLAS_FOUND)
+-    
+-    set(ARMA_USE_LAPACK true)
+-    set(ARMA_USE_BLAS   true)
+-    
+-    set(ARMA_LIBS ${ARMA_LIBS} ${FlexiBLAS_LIBRARIES})
+-    
+-    message(STATUS "")
+-    message(STATUS "*** Using FlexiBLAS to access BLAS and LAPACK functions.")
+-    message(STATUS "*** https://www.mpi-magdeburg.mpg.de/projects/flexiblas";)
+-    message(STATUS "*** WARNING: SuperLU and ARPACK must also link with FlexiBLAS.")
+-    message(STATUS "")
+-    message(STATUS "*** If using FlexiBLAS causes problems, ")
+-    message(STATUS "*** rerun cmake with FlexiBLAS detection disabled:")
+-    message(STATUS "*** cmake -D ALLOW_FLEXIBLAS_LINUX=false .")
+-    message(STATUS "")
+-    
+-  elseif(MKL_FOUND)
+-    
+-    set(ARMA_USE_LAPACK true)
+-    set(ARMA_USE_BLAS   true)
+-    set(ARMA_LIBS ${ARMA_LIBS} ${MKL_LIBRARIES})
+-    
+-    message(STATUS "")
+-    message(STATUS "*** If the MKL libraries are installed in non-standard locations such as")
+-    message(STATUS "*** /opt/intel/mkl, /opt/intel/composerxe/, /usr/local/intel/mkl")
+-    message(STATUS "*** make sure the run-time linker can find them.")
+-    message(STATUS "*** On Linux systems this can be done by editing /etc/ld.so.conf")
+-    message(STATUS "*** or modifying the LD_LIBRARY_PATH environment variable.")
+-    message(STATUS "")
+-    message(STATUS "*** On systems with SELinux enabled (eg. Fedora, RHEL),")
+-    message(STATUS "*** you may need to change the SELinux type of all MKL libraries")
+-    message(STATUS "*** to fix permission problems that may occur during run-time.")
+-    message(STATUS "")
+-    
+-  else()
+-    
+-    if(OpenBLAS_FOUND AND ATLAS_FOUND)
+-      message(STATUS "")
+-      message(STATUS "*** NOTE: found both OpenBLAS and ATLAS; ATLAS will not be used")
+-    endif()
+-    
+-    if(OpenBLAS_FOUND AND BLAS_FOUND)
+-      message(STATUS "")
+-      message(STATUS "*** NOTE: found both OpenBLAS and BLAS; BLAS will not be used")
+-    endif()
+-    
+-    if(OpenBLAS_FOUND)
+-      
+-      set(ARMA_USE_BLAS true)
+-      set(ARMA_LIBS ${ARMA_LIBS} ${OpenBLAS_LIBRARIES})
+-      
+-      if(OPENBLAS_PROVIDES_LAPACK)
+-        set(ARMA_USE_LAPACK true)
+-      else()
+-        message(STATUS "")
+-        message(STATUS "*** NOTE: if OpenBLAS is known to provide LAPACK functions, recommend to")
+-        message(STATUS "*** NOTE: rerun cmake with the OPENBLAS_PROVIDES_LAPACK option enabled:")
+-        message(STATUS "*** NOTE: cmake -D OPENBLAS_PROVIDES_LAPACK=true .")
+-      endif()
+-      
+-      message(STATUS "")
+-      message(STATUS "*** If the OpenBLAS library is installed in")
+-      message(STATUS "*** /usr/local/lib or /usr/local/lib64")
+-      message(STATUS "*** make sure the run-time linker can find it.")
+-      message(STATUS "*** On Linux systems this can be done by editing /etc/ld.so.conf")
+-      message(STATUS "*** or modifying the LD_LIBRARY_PATH environment variable.")
+-      message(STATUS "")
+-      
+-    else()
+-      
+-      if(ATLAS_FOUND)
+-        set(ARMA_USE_ATLAS true)
+-        set(ARMA_LIBS ${ARMA_LIBS} ${ATLAS_LIBRARIES})
+-        
+-        message(STATUS "")
+-        message(STATUS "*** NOTE: support for ATLAS is deprecated and will be removed;")
+-        message(STATUS "*** NOTE: recommend to use OpenBLAS or FlexiBLAS instead.")
+-        message(STATUS "")
+-      endif()
+-      
+-      if(BLAS_FOUND)
+-        set(ARMA_USE_BLAS true)
+-        set(ARMA_LIBS ${ARMA_LIBS} ${BLAS_LIBRARIES})
+-      endif()
+-      
+-    endif()
+-    
+-    if(LAPACK_FOUND)
+-      if(OpenBLAS_FOUND AND OPENBLAS_PROVIDES_LAPACK)
+-        message(STATUS "*** NOTE: found both OpenBLAS and LAPACK;")
+-        message(STATUS "*** NOTE: option OPENBLAS_PROVIDES_LAPACK is enabled,")
+-        message(STATUS "*** NOTE: so will not link with plain LAPACK.")
+-        message(STATUS "")
+-      else()
+-        set(ARMA_USE_LAPACK true)
+-        set(ARMA_LIBS ${ARMA_LIBS} ${LAPACK_LIBRARIES})
+-      endif()
+-    endif()
+-    
+-  endif()
+-  
++# In a nice world, this encompasses any implementation, including
++# Acclerate.
++find_package(BLAS)
++find_package(LAPACK)
++message(STATUS "     BLAS_FOUND = ${BLAS_FOUND} (${BLAS_LIBRARIES})"      )
++message(STATUS "   LAPACK_FOUND = ${LAPACK_FOUND} (${LAPACK_LIBRARIES})"  )
++if(BLAS_FOUND AND LAPACK_FOUND)
++  set(ARMA_LIBS ${ARMA_LIBS} ${BLAS_LIBRARIES})
++  set(ARMA_LIBS ${ARMA_LIBS} ${LAPACK_LIBRARIES})
++  set(ARMA_USE_LAPACK  true)
++  set(ARMA_USE_BLAS    true)
++  set(ARMA_USE_ACCELERATE false)
+ endif()
+ 
++set (CMAKE_MODULE_PATH "/data/projekte/pkgsrc/work/math/armadillo/work/.buildlink/cmake-Modules" ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}/cmake_aux/Modules/")
+ 
+ include(ARMA_FindARPACK)
+ message(STATUS "ARPACK_FOUND = ${ARPACK_FOUND}")
+@@ -462,16 +289,6 @@ if(NOT ARMA_USE_LAPACK)
+   message(STATUS "")
+   message(STATUS "*** WARNING: Use of LAPACK is not enabled, as no LAPACK compatible library has been found.")
+   message(STATUS "*** WARNING: This will materially degrade the available functionality in Armadillo.")
+-
+-  if(OpenBLAS_FOUND)
+-    message(STATUS "")
+-    message(STATUS "*** NOTE: OpenBLAS found but LAPACK not found.")
+-    message(STATUS "*** NOTE: OpenBLAS may have been built without LAPACK functions,")
+-    message(STATUS "*** NOTE: so cannot assume that LAPACK functions are available.")
+-    message(STATUS "*** NOTE: To forcefully assume that OpenBLAS provides LAPACK functions,")
+-    message(STATUS "*** NOTE: rerun cmake with the OPENBLAS_PROVIDES_LAPACK option enabled:")
+-    message(STATUS "*** NOTE: cmake -D OPENBLAS_PROVIDES_LAPACK=true .")
+-  endif()
+ endif()
+ 
+ 



Home | Main Index | Thread Index | Old Index