mirror of
https://github.com/gryf/gryf-overlay.git
synced 2025-12-25 07:32:30 +01:00
Added stfl library.
Since it will be removed from the portage, because of the breakage on the latest python version, I've added "new" ebuild, which removes all the bindings from it, just to not have to deal with it in the future. The only application which is depending on this lib is newsboat, which as far as I can tell, doesn't use the bindings.
This commit is contained in:
7
dev-libs/stfl/Manifest
Normal file
7
dev-libs/stfl/Manifest
Normal file
@@ -0,0 +1,7 @@
|
||||
AUX stfl-0.21-python.patch 1936 BLAKE2B fc0a8f02eaa30b900652304e34f383a6587769f4ac803f2ba9420197ef492430a88a6a6ec4863163cd948c9fd8c027b50a944796ea1c342f19ad9049c46dd1f9 SHA512 33da38bee278999ec3bcc770886183c3d7ac60ab3458568a7848bc83035104290423aee54a2a2da065b9a5da639af6fa242de9f23df0ff7fccbd024099af8472
|
||||
AUX stfl-0.22-ruby-sharedlib.patch 735 BLAKE2B 6b2b9e835f57f62ff1e1ff871103bc0b1106329916fc1be75eb22e550c9ff8abd007bbc201c66e15ce16a4697c0bbe0850b56ff41f666dd7006028432b1f77e5 SHA512 73a1b7aa7147100ab2f06264303c0a30463deb8bd0ce9e4111737393d07c4fb06174c5022c1dae8c7fd2688d1b544a4ab8c8ee5495f46e2bbc33ce89a7e46de7
|
||||
AUX stfl-0.22-soname-symlink.patch 444 BLAKE2B 9aa44343a18a8d7fb2f75a60ae94c30ef92b6f02190cefbefedacd9f8d5c877ac71b83c41b008bfd46a4d5ffe04f91f03f898e27ef098162d0b43f274ccff298 SHA512 e85c6f96edd8cd08d3408f976fff5f9fbcdc9892109233e78d932eb07502b00d3a0b52393542de8af5b2d26808b3574736f78b7ef9c7bdd0abffa3901fc55dab
|
||||
DIST stfl-0.24.tar.gz 45585 BLAKE2B a601f373f19baa3a11fb823852ada19ab824828935240280c74ff442a1e5c4abdf0abe56e445869e43785df3940a8c7269bc16457436abbe5e2853f907071059 SHA512 95df4574b1bc32d795751156dc5b93afbca3ba241607a3a55210c89dda61b9a26ad574bb5f729a0158c9052235dbf63d6c58b38e7f1061d14ab7062af6150fa0
|
||||
EBUILD stfl-0.24-r1.ebuild 1422 BLAKE2B 2b023a599eb4b78226e5d29e17e7a779c24a9c1a2a2087f2d864f19deaa65ee21de5170a49563fe794cb1d8366f37e469cd8705c62f568db35ebc1e784f6eb14 SHA512 6261c47e59b5d96928f9231500bf9b9974f35d3a4ca6086b1bd52eb461d8e1137f53ccc08b61c2ad5760df8070d9a7939322eb54f579678a85710d1937d7ba15
|
||||
EBUILD stfl-0.24.ebuild 2926 BLAKE2B 0a0e48f66782d3fad17daf52a096b1fc27a92b52ec992863bd5066141617e3fe5a96fec4da35328df46cc0d0ab28fd8d922aaa36b55f87fbcbbe1ef0f77ecd5e SHA512 a3d835f176325706e2ca5e9a29d82af4ed596ee91f5ae536df9a37b1a4827d9e53f3b6fb4d8529def012b849d8dc795445dd7eb037da2eab774f1f3f87b4790c
|
||||
MISC metadata.xml 835 BLAKE2B 9b1973c44652dcce024f65586aee64af73b7e565e3681e42dc429d58c769cc316720a6fc48baeabb9288499f9d24c42d5161cf3bdfe718265d0b203eded36c8f SHA512 7c326da342ebd368f624757f1aab37d158f752ebe45e52d85bec640c6f6cde7c5e473d9214e24e09d71b22f7790dcad22f339181b6bc7333f1187bd8ff3c6e3f
|
||||
39
dev-libs/stfl/files/stfl-0.21-python.patch
Normal file
39
dev-libs/stfl/files/stfl-0.21-python.patch
Normal file
@@ -0,0 +1,39 @@
|
||||
diff -ur stfl-0.21.orig/Makefile stfl-0.21/Makefile
|
||||
--- stfl-0.21.orig/Makefile 2009-06-19 10:30:52.000000000 -0700
|
||||
+++ stfl-0.21/Makefile 2009-12-23 15:12:34.986593069 -0800
|
||||
@@ -46,7 +46,7 @@
|
||||
rm -f widgets/*.o spl/mod_stfl.so spl/example.db
|
||||
cd perl5 && perl Makefile.PL && make clean && rm -f Makefile.old
|
||||
rm -f perl5/stfl_wrap.c perl5/stfl.pm perl5/build_ok
|
||||
- rm -f python/stfl.py python/stfl.pyc python/_stfl.so
|
||||
+ rm -f python/stfl.py python/_stfl.so
|
||||
rm -f python/stfl_wrap.c python/stfl_wrap.o
|
||||
rm -f ruby/Makefile ruby/stfl_wrap.c ruby/stfl_wrap.o
|
||||
rm -f ruby/stfl.so ruby/build_ok Makefile.deps_new
|
||||
diff -ur stfl-0.21.orig/python/Makefile.snippet stfl-0.21/python/Makefile.snippet
|
||||
--- stfl-0.21.orig/python/Makefile.snippet 2009-06-18 01:27:16.000000000 -0700
|
||||
+++ stfl-0.21/python/Makefile.snippet 2009-12-23 15:14:54.237606055 -0800
|
||||
@@ -21,20 +21,17 @@
|
||||
PYTHON_VERSION = $(shell python -V 2>&1 | cut -f2 -d' ' | cut -f1-2 -d'.')
|
||||
PYTHON_SITEARCH = $(shell python -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")
|
||||
|
||||
-all: python/_stfl.so python/stfl.py python/stfl.pyc
|
||||
+all: python/_stfl.so python/stfl.py
|
||||
|
||||
install: install_python
|
||||
|
||||
-python/_stfl.so python/stfl.py python/stfl.pyc: libstfl.a stfl.h python/stfl.i swig/*.i
|
||||
+python/_stfl.so python/stfl.py: libstfl.a stfl.h python/stfl.i swig/*.i
|
||||
cd python && swig -python -threads stfl.i
|
||||
gcc -shared -pthread -fPIC python/stfl_wrap.c -I/usr/include/python$(PYTHON_VERSION) \
|
||||
-I. libstfl.a -lncursesw -o python/_stfl.so
|
||||
- cd python && python -c 'import stfl'
|
||||
|
||||
-install_python: python/_stfl.so python/stfl.py python/stfl.pyc
|
||||
- mkdir -p $(DESTDIR)$(PYTHON_SITEARCH)/
|
||||
+install_python: python/_stfl.so python/stfl.py
|
||||
mkdir -p $(DESTDIR)$(PYTHON_SITEARCH)/lib-dynload/
|
||||
cp python/_stfl.so $(DESTDIR)$(PYTHON_SITEARCH)/lib-dynload/
|
||||
- cp python/stfl.pyc $(DESTDIR)$(PYTHON_SITEARCH)/
|
||||
cp python/stfl.py $(DESTDIR)$(PYTHON_SITEARCH)/
|
||||
|
||||
14
dev-libs/stfl/files/stfl-0.22-ruby-sharedlib.patch
Normal file
14
dev-libs/stfl/files/stfl-0.22-ruby-sharedlib.patch
Normal file
@@ -0,0 +1,14 @@
|
||||
--- stfl-0.22/ruby/Makefile.snippet.orig
|
||||
+++ stfl-0.22/ruby/Makefile.snippet
|
||||
@@ -23,9 +23,9 @@
|
||||
|
||||
install: install_ruby
|
||||
|
||||
-ruby/build_ok: libstfl.a stfl.h ruby/stfl.i swig/*.i
|
||||
+ruby/build_ok: libstfl.so.$(VERSION) stfl.h ruby/stfl.i swig/*.i
|
||||
cd ruby && swig -ruby stfl.i && ruby extconf.rb
|
||||
- $(MAKE) -C ruby clean && $(MAKE) -C ruby LIBS+="../libstfl.a -lncursesw" CFLAGS+="-pthread -I.." DLDFLAGS+="-pthread" DESTDIR=$(DESTDIR) prefix=$(prefix) sitedir=$(prefix)/$(libdir)/ruby
|
||||
+ $(MAKE) -C ruby clean && $(MAKE) -C ruby LIBS+="../libstfl.so.$(VERSION) -lncursesw" CFLAGS+="-pthread -I.." DLDFLAGS+="-pthread" DESTDIR=$(DESTDIR) prefix=$(prefix) sitedir=$(prefix)/$(libdir)/ruby
|
||||
touch ruby/build_ok
|
||||
|
||||
install_ruby: ruby/build_ok
|
||||
10
dev-libs/stfl/files/stfl-0.22-soname-symlink.patch
Normal file
10
dev-libs/stfl/files/stfl-0.22-soname-symlink.patch
Normal file
@@ -0,0 +1,10 @@
|
||||
--- stfl-0.22/Makefile.orig
|
||||
+++ stfl-0.22/Makefile
|
||||
@@ -65,6 +65,7 @@
|
||||
install -m 644 stfl.pc $(DESTDIR)$(prefix)/$(libdir)/pkgconfig/
|
||||
install -m 644 libstfl.so.$(VERSION) $(DESTDIR)$(prefix)/$(libdir)
|
||||
ln -fs libstfl.so.$(VERSION) $(DESTDIR)$(prefix)/$(libdir)/libstfl.so
|
||||
+ ln -fs libstfl.so.$(VERSION) $(DESTDIR)$(prefix)/$(libdir)/$(SONAME)
|
||||
|
||||
stfl.pc: stfl.pc.in
|
||||
sed 's,@VERSION@,$(VERSION),g' < $< | sed 's,@PREFIX@,$(prefix),g' > $@
|
||||
20
dev-libs/stfl/metadata.xml
Normal file
20
dev-libs/stfl/metadata.xml
Normal file
@@ -0,0 +1,20 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<!-- maintainer-needed -->
|
||||
<longdescription lang="en">
|
||||
STFL is a library which implements a curses-based widget set for text
|
||||
terminals.
|
||||
|
||||
The STFL API can be used from C, SPL, Python, Perl and Ruby. Since the
|
||||
API is only 14 simple function calls big and there are already generic
|
||||
SWIG bindings it is very easy to port STFL to additional scripting
|
||||
languages.
|
||||
|
||||
A special language (the Structured Terminal Forms Language) is used to
|
||||
describe STFL GUIs. The language is designed to be easy and fast to
|
||||
write so an application programmer does not need to spend ages fiddling
|
||||
around with the GUI and can concentrate on the more interesting
|
||||
programming tasks.
|
||||
</longdescription>
|
||||
</pkgmetadata>
|
||||
66
dev-libs/stfl/stfl-0.24-r1.ebuild
Normal file
66
dev-libs/stfl/stfl-0.24-r1.ebuild
Normal file
@@ -0,0 +1,66 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
inherit eutils multilib perl-module 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 static-libs"
|
||||
|
||||
RDEPEND="
|
||||
sys-libs/ncurses:0=[unicode]
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
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/' \
|
||||
Makefile || die "sed failed"
|
||||
|
||||
if ! use static-libs ; then
|
||||
sed -i -e "/install .* libstfl.a/d" Makefile || die
|
||||
fi
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-0.22-soname-symlink.patch
|
||||
}
|
||||
|
||||
src_configure() { :; }
|
||||
|
||||
src_compile() {
|
||||
emake CC="$(tc-getCC)"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake prefix="/usr" DESTDIR="${D}" libdir="$(get_libdir)" install
|
||||
|
||||
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
|
||||
}
|
||||
118
dev-libs/stfl/stfl-0.24.ebuild
Normal file
118
dev-libs/stfl/stfl-0.24.ebuild
Normal file
@@ -0,0 +1,118 @@
|
||||
# Copyright 1999-2020 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=5
|
||||
PYTHON_COMPAT=( python3_6 )
|
||||
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 )
|
||||
"
|
||||
|
||||
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
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-0.21-python.patch
|
||||
epatch "${FILESDIR}"/${PN}-0.22-soname-symlink.patch
|
||||
epatch "${FILESDIR}"/${PN}-0.22-ruby-sharedlib.patch
|
||||
|
||||
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
|
||||
}
|
||||
Reference in New Issue
Block a user