summaryrefslogtreecommitdiff
path: root/dev-libs/stringifor
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
committerroot <root@alpha.trunkmasters.com>2026-06-04 05:48:38 -0500
commitbfd9c39e4712ebdb442d4ca0673061faed1e70e1 (patch)
tree0d7a74b4463ee387f9cf9368ceb1b757f694f72a /dev-libs/stringifor
parentf716a9fe6455d39eef01e718aae68dae61c19704 (diff)
downloadbaldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.gz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.tar.xz
baldeagleos-repo-bfd9c39e4712ebdb442d4ca0673061faed1e70e1.zip
Revert "Adding metadata"
This reverts commit f716a9fe6455d39eef01e718aae68dae61c19704.
Diffstat (limited to 'dev-libs/stringifor')
-rw-r--r--dev-libs/stringifor/Manifest2
-rw-r--r--dev-libs/stringifor/files/stringifor-1.1.1_fobos_soname.patch12
-rw-r--r--dev-libs/stringifor/files/stringifor-1.1.3_fix_tests.patch22
-rw-r--r--dev-libs/stringifor/metadata.xml14
-rw-r--r--dev-libs/stringifor/stringifor-1.1.4-r3.ebuild95
-rw-r--r--dev-libs/stringifor/stringifor-1.1.8.ebuild95
6 files changed, 240 insertions, 0 deletions
diff --git a/dev-libs/stringifor/Manifest b/dev-libs/stringifor/Manifest
new file mode 100644
index 000000000000..89db14ba6569
--- /dev/null
+++ b/dev-libs/stringifor/Manifest
@@ -0,0 +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
diff --git a/dev-libs/stringifor/files/stringifor-1.1.1_fobos_soname.patch b/dev-libs/stringifor/files/stringifor-1.1.1_fobos_soname.patch
new file mode 100644
index 000000000000..c81d64588c6e
--- /dev/null
+++ b/dev-libs/stringifor/files/stringifor-1.1.1_fobos_soname.patch
@@ -0,0 +1,12 @@
+diff -Nur a/fobos b/fobos
+--- a/fobos 2020-01-27 20:28:35.000000000 +0300
++++ b/fobos 2020-02-18 13:45:52.000000000 +0300
+@@ -7,7 +7,7 @@
+ [common-variables]
+ $CSHARED_GNU = -c -fPIC -frealloc-lhs -std=f2008 -fall-intrinsics
+ $CSHARED_INT = -c -fPIC -assume realloc_lhs -standard-semantics -std08
+-$LSHARED = -shared
++$LSHARED = -shared -Wl,-soname=libstringifor.so.1
+ $CSTATIC_GNU = -c -frealloc-lhs -std=f2008 -fall-intrinsics
+ $CSTATIC_INT = -c -assume realloc_lhs -standard-semantics -std08
+ $DEBUG_GNU = -Og -g3 -Warray-bounds -Wcharacter-truncation -Wline-truncation -Wimplicit-interface -Wimplicit-procedure -Wunderflow -fcheck=all -fmodule-private -ffree-line-length-132 -fimplicit-none -fbacktrace -fdump-core -finit-real=nan
diff --git a/dev-libs/stringifor/files/stringifor-1.1.3_fix_tests.patch b/dev-libs/stringifor/files/stringifor-1.1.3_fix_tests.patch
new file mode 100644
index 000000000000..7eb7460e6459
--- /dev/null
+++ b/dev-libs/stringifor/files/stringifor-1.1.3_fix_tests.patch
@@ -0,0 +1,22 @@
+diff -Naur a/src/third_party/FACE/src/tests/face_test_ucs4.F90 b/src/third_party/FACE/src/tests/face_test_ucs4.F90
+--- a/src/third_party/FACE/src/tests/face_test_ucs4.F90
++++ b/src/third_party/FACE/src/tests/face_test_ucs4.F90
+@@ -2,9 +2,10 @@
+ program face_test_ucs4
+ !< FACE test.
+ use face
++use iso_fortran_env
+
+ implicit none
+-#ifdef UCS4_SUPPORTED
++
+ character(kind=UCS4, len=:), allocatable :: string_1 !< A string.
+ character(kind=UCS4, len=:), allocatable :: string_2 !< A string.
+ character(kind=UCS4, len=:), allocatable :: string_3 !< A string.
+@@ -13,5 +14,5 @@
+ string_2 = colorize(UCS4_' ÜÇŞ4', color_fg='red')
+ string_3 = colorize(' World', color_fg='blue')
+ print '(A)', string_1//string_2//string_3
+-#endif
++
+ endprogram face_test_ucs4
diff --git a/dev-libs/stringifor/metadata.xml b/dev-libs/stringifor/metadata.xml
new file mode 100644
index 000000000000..8c7a0009ec44
--- /dev/null
+++ b/dev-libs/stringifor/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+ <email>torokhov-s-a@yandex.ru</email>
+ <name>Sergey Torokhov</name>
+</maintainer>
+<longdescription lang="en">
+ A KISS pure Fortran library providing astrings (class) manipulator for modern (2003+) Fortran projects
+</longdescription>
+ <upstream>
+ <remote-id type="github">szaghi/StringiFor</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/stringifor/stringifor-1.1.4-r3.ebuild b/dev-libs/stringifor/stringifor-1.1.4-r3.ebuild
new file mode 100644
index 000000000000..4a1f00a65987
--- /dev/null
+++ b/dev-libs/stringifor/stringifor-1.1.4-r3.ebuild
@@ -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_{13..14} )
+
+inherit fortran-2 python-any-r1 toolchain-funcs
+
+MY_PN="StringiFor"
+# version tag.1.1.4 point to commit e5df2b9 on 2026 Feb 18
+
+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}.tar.gz -> ${MY_PN}-${PV}-${PR}.tar.gz"
+
+S="${WORKDIR}/${MY_PN}"
+
+# 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
+}
diff --git a/dev-libs/stringifor/stringifor-1.1.8.ebuild b/dev-libs/stringifor/stringifor-1.1.8.ebuild
new file mode 100644
index 000000000000..8de41125732d
--- /dev/null
+++ b/dev-libs/stringifor/stringifor-1.1.8.ebuild
@@ -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_{13..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
+}