aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRwN <rwn@mailo.com>2025-05-06 10:46:27 +0000
committerWen Heping <wen@FreeBSD.org>2025-05-06 10:48:02 +0000
commit7d318f76840996d092777d38cf9bdd001ee6afe4 (patch)
tree7ab70de77214af54eb576ce40b804f85313cf385
parent3239b686038340e350251a43c25d79b130ecfcb2 (diff)
devel/fortran-stdlib: New port
The Fortran Standard Library is a community driven de facto standard library for Fortran. The goal of the Fortran Standard Library is to achieve the following general scope: - Utilities (containers, strings, files, OS/environment integration, unit testing & assertions, logging, ...) - Algorithms (searching and sorting, merging, ...) - Mathematics (linear algebra, sparse matrices, special functions, fast Fourier transform, random numbers, statistics, ordinary differential equations, numerical integration, optimization, ...) PR: 286609 Reported by: RwN <rwn@mailo.com>
-rw-r--r--devel/Makefile1
-rw-r--r--devel/fortran-stdlib/Makefile24
-rw-r--r--devel/fortran-stdlib/distinfo3
-rw-r--r--devel/fortran-stdlib/files/patch-config-CMakeLists.txt11
-rw-r--r--devel/fortran-stdlib/pkg-descr11
-rw-r--r--devel/fortran-stdlib/pkg-plist130
6 files changed, 180 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 6c3937c4e9a1..8095a26700f4 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -728,6 +728,7 @@
SUBDIR += folly
SUBDIR += forge
SUBDIR += forge-devel
+ SUBDIR += fortran-stdlib
SUBDIR += fortran-utils
SUBDIR += fortytwo-encore
SUBDIR += fossil
diff --git a/devel/fortran-stdlib/Makefile b/devel/fortran-stdlib/Makefile
new file mode 100644
index 000000000000..527cd9b09088
--- /dev/null
+++ b/devel/fortran-stdlib/Makefile
@@ -0,0 +1,24 @@
+PORTNAME= fortran-stdlib
+DISTVERSIONPREFIX= v
+DISTVERSION= 0.7.0
+CATEGORIES= devel
+
+MAINTAINER= rwn@mailo.com
+COMMENT= Fortran Standard Library
+WWW= https://stdlib.fortran-lang.org/
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= cmake fortran compiler:features
+
+BUILD_DEPENDS= fypp:devel/py-fypp
+
+USE_GITHUB= yes
+GH_ACCOUNT= fortran-lang
+GH_PROJECT= stdlib
+
+CMAKE_ON= BUILD_SHARED_LIBS
+CMAKE_OFF= BUILD_TESTING
+
+.include <bsd.port.mk>
diff --git a/devel/fortran-stdlib/distinfo b/devel/fortran-stdlib/distinfo
new file mode 100644
index 000000000000..9c122aa48127
--- /dev/null
+++ b/devel/fortran-stdlib/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1746516620
+SHA256 (fortran-lang-stdlib-v0.7.0_GH0.tar.gz) = 07615b1fd0d9c78f04ec5a26234d091cb7e359933ba2caee311dcd6f58d87af0
+SIZE (fortran-lang-stdlib-v0.7.0_GH0.tar.gz) = 3669255
diff --git a/devel/fortran-stdlib/files/patch-config-CMakeLists.txt b/devel/fortran-stdlib/files/patch-config-CMakeLists.txt
new file mode 100644
index 000000000000..ca524d5c609d
--- /dev/null
+++ b/devel/fortran-stdlib/files/patch-config-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- config/CMakeLists.txt.orig 2024-07-01 17:21:34 UTC
++++ config/CMakeLists.txt
+@@ -3,7 +3,7 @@ if(NOT DEFINED CMAKE_INSTALL_MODULEDIR)
+ if(NOT DEFINED CMAKE_INSTALL_MODULEDIR)
+ set(
+ CMAKE_INSTALL_MODULEDIR
+- "${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${CMAKE_Fortran_COMPILER_ID}-${CMAKE_Fortran_COMPILER_VERSION}"
++ "${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/${CMAKE_Fortran_COMPILER_ID}"
+ CACHE
+ STRING
+ "Directory in prefix to install generated module files"
diff --git a/devel/fortran-stdlib/pkg-descr b/devel/fortran-stdlib/pkg-descr
new file mode 100644
index 000000000000..6655bc76b4b0
--- /dev/null
+++ b/devel/fortran-stdlib/pkg-descr
@@ -0,0 +1,11 @@
+The Fortran Standard Library is a community driven de facto standard library for
+Fortran.
+
+The goal of the Fortran Standard Library is to achieve the following general
+scope:
+- Utilities (containers, strings, files, OS/environment integration, unit
+ testing & assertions, logging, ...)
+- Algorithms (searching and sorting, merging, ...)
+- Mathematics (linear algebra, sparse matrices, special functions, fast Fourier
+ transform, random numbers, statistics, ordinary differential equations,
+ numerical integration, optimization, ...)
diff --git a/devel/fortran-stdlib/pkg-plist b/devel/fortran-stdlib/pkg-plist
new file mode 100644
index 000000000000..ed65cce1e26e
--- /dev/null
+++ b/devel/fortran-stdlib/pkg-plist
@@ -0,0 +1,130 @@
+include/fortran_stdlib/GNU/stdlib_ansi.mod
+include/fortran_stdlib/GNU/stdlib_ansi.smod
+include/fortran_stdlib/GNU/stdlib_ansi@stdlib_ansi_operator.smod
+include/fortran_stdlib/GNU/stdlib_ansi@stdlib_ansi_to_string.smod
+include/fortran_stdlib/GNU/stdlib_array.mod
+include/fortran_stdlib/GNU/stdlib_ascii.mod
+include/fortran_stdlib/GNU/stdlib_bitsets.mod
+include/fortran_stdlib/GNU/stdlib_bitsets.smod
+include/fortran_stdlib/GNU/stdlib_bitsets@stdlib_bitsets_64.smod
+include/fortran_stdlib/GNU/stdlib_bitsets@stdlib_bitsets_large.smod
+include/fortran_stdlib/GNU/stdlib_codata.mod
+include/fortran_stdlib/GNU/stdlib_codata_type.mod
+include/fortran_stdlib/GNU/stdlib_constants.mod
+include/fortran_stdlib/GNU/stdlib_error.mod
+include/fortran_stdlib/GNU/stdlib_error.smod
+include/fortran_stdlib/GNU/stdlib_error@f08estop.smod
+include/fortran_stdlib/GNU/stdlib_hash_32bit.mod
+include/fortran_stdlib/GNU/stdlib_hash_32bit.smod
+include/fortran_stdlib/GNU/stdlib_hash_32bit@stdlib_hash_32bit_fnv.smod
+include/fortran_stdlib/GNU/stdlib_hash_32bit@stdlib_hash_32bit_nm.smod
+include/fortran_stdlib/GNU/stdlib_hash_32bit@stdlib_hash_32bit_water.smod
+include/fortran_stdlib/GNU/stdlib_hash_64bit.mod
+include/fortran_stdlib/GNU/stdlib_hash_64bit.smod
+include/fortran_stdlib/GNU/stdlib_hash_64bit@stdlib_hash_64bit_fnv.smod
+include/fortran_stdlib/GNU/stdlib_hash_64bit@stdlib_hash_64bit_pengy.smod
+include/fortran_stdlib/GNU/stdlib_hash_64bit@stdlib_hash_64bit_spookyv2.smod
+include/fortran_stdlib/GNU/stdlib_hashmap_wrappers.mod
+include/fortran_stdlib/GNU/stdlib_hashmap_wrappers.smod
+include/fortran_stdlib/GNU/stdlib_hashmaps.mod
+include/fortran_stdlib/GNU/stdlib_hashmaps.smod
+include/fortran_stdlib/GNU/stdlib_hashmaps@stdlib_hashmap_chaining.smod
+include/fortran_stdlib/GNU/stdlib_hashmaps@stdlib_hashmap_open.smod
+include/fortran_stdlib/GNU/stdlib_io.mod
+include/fortran_stdlib/GNU/stdlib_io.smod
+include/fortran_stdlib/GNU/stdlib_io_npy.mod
+include/fortran_stdlib/GNU/stdlib_io_npy.smod
+include/fortran_stdlib/GNU/stdlib_io_npy@stdlib_io_npy_load.smod
+include/fortran_stdlib/GNU/stdlib_io_npy@stdlib_io_npy_save.smod
+include/fortran_stdlib/GNU/stdlib_kinds.mod
+include/fortran_stdlib/GNU/stdlib_linalg.mod
+include/fortran_stdlib/GNU/stdlib_linalg.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_cross_product.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_determinant.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_diag.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_eigenvalues.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_kronecker.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_least_squares.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_outer_product.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_solve.smod
+include/fortran_stdlib/GNU/stdlib_linalg@stdlib_linalg_svd.smod
+include/fortran_stdlib/GNU/stdlib_linalg_blas.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_aux.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_c.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_d.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_q.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_s.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_w.mod
+include/fortran_stdlib/GNU/stdlib_linalg_blas_z.mod
+include/fortran_stdlib/GNU/stdlib_linalg_constants.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_aux.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_c.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_d.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_q.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_s.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_w.mod
+include/fortran_stdlib/GNU/stdlib_linalg_lapack_z.mod
+include/fortran_stdlib/GNU/stdlib_linalg_state.mod
+include/fortran_stdlib/GNU/stdlib_logger.mod
+include/fortran_stdlib/GNU/stdlib_math.mod
+include/fortran_stdlib/GNU/stdlib_math.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_all_close.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_arange.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_diff.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_is_close.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_linspace.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_logspace.smod
+include/fortran_stdlib/GNU/stdlib_math@stdlib_math_meshgrid.smod
+include/fortran_stdlib/GNU/stdlib_optval.mod
+include/fortran_stdlib/GNU/stdlib_quadrature.mod
+include/fortran_stdlib/GNU/stdlib_quadrature.smod
+include/fortran_stdlib/GNU/stdlib_quadrature@stdlib_quadrature_gauss.smod
+include/fortran_stdlib/GNU/stdlib_quadrature@stdlib_quadrature_simps.smod
+include/fortran_stdlib/GNU/stdlib_quadrature@stdlib_quadrature_trapz.smod
+include/fortran_stdlib/GNU/stdlib_random.mod
+include/fortran_stdlib/GNU/stdlib_random.smod
+include/fortran_stdlib/GNU/stdlib_selection.mod
+include/fortran_stdlib/GNU/stdlib_sorting.mod
+include/fortran_stdlib/GNU/stdlib_sorting.smod
+include/fortran_stdlib/GNU/stdlib_sorting@stdlib_sorting_ord_sort.smod
+include/fortran_stdlib/GNU/stdlib_sorting@stdlib_sorting_radix_sort.smod
+include/fortran_stdlib/GNU/stdlib_sorting@stdlib_sorting_sort.smod
+include/fortran_stdlib/GNU/stdlib_sorting@stdlib_sorting_sort_index.smod
+include/fortran_stdlib/GNU/stdlib_specialfunctions.mod
+include/fortran_stdlib/GNU/stdlib_specialfunctions.smod
+include/fortran_stdlib/GNU/stdlib_specialfunctions@stdlib_specialfunctions_legendre.smod
+include/fortran_stdlib/GNU/stdlib_specialfunctions_gamma.mod
+include/fortran_stdlib/GNU/stdlib_specialfunctions_gamma.smod
+include/fortran_stdlib/GNU/stdlib_stats.mod
+include/fortran_stdlib/GNU/stdlib_stats.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_corr.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_cov.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_mean.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_median.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_moment.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_moment_all.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_moment_mask.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_moment_scalar.smod
+include/fortran_stdlib/GNU/stdlib_stats@stdlib_stats_var.smod
+include/fortran_stdlib/GNU/stdlib_stats_distribution_exponential.mod
+include/fortran_stdlib/GNU/stdlib_stats_distribution_normal.mod
+include/fortran_stdlib/GNU/stdlib_stats_distribution_uniform.mod
+include/fortran_stdlib/GNU/stdlib_stats_distribution_uniform.smod
+include/fortran_stdlib/GNU/stdlib_str2num.mod
+include/fortran_stdlib/GNU/stdlib_string_type.mod
+include/fortran_stdlib/GNU/stdlib_string_type.smod
+include/fortran_stdlib/GNU/stdlib_string_type@stdlib_string_type_constructor.smod
+include/fortran_stdlib/GNU/stdlib_stringlist_type.mod
+include/fortran_stdlib/GNU/stdlib_stringlist_type.smod
+include/fortran_stdlib/GNU/stdlib_strings.mod
+include/fortran_stdlib/GNU/stdlib_strings.smod
+include/fortran_stdlib/GNU/stdlib_strings@stdlib_strings_to_string.smod
+include/fortran_stdlib/GNU/stdlib_system.mod
+include/fortran_stdlib/GNU/stdlib_version.mod
+lib/cmake/fortran_stdlib/fortran_stdlib-config-version.cmake
+lib/cmake/fortran_stdlib/fortran_stdlib-config.cmake
+lib/cmake/fortran_stdlib/fortran_stdlib-targets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/fortran_stdlib/fortran_stdlib-targets.cmake
+lib/libfortran_stdlib.so
+libdata/pkgconfig/fortran_stdlib.pc