dev-libs/stringifor: 1.1.8 version bump

Signed-off-by: Sergey Torokhov <torokhov-s-a@yandex.ru>
This commit is contained in:
Sergey Torokhov
2026-02-24 21:08:48 +03:00
parent 302cae1316
commit cf6d6d0a9b
2 changed files with 96 additions and 0 deletions

View File

@@ -1 +1,2 @@
DIST StringiFor-1.1.4-r3.tar.gz 663817 BLAKE2B e2185bc65cadae7422b8674914f5bb630d85653bcc5beac0c6fa23446a2c087ea20268ea0a05bff0efb06bad8d9299a2b54ec6684892f6c10697c49112a5e2f6 SHA512 e5aa097779f9933fd9c0407945e8d0e307ae857c0c0070c3e8291cde0eb0ab747df76e1e2c6351af0d226ea14653abf5263ff857fc78b971c7dded018e39c1a0
DIST StringiFor-1.1.8.tar.gz 749154 BLAKE2B 60f31a9a8766cc77e5eef420bc0629695bc8e153267ab766a6495e2e1a09936510b6d93f33cb06215c0bb738e85d90f7402fb213c41d082708084b2ddf5c8555 SHA512 81a08aeb0cfaba82f47a80a8913ffa10d4379bc7eec331a44ea15e8f8dc13e4eb33c504fa7ca1c3fc7829782570597ac9a49a8e4f7a9361c040604ac03ecb51f

View File

@@ -0,0 +1,95 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
FORTRAN_STANDARD=2003
PYTHON_COMPAT=( python3_{11..14} )
inherit fortran-2 python-any-r1 toolchain-funcs
MY_PN="StringiFor"
# version tag.1.1.8 point to commit 019fe9c on 2026 Feb 22
DESCRIPTION="StringiFor, Strings Fortran Manipulator, yet another strings Fortran module"
HOMEPAGE="https://github.com/szaghi/StringiFor"
SRC_URI="https://github.com/szaghi/${MY_PN}/releases/download/v${PV}/${MY_PN}-v${PV}.tar.gz -> ${MY_PN}-${PV}.tar.gz"
S="${WORKDIR}/${MY_PN}-v${PV}"
# For FOSS projects: GPL-3
# For closed source/commercial projects: BSD 2-Clause, BSD 3-Clause, MIT
LICENSE="GPL-3 BSD-2 BSD MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="static-libs test"
RESTRICT="mirror !test? ( test )"
BDEPEND="
${PYTHON_DEPS}
$(python_gen_any_dep '
dev-build/fobis[${PYTHON_USEDEP}]
')
"
PATCHES=(
"${FILESDIR}/${PN}-1.1.1_fobos_soname.patch"
"${FILESDIR}/${PN}-1.1.3_fix_tests.patch"
)
set_build_mode() {
case $(tc-getFC) in
*gfortran* )
BUILD_MODE_SHARED="-mode stringifor-shared-gnu"
BUILD_MODE_STATIC="-mode stringifor-static-gnu"
BUILD_MODE_TESTS="-mode tests-gnu" ;;
*ifort* )
BUILD_MODE_SHARED="-mode stringifor-shared-intel"
BUILD_MODE_STATIC="-mode stringifor-static-intel"
BUILD_MODE_TESTS="-mode tests-intel" ;;
* )
die "Sorry, GNU gfortran or Intel ifort are currently supported in the ebuild" ;;
esac
}
pkg_setup() {
fortran-2_pkg_setup
set_build_mode
}
src_prepare() {
default
sed -i -e 's:\$OPTIMIZE = -O2:\$OPTIMIZE = '"${FFLAGS}"':' \
-e '/^\$LSHARED/s:$: '"${LDFLAGS}"':' fobos || die
}
src_compile() {
${EPYTHON} FoBiS.py build -verbose -compiler custom -fc $(tc-getFC) ${BUILD_MODE_SHARED} || die
use static-libs && { ${EPYTHON} FoBiS.py \
build -verbose -compiler custom -fc $(tc-getFC) ${BUILD_MODE_STATIC} || die; }
}
src_test() {
${EPYTHON} FoBiS.py build -compiler custom -fc $(tc-getFC) ${BUILD_MODE_TESTS} || die
for e in $( find ./exe/ -type f -executable -print ); do
if [ "$e" != "./exe/stringifor_test_parse_large_csv" ] ; then
echo " run test $e :" && { $e || die; }
else
# The output of this test is too huge so it's cutted here
echo " run test $e :" && { $e | tail -n 10 || die; }
fi
done
}
src_install() {
mv lib/mod lib/${PN} || die
doheader -r lib/${PN}/
mv lib/lib${PN}.so{,.1} || die
dosym lib${PN}.so.1 /usr/$(get_libdir)/lib${PN}.so
dolib.so lib/lib${PN}.so.1
use static-libs && dolib.a lib/lib${PN}.a
}