commit:     428df7d122255ac697331d7a1eb004eb897c9c8a
Author:     Sergey Torokhov <torokhov-s-a <AT> yandex <DOT> ru>
AuthorDate: Sat Jun 14 18:43:34 2025 +0000
Commit:     Sergey Torokhov <torokhov-s-a <AT> yandex <DOT> ru>
CommitDate: Sat Jun 14 18:43:34 2025 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=428df7d1

dev-build/fpm: 0.12.0 version bump

Signed-off-by: Sergey Torokhov <torokhov-s-a <AT> yandex.ru>

 dev-build/fpm/Manifest                        |   2 +
 dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch |  23 +++++
 dev-build/fpm/fpm-0.12.0.ebuild               | 122 ++++++++++++++++++++++++++
 3 files changed, 147 insertions(+)

diff --git a/dev-build/fpm/Manifest b/dev-build/fpm/Manifest
index f4b282a034..c29ee7b11e 100644
--- a/dev-build/fpm/Manifest
+++ b/dev-build/fpm/Manifest
@@ -4,3 +4,5 @@ DIST fpm-0.10.0.F90 1413145 BLAKE2B 
8b0121b2436cdc6d0d82783a0d083afedb8bf0eb5f82
 DIST fpm-0.10.0.tar.gz 227016 BLAKE2B 
a6d9592fbfe3115ab43675cf28036dde69df0e2bcf3c7d3d98278566450328e6c3f21777efd8374177e615fcc123babce9a456f08ad1d03e790c16b95547edf2
 SHA512 
8b81e564ee2d3307472c1627e16b4cc9e13288c40c7ff3ea95f0c55cc4315da34d9319de5256aab9e602dd751c51be8f1fc27711f31fbf22580f58788822b69a
 DIST fpm-0.11.0.F90 1580806 BLAKE2B 
52eaca18d4de4011c61d83914568ee07063a8db679996d7dae1719778d5153bed430036129bb514ab0c31e8d500db1ee842f329cf32871a6e8abcee78d2337ac
 SHA512 
0c47fbc593b529c9a3095b12ef6681a8b2f59e2509ca64ad087756d1b400e45f6cbeddb9dd7d21f47ba4658f59a1abf40c626ef52b74b562d20c416c3ec2866c
 DIST fpm-0.11.0.tar.gz 263484 BLAKE2B 
1507a7d7e2a823831893d9c2b3411f88540634434822eb1034eebee8c1dceac99d368506805275a8ad552b3f7de3affeea7e935aa6390b6d15f3488cd4b4b76d
 SHA512 
40e4ee5bc16e4d9d336033e3b3f3823e12edd12bcc0af114c2e531af8754b20d76ef0d3f1c62d6a0fe444878d5dd772570cf20bff8fdd1f7a24b03a943be5df1
+DIST fpm-0.12.0.F90 1728278 BLAKE2B 
27ea8d0959bea849c3358300b34b54d7acfdb72afaad4d5e3b545794e34c9e0ad0a1fceb0c133d659a6f7515a3610614d31cadf5ff10f0290d377fd60e8fdc6d
 SHA512 
4a41f2f6bdcc7839af5567e07b7704004cc12d41d4a8ebf26c6ef88d054056c2da2bf6b5f699a5b086d69d92a817756c5dd44e4b69f0272ebab983cab3d2e57d
+DIST fpm-0.12.0.tar.gz 290239 BLAKE2B 
6af2c0955e7472c092cb3d634766e39fae87c20caa1b3beda725bf3ac75b4a3d91b3174636f78f2a1b6590240436beebe7f7d7acda8e54eb2ad37342ab8214f1
 SHA512 
556393d58b5ccdbe6168c143e42a294ec8d9b6fb094d3a137afd2fe13ecd6d2d373742c696ebb152a2aac414ea0dad4252b8c094c25d631cf8fa8dab8ef71a21

diff --git a/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch 
b/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch
new file mode 100644
index 0000000000..9bbdf35b9b
--- /dev/null
+++ b/dev-build/fpm/files/fpm-0.12.0_fpm_toml.patch
@@ -0,0 +1,23 @@
+diff -Naur a/fpm.toml b/fpm.toml
+--- a/fpm.toml
++++ b/fpm.toml
+@@ -10,16 +10,9 @@
+ macros=["FPM_RELEASE_VERSION={version}"]
+ 
+ [dependencies]
+-toml-f.git = "https://github.com/toml-f/toml-f";
+-toml-f.rev = "d7b892b1d074b7cfc5d75c3e0eb36ebc1f7958c1"
+-M_CLI2.git = "https://github.com/urbanjost/M_CLI2.git";
+-M_CLI2.rev = "7264878cdb1baff7323cc48596d829ccfe7751b8"
+-fortran-regex.git  = "https://github.com/perazz/fortran-regex";
+-fortran-regex.tag  = "1.1.2"
+-jonquil.git = "https://github.com/toml-f/jonquil";
+-jonquil.rev = "4fbd4cf34d577c0fd25e32667ee9e41bf231ece8"
+-fortran-shlex.git = "https://github.com/perazz/fortran-shlex";
+-fortran-shlex.tag = "2.0.0"
++[build]
++external-modules = 
["tomlf","tomlf_constants","tomlf_de_parser","m_cli2","regex_module","shlex_module","jonquil"]
++link = ["toml-f","M_CLI2","fortran-regex","fortran-shlex","jonquil"]
+ 
+ [[test]]
+ name = "cli-test"

diff --git a/dev-build/fpm/fpm-0.12.0.ebuild b/dev-build/fpm/fpm-0.12.0.ebuild
new file mode 100644
index 0000000000..c291594f28
--- /dev/null
+++ b/dev-build/fpm/fpm-0.12.0.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+FORTRAN_STANDARD="2003"
+
+PYTHON_COMPAT=( python3_{11..13} )
+
+inherit fortran-2 python-any-r1 toolchain-funcs
+
+DESCRIPTION="Fortran Package Manager (fpm)"
+HOMEPAGE="https://fpm.fortran-lang.org";
+SRC_URI="
+       https://github.com/fortran-lang/${PN}/archive/v${PV}.tar.gz -> 
${P}.tar.gz
+       https://github.com/fortran-lang/fpm/releases/download/v${PV}/${P}.F90
+"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="openmp doc test"
+RESTRICT="!test? ( test )"
+
+CDEPEND="
+       dev-libs/fortran-regex
+       dev-libs/fortran-shlex:0/2
+       dev-libs/jonquil:0/2
+       dev-libs/toml-f:0/4
+       >=dev-libs/M_CLI2-3.2.0
+"
+
+RDEPEND="
+       ${CDEPEND}
+       dev-vcs/git
+"
+
+DEPEND="
+       ${CDEPEND}
+       doc? (
+               ${PYTHON_DEPS}
+               $(python_gen_any_dep '
+                       app-text/ford[${PYTHON_USEDEP}]
+               ')
+       )
+"
+
+DOCS=( LICENSE PACKAGING.md README.md )
+
+PATCHES="${FILESDIR}/${P}_fpm_toml.patch"
+
+BSDIR="build/bootstrap" # Bootstrap directory path
+
+pkg_pretend() {
+       [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+}
+
+set_build_flags() {
+       OMPFLAG=""
+       if use openmp ; then
+               case $(tc-getFC) in
+                       *gfortran* )
+                               OMPFLAG="-fopenmp" ;;
+                       * )
+                               die "Sorry, only GNU gfortran is currently 
supported in the ebuild" ;;
+               esac
+       fi
+
+       BUILD_FLAGS=( --compiler "$(tc-getFC)"
+               --flag "${FCFLAGS} ${OMPFLAG} -I/usr/include/fortran-regex \
+                                               -I/usr/include/fortran-shlex \
+                                               -I/usr/include/jonquil/modules \
+                                               -I/usr/include/M_CLI2 \
+                                               -I/usr/include/toml-f/modules"
+               --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}"
+               --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}"
+               --archiver "$(tc-getAR)" --link-flag "${LDFLAGS}" )
+}
+
+pkg_setup() {
+       [[ ${MERGE_TYPE} != binary ]] && use openmp && tc-check-openmp
+       fortran-2_pkg_setup
+       python-any-r1_pkg_setup
+       set_build_flags
+}
+
+src_prepare() {
+       default
+
+       mkdir -p "${BSDIR}" || die
+       cp "${DISTDIR}/${P}.F90" "${BSDIR}/" || die
+
+       # Use favicon.png instead remote icon
+       sed -i -e 
's#https://fortran-lang.org/assets/img/fortran_logo_512x512.png#favicon.png#' 
docs.md || die
+}
+
+src_compile() {
+       default
+
+       # Build a bootstrap binary from the single source version
+       "$(tc-getFC)" -J "${BSDIR}" -o "${BSDIR}"/fpm "${BSDIR}/${P}.F90" || die
+
+       # Use the bootstrap binary to build the feature complete fpm version
+       "${BSDIR}"/fpm build --verbose "${BUILD_FLAGS[@]}" || die
+
+       if use doc ; then
+               einfo "Build API documentation:"
+               ford docs.md || die
+       fi
+}
+
+src_test() {
+       "${BSDIR}"/fpm test --verbose "${BUILD_FLAGS[@]}" || die
+}
+
+src_install() {
+       # Set prefix and pass all used env flags to avoid recompiling with 
default values
+               "${BSDIR}"/fpm install --prefix "${ED}/usr" "${BUILD_FLAGS[@]}" 
|| die
+
+       use doc && HTML_DOCS=( "${S}"/fpm-doc/. )
+       einstalldocs
+}

Reply via email to