diff options
Diffstat (limited to 'dev-libs/stfl')
-rw-r--r-- | dev-libs/stfl/Manifest | 2 | ||||
-rw-r--r-- | dev-libs/stfl/files/stfl-0.24-ncurses-widechar.patch | 26 | ||||
-rw-r--r-- | dev-libs/stfl/stfl-0.24-r5.ebuild | 129 |
3 files changed, 157 insertions, 0 deletions
diff --git a/dev-libs/stfl/Manifest b/dev-libs/stfl/Manifest index 788912a1f843..5609a12a5012 100644 --- a/dev-libs/stfl/Manifest +++ b/dev-libs/stfl/Manifest @@ -2,6 +2,8 @@ AUX stfl-0.21-python.patch 1936 BLAKE2B fc0a8f02eaa30b900652304e34f383a6587769f4 AUX stfl-0.22-pc-libdir.patch 866 BLAKE2B bdbc18572fd5104ee04af672b9d493bb3271a8af7b383f5fb9042e8c44dbeaa760ed9c2c8f71192b891eeabae487ee096451ccdb8ae82a936e85331145c9bef6 SHA512 9ec288c174bb30060085c94f6703edb698f2e3806d872153cc58873ea838a84f9edbc07c6e5f8de4a6fd18f77ff1c1e4b1599ad598f3d0a4bba5b2c5bac73ad3 AUX stfl-0.22-ruby-sharedlib.patch 735 BLAKE2B 6b2b9e835f57f62ff1e1ff871103bc0b1106329916fc1be75eb22e550c9ff8abd007bbc201c66e15ce16a4697c0bbe0850b56ff41f666dd7006028432b1f77e5 SHA512 73a1b7aa7147100ab2f06264303c0a30463deb8bd0ce9e4111737393d07c4fb06174c5022c1dae8c7fd2688d1b544a4ab8c8ee5495f46e2bbc33ce89a7e46de7 AUX stfl-0.22-soname-symlink.patch 444 BLAKE2B 9aa44343a18a8d7fb2f75a60ae94c30ef92b6f02190cefbefedacd9f8d5c877ac71b83c41b008bfd46a4d5ffe04f91f03f898e27ef098162d0b43f274ccff298 SHA512 e85c6f96edd8cd08d3408f976fff5f9fbcdc9892109233e78d932eb07502b00d3a0b52393542de8af5b2d26808b3574736f78b7ef9c7bdd0abffa3901fc55dab +AUX stfl-0.24-ncurses-widechar.patch 828 BLAKE2B 5916f745b819fad0c6dedb882acfca4395eab60de656ec138988c756cddbe1109088279aef1a5b55e33931735426958a0f654a9ef3f567845960a8e17198a635 SHA512 897e32ad0d67e424ee66c1d572611f3707c665a6830b7c4560378bcb4ec4a9d2fc65eab7b2a827785bd724bf45f1eea9f20824e02ddb36e611c42b036d19c2aa DIST stfl-0.24.tar.gz 45585 BLAKE2B a601f373f19baa3a11fb823852ada19ab824828935240280c74ff442a1e5c4abdf0abe56e445869e43785df3940a8c7269bc16457436abbe5e2853f907071059 SHA512 95df4574b1bc32d795751156dc5b93afbca3ba241607a3a55210c89dda61b9a26ad574bb5f729a0158c9052235dbf63d6c58b38e7f1061d14ab7062af6150fa0 EBUILD stfl-0.24-r4.ebuild 3145 BLAKE2B 4303a6411bd6056674a721f33ec8117161b223d2a3f4453dbe8dd71a60298713c2d5078b49c27e6855e16d325f4ecd433ea1550e12ffa0dbc6813884039d313a SHA512 5e572785347e6326c20b6acf68f2095e9d2b770330bccd0be1acb199425b670679b46ead5f84cb4c8c241ae3913a8fe62c740e04d94e487969688f2082268c9d +EBUILD stfl-0.24-r5.ebuild 3259 BLAKE2B 5c79f6d8116333047e5847fc15fb4004da92943b35c961d500b7efed0ee5c39793018283531be10cb17d20f7921f2c98ddd76d26697be3b6fa0e174935e00f5b SHA512 3cc533966fb3c5c0579f2367904f059e2d736447ec6132e9a1182132d426136d7dbfbf8b0f378b9e2d5e83b570915ae6c4cba12f82cd1a5b72b32adba2423f78 MISC metadata.xml 884 BLAKE2B d1ee81a475935527af118da278c54f34a773dff1165c39ea2013135b767dbfe96972623d83833501d0531df78547c5d6040990039674832e9f5f701f915d3924 SHA512 55dc2b480ea7b0929be1e74d60d06ddc33ce977885969fdda332a6cb390c219cc13c017c0a56ed3594c475dcb9586b2d433c65fa200675de421e1aa4b22c7ce5 diff --git a/dev-libs/stfl/files/stfl-0.24-ncurses-widechar.patch b/dev-libs/stfl/files/stfl-0.24-ncurses-widechar.patch new file mode 100644 index 000000000000..c1690ce67fe4 --- /dev/null +++ b/dev-libs/stfl/files/stfl-0.24-ncurses-widechar.patch @@ -0,0 +1,26 @@ +ncurses widechar functions are only available if the correct macros are +defined. Use CFLAGS and LDFLAGS from pkgconfig to ensure that widechar +functions are available. + +From 9b71952bfb29e036b13c16d621febff76e84e3e4 Mon Sep 17 00:00:00 2001 +From: Violet Purcell <vimproved@inventati.org> +Date: Tue, 11 Jul 2023 15:45:05 -0400 +Subject: [PATCH] Use pkg-config for correct ncursesw CFLAGS and LDFLAGS + +--- a/Makefile ++++ b/Makefile +@@ -21,8 +21,9 @@ + include Makefile.cfg + + export CC = gcc -pthread +-export CFLAGS += -I. -Wall -Os -ggdb -D_GNU_SOURCE -fPIC +-export LDLIBS += -lncursesw ++export PKG_CONFIG ?= pkg-config ++export CFLAGS += -I. -Wall -Os -ggdb -D_GNU_SOURCE -fPIC $(shell ${PKG_CONFIG} --cflags ncursesw) ++export LDLIBS += $(shell ${PKG_CONFIG} --libs ncursesw) + + SONAME := libstfl.so.0 + VERSION := 0.24 +-- +2.41.0 + diff --git a/dev-libs/stfl/stfl-0.24-r5.ebuild b/dev-libs/stfl/stfl-0.24-r5.ebuild new file mode 100644 index 000000000000..546f1446cd20 --- /dev/null +++ b/dev-libs/stfl/stfl-0.24-r5.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{10..11} ) +GENTOO_DEPEND_ON_PERL=no +inherit 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 ~arm ~arm64 ~ppc ~ppc64 ~x86" +IUSE="examples perl python ruby static-libs" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + sys-libs/ncurses:=[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 ) +" +BDEPEND="virtual/pkgconfig" +RESTRICT="test" # Upstream does not provide tests #730112 + +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_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/' \ + -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 + + 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)" 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 + 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 +} |