Gentoo Archives: gentoo-commits

From: "Cédric Krier" <cedk@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/stfl/
Date: Sat, 23 May 2020 16:57:57
Message-Id: 1590253063.4c94181f4abbdede6813fc6f8308107a4ca5343c.cedk@gentoo
commit:     4c94181f4abbdede6813fc6f8308107a4ca5343c
Author:     Cédric Krier <cedk <AT> gentoo <DOT> org>
AuthorDate: Sat May 23 16:57:43 2020 +0000
Commit:     Cédric Krier <cedk <AT> gentoo <DOT> org>
CommitDate: Sat May 23 16:57:43 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c94181f

dev-libs/stfl: Add missing call default_src_prepare

Closes: https://bugs.gentoo.org/719452
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Cédric Krier <cedk <AT> gentoo.org>

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

diff --git a/dev-libs/stfl/stfl-0.24-r1.ebuild b/dev-libs/stfl/stfl-0.24-r1.ebuild
new file mode 100644
index 00000000000..1dc128d1c53
--- /dev/null
+++ b/dev-libs/stfl/stfl-0.24-r1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{6..8} )
+GENTOO_DEPEND_ON_PERL=no
+inherit eutils multilib perl-module python-r1 toolchain-funcs
+
+DESCRIPTION="A 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 ~ppc ~ppc64 ~x86"
+IUSE="examples perl python ruby static-libs"
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+	sys-libs/ncurses:0=[unicode]
+	perl? ( dev-lang/perl:= )
+	ruby? ( dev-lang/ruby:* )
+	python? ( ${PYTHON_DEPS} )
+"
+DEPEND="${RDEPEND}
+	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"
+)
+
+src_prepare() {
+	default_src_prepare
+	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/' \
+		Makefile || die "sed failed"
+
+	if ! use static-libs ; then
+		sed -i -e "/install .* libstfl.a/d" Makefile || die
+	fi
+
+	if use perl ; then
+		echo "FOUND_PERL5=1" >> Makefile.cfg
+	else
+		echo "FOUND_PERL5=0" >> Makefile.cfg
+	fi
+
+	if use ruby ; then
+		echo "FOUND_RUBY=1" >> Makefile.cfg
+	else
+		echo "FOUND_RUBY=0" >> Makefile.cfg
+	fi
+
+	echo "FOUND_PYTHON=0" >> Makefile.cfg
+}
+
+src_configure() { :; }
+
+src_compile() {
+	emake CC="$(tc-getCC)"
+
+	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
+			echo swig -python -threads stfl.i
+			swig -python -threads stfl.i || die
+			echo "$(tc-getCC)" ${CFLAGS} ${LDFLAGS} -shared -pthread -fPIC stfl_wrap.c -I$(python_get_includedir) -I.. ../libstfl.so.${PV} -lncursesw -o _stfl.so
+			"$(tc-getCC)" ${CFLAGS} ${LDFLAGS} -shared -pthread -fPIC stfl_wrap.c -I$(python_get_includedir) -I.. ../libstfl.so.${PV} -lncursesw -o _stfl.so || die
+			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
+}