diff --git a/dev-util/fpm/Manifest b/dev-util/fpm/Manifest new file mode 100644 index 0000000000..ae6d0f0212 --- /dev/null +++ b/dev-util/fpm/Manifest @@ -0,0 +1,2 @@ +DIST fpm-0.7.0.F90 985847 BLAKE2B 05d6acc336880ea0c2dcd01db9b5eb5790ee593d9d97b36c7dab231d96f564125293e944f4c7c1debcee1dace9a0709ca9dbec40535c2b7320f909023d561d0a SHA512 76e4a465f38375469ccad849f705837d90dc288df2ac101dfc6941f4fa676c3302f6f23bfd45037c7ce4bb5fac637f021373ff0756534d5cf762044709dbd8c0 +DIST fpm-0.7.0.tar.gz 169412 BLAKE2B 6895d91cb67a8d15e50025c298aed32e77966685a1db426b9437a5c441f7c365cec76a7836c83ff5a5299216a9392812ae832bfb72d5cd4263bcb60976d12b6e SHA512 ec18798e02b4fb3e403062c68f97bf34200559207ffc87dba3b8b801aef31cabefdcda29203a1405ed0231192316a1fab16ecff603b0bf9fab0cede0fe4506de diff --git a/dev-util/fpm/files/fpm-0.7.0_fpm_toml.patch b/dev-util/fpm/files/fpm-0.7.0_fpm_toml.patch new file mode 100644 index 0000000000..08000553f5 --- /dev/null +++ b/dev-util/fpm/files/fpm-0.7.0_fpm_toml.patch @@ -0,0 +1,21 @@ +diff -Naur a/fpm.toml b/fpm.toml +--- a/fpm.toml ++++ b/fpm.toml +@@ -5,14 +5,9 @@ + maintainer = "" + copyright = "2020 fpm contributors" + +-[dependencies] +-[dependencies.toml-f] +-git = "https://github.com/toml-f/toml-f" +-rev = "e49f5523e4ee67db6628618864504448fb8c8939" +- +-[dependencies.M_CLI2] +-git = "https://github.com/urbanjost/M_CLI2.git" +-rev = "ea6bbffc1c2fb0885e994d37ccf0029c99b19f24" ++[build] ++external-modules = ["tomlf", "m_cli2"] ++link = ["toml-f","m_cli2"] + + [[test]] + name = "cli-test" diff --git a/dev-util/fpm/fpm-0.7.0.ebuild b/dev-util/fpm/fpm-0.7.0.ebuild new file mode 100644 index 0000000000..77d005760e --- /dev/null +++ b/dev-util/fpm/fpm-0.7.0.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +FORTRAN_STANDARD="2003" + +PYTHON_COMPAT=( python3_{8..10} ) + +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 ~x86" +IUSE="doc" +RESTRICT="test" + +CDEPEND=" + dev-util/toml-f + dev-util/m_cli2 +" + +RDEPEND=" + ${CDEPEND} + dev-vcs/git +" + +DEPEND=" + ${CDEPEND} + doc? ( + ${PYTHON_DEPS} + $(python_gen_any_dep ' + app-doc/ford[${PYTHON_USEDEP}] + ') + ) +" + +DOCS=( LICENSE PACKAGING.md README.md ) + +PATCHES="${FILESDIR}/${P}_fpm_toml.patch" + +BSDIR="build/bootstrap" # Bootstrap directory path + +pkg_setup() { + fortran-2_pkg_setup + python-any-r1_pkg_setup +} + +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 --compiler "$(tc-getFC)" --flag "${FCFLAGS} -I/usr/include/toml-f -I/usr/include/m_cli2" \ + --c-compiler "$(tc-getCC)" --c-flag "${CFLAGS}" \ + --cxx-compiler "$(tc-getCXX)" --cxx-flag "${CXXFLAGS}" \ + --archiver="$(tc-getAR)" --link-flag "${LDFLAGS}" + + if use doc ; then + einfo "Build API documentation:" + ford docs.md || die + fi +} + +src_install() { + exeinto /usr/bin + doexe build/"$(tc-getFC)"_*/app/fpm + + use doc && HTML_DOCS=( "${S}"/fpm-doc/. ) + einstalldocs +} diff --git a/dev-util/fpm/metadata.xml b/dev-util/fpm/metadata.xml new file mode 100644 index 0000000000..f45acb9010 --- /dev/null +++ b/dev-util/fpm/metadata.xml @@ -0,0 +1,11 @@ + + + + + torokhov-s-a@yandex.ru + Sergey Torokhov + + + fortran-lang/fpm + +