public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/stfl/
Date: Fri, 19 Sep 2025 19:10:34 +0000 (UTC)	[thread overview]
Message-ID: <1758308180.cda18d14b6c4b03db0db7297058a08c97d9147bf.sam@gentoo> (raw)

commit:     cda18d14b6c4b03db0db7297058a08c97d9147bf
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 19 18:56:20 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Sep 19 18:56:20 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cda18d14

dev-libs/stfl: update EAPI 7 -> 8, use PERL_FEATURES, misc cleanup

Signed-off-by: Sam James <sam <AT> gentoo.org>

 dev-libs/stfl/stfl-0.24-r6.ebuild | 123 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 123 insertions(+)

diff --git a/dev-libs/stfl/stfl-0.24-r6.ebuild b/dev-libs/stfl/stfl-0.24-r6.ebuild
new file mode 100644
index 000000000000..549e4caffcc0
--- /dev/null
+++ b/dev-libs/stfl/stfl-0.24-r6.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..13} )
+GENTOO_DEPEND_ON_PERL=no
+inherit edo perl-module python-r1 toolchain-funcs
+
+DESCRIPTION="Library which implements a curses-based widget set for text terminals"
+HOMEPAGE="http://www.clifford.at/stfl/"
+SRC_URI="http://www.clifford.at/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~x86"
+IUSE="examples perl python ruby static-libs ${GENTOO_PERL_USESTRING}"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+RESTRICT="test" # Upstream does not provide tests (bug #730112)
+
+RDEPEND="
+	sys-libs/ncurses:=[unicode(+)]
+	perl? (
+		${GENTOO_PERL_DEPSTRING}
+		dev-lang/perl:=
+	)
+	ruby? ( dev-lang/ruby:* )
+	python? ( ${PYTHON_DEPS} )
+"
+DEPEND="${RDEPEND}"
+BDEPEND="
+	virtual/pkgconfig
+	perl? ( dev-lang/swig )
+	python? ( >=dev-lang/swig-1.3.40 )
+	ruby? ( dev-lang/swig )
+"
+
+PATCHES=(
+	"${FILESDIR}/${PN}-0.21-python.patch"
+	"${FILESDIR}/${PN}-0.22-soname-symlink.patch"
+	"${FILESDIR}/${PN}-0.22-ruby-sharedlib.patch"
+	"${FILESDIR}/${PN}-0.22-pc-libdir.patch"
+	"${FILESDIR}/${PN}-0.24-ncurses-widechar.patch"
+)
+
+src_prepare() {
+	default
+
+	sed -i \
+		-e 's/-Os -ggdb//' \
+		-e 's/^\(all:.*\) example/\1/' \
+		-e 's/$(CC) -shared/$(CC) $(LDFLAGS) -shared/' \
+		-e 's/ -o $@ $(LDLIBS) $^/ $^ $(LDLIBS) -o $@/' \
+		-e 's/-lncursesw/-lncursesw -pthread/' \
+		-e 's/\<ar\>/$(AR)/' \
+		-e 's/\<ranlib\>/$(RANLIB)/' \
+		Makefile || die "sed failed"
+
+	if ! use static-libs ; then
+		sed -i -e "/install .* libstfl.a/d" Makefile || die
+	fi
+
+	cat <<-EOF >> Makefile.cfg || die
+	FOUND_PERL5=$(usex perl 1 0)
+	FOUND_RUBY=$(usex ruby 1 0)
+	FOUND_PYTHON=0
+	EOF
+}
+
+src_configure() { :; }
+
+src_compile() {
+	emake CC="$(tc-getCC)" AR="$(tc-getAR)" RANLIB="$(tc-getRANLIB)" PKG_CONFIG="$(tc-getPKG_CONFIG)"
+
+	if use python ; then
+		local BUILD_DIR="${S}/python"
+		python_copy_sources
+
+		# Based on code from python/Makefile.snippet.
+		building() {
+			pushd "${BUILD_DIR}" &>/dev/null || die
+			edo swig -python -threads stfl.i
+			edo "$(tc-getCC)" ${CFLAGS} ${LDFLAGS} -shared -pthread -fPIC stfl_wrap.c -I$(python_get_includedir) -I.. ../libstfl.so.${PV} -lncursesw -o _stfl.so
+			popd &>/dev/null || die
+		}
+		python_foreach_impl building
+	fi
+}
+
+src_install() {
+	emake prefix="/usr" DESTDIR="${D}" libdir="$(get_libdir)" install
+
+	if use python ; then
+		local BUILD_DIR="${S}/python"
+
+		installation() {
+			pushd "${BUILD_DIR}" &>/dev/null || die
+			python_domodule stfl.py _stfl.so
+			popd &>/dev/null || die
+		}
+		python_foreach_impl installation
+	fi
+
+	dodoc README
+
+	local exdir="/usr/share/doc/${PF}/examples"
+	if use examples ; then
+		insinto ${exdir}
+		doins example.{c,stfl}
+		insinto ${exdir}/python
+		doins python/example.py
+		if use perl ; then
+			insinto ${exdir}/perl
+			doins perl5/example.pl
+		fi
+		if use ruby ; then
+			insinto ${exdir}/ruby
+			doins ruby/example.rb
+		fi
+	fi
+
+	perl_delete_localpod
+}


             reply	other threads:[~2025-09-19 19:10 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-19 19:10 Sam James [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-06-20 14:20 [gentoo-commits] repo/gentoo:master commit in: dev-libs/stfl/ Pacho Ramos
2025-02-26 17:04 Petr Vaněk
2024-11-19 15:03 Cédric Krier
2024-11-19 13:54 Sam James
2024-11-19 13:54 Sam James
2023-06-08 10:50 Pacho Ramos
2022-08-03  5:16 John Helmert III
2022-06-21 21:32 Cédric Krier
2021-04-03 23:07 Sam James
2021-03-06  9:14 Cédric Krier
2021-03-06  9:14 Cédric Krier
2020-11-03 11:02 Sam James
2020-10-26 23:47 Sergei Trofimovich
2020-10-25 23:42 Thomas Deutschmann
2020-09-07 12:17 Cédric Krier
2020-07-02  6:30 Agostino Sarubbo
2020-07-01 12:21 Michał Górny
2020-06-30  6:34 Agostino Sarubbo
2020-06-29 13:35 Agostino Sarubbo
2020-06-29  9:07 Cédric Krier
2020-05-24  9:59 Cédric Krier
2020-05-23 16:57 Cédric Krier
2020-04-25 14:15 Cédric Krier
2020-02-10 21:00 Michał Górny
2019-12-27 23:19 Georgy Yakovlev
2019-11-17 22:40 Tim Harder
2017-09-22  5:39 Tim Harder
2017-09-12 23:02 Matt Turner
2017-07-26  9:39 Pacho Ramos
2017-07-07  9:20 Pacho Ramos
2016-10-18 19:26 Pacho Ramos

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1758308180.cda18d14b6c4b03db0db7297058a08c97d9147bf.sam@gentoo \
    --to=sam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox