commit:     cbde75862f868831f1ad9e6629842bdff9e461d6
Author:     Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail <DOT> com>
AuthorDate: Mon Aug  5 18:39:53 2024 +0000
Commit:     Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail <DOT> com>
CommitDate: Mon Aug  5 18:42:14 2024 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=cbde7586

dev-cpp/finalcut: new package, add 0.9.1, 9999

Signed-off-by: Mattéo Rossillol‑‑Laruelle <beatussum <AT> protonmail.com>

 dev-cpp/finalcut/Manifest                          |  1 +
 .../finalcut/files/finalcut-0.9.1-fix-tests.ebuild | 63 ++++++++++++++++
 dev-cpp/finalcut/finalcut-0.9.1.ebuild             | 85 ++++++++++++++++++++++
 dev-cpp/finalcut/finalcut-9999.ebuild              | 85 ++++++++++++++++++++++
 dev-cpp/finalcut/metadata.xml                      | 49 +++++++++++++
 5 files changed, 283 insertions(+)

diff --git a/dev-cpp/finalcut/Manifest b/dev-cpp/finalcut/Manifest
new file mode 100644
index 000000000..382d375ef
--- /dev/null
+++ b/dev-cpp/finalcut/Manifest
@@ -0,0 +1 @@
+DIST finalcut-0.9.1.tar.gz 909719 BLAKE2B 
4ca3742ff54843686db29fc744df1fb29269aef28cfdbecefcb9d31fe6c7b1c1357701e945a9c01a661b5742edb9057be87fd3d1feb5dd2b4596f640fbd4b5b4
 SHA512 
1ba0d802ac80c128774b9b50ba309ba28da86db89dbc277596201431f0e39fc5fb5652da2473848b944f77a7301fb3a1a30c1770e6ef5a8bbdd5ec648ca3562c

diff --git a/dev-cpp/finalcut/files/finalcut-0.9.1-fix-tests.ebuild 
b/dev-cpp/finalcut/files/finalcut-0.9.1-fix-tests.ebuild
new file mode 100644
index 000000000..ff93aee9b
--- /dev/null
+++ b/dev-cpp/finalcut/files/finalcut-0.9.1-fix-tests.ebuild
@@ -0,0 +1,63 @@
+From 5acee79b977dd38e0a52c51129ea847735a8ee5e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Matt=C3=A9o=20Rossillol=E2=80=91=E2=80=91Laruelle?=
+ <[email protected]>
+Date: Sun, 28 Jul 2024 09:21:35 +0200
+Subject: [PATCH] fix tests
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+This commits removes tests failing to compile,
+- `fvterm_test` and
+- `fterm_functions-test`.
+
+Signed-off-by: Mattéo Rossillol‑‑Laruelle <[email protected]>
+---
+ test/Makefile.am | 6 ------
+ 1 file changed, 6 deletions(-)
+
+diff --git a/test/Makefile.am b/test/Makefile.am
+index 30d53e34..c4c0282f 100644
+--- a/test/Makefile.am
++++ b/test/Makefile.am
+@@ -32,11 +32,9 @@ noinst_PROGRAMS = \
+       ftermdata_test \
+       ftermdetection_test \
+       ftermfreebsd_test \
+-      fterm_functions_test \
+       ftermlinux_test \
+       ftermopenbsd_test \
+       ftimer_test \
+-      fvterm_test \
+       fvtermattribute_test \
+       fvtermbuffer_test \
+       fwidget_test
+@@ -64,13 +62,11 @@ ftermdata_test_SOURCES = ftermdata-test.cpp
+ ftermdetection_test_SOURCES = ftermdetection-test.cpp
+ ftermfreebsd_test_SOURCES = ftermfreebsd-test.cpp
+ ftermfreebsd_test_LDADD = @TERMCAP_LIB@
+-fterm_functions_test_SOURCES = fterm_functions-test.cpp
+ ftermlinux_test_SOURCES = ftermlinux-test.cpp
+ ftermlinux_test_LDADD = @TERMCAP_LIB@
+ ftermopenbsd_test_SOURCES = ftermopenbsd-test.cpp
+ ftermopenbsd_test_LDADD = @TERMCAP_LIB@
+ ftimer_test_SOURCES = ftimer-test.cpp
+-fvterm_test_SOURCES = fvterm-test.cpp
+ fvtermattribute_test_SOURCES = fvtermattribute-test.cpp
+ fvtermbuffer_test_SOURCES = fvtermbuffer-test.cpp
+ fwidget_test_SOURCES = fwidget-test.cpp
+@@ -98,11 +94,9 @@ TESTS = \
+       ftermdata_test \
+       ftermdetection_test \
+       ftermfreebsd_test \
+-      fterm_functions_test \
+       ftermlinux_test \
+       ftermopenbsd_test \
+       ftimer_test \
+-      fvterm_test \
+       fvtermattribute_test \
+       fvtermbuffer_test \
+       fwidget_test
+-- 
+2.44.2
+

diff --git a/dev-cpp/finalcut/finalcut-0.9.1.ebuild 
b/dev-cpp/finalcut/finalcut-0.9.1.ebuild
new file mode 100644
index 000000000..d7eeab069
--- /dev/null
+++ b/dev-cpp/finalcut/finalcut-0.9.1.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A text-based widget toolkit"
+HOMEPAGE="https://github.com/gansm/finalcut/";
+
+if [[ "${PV}" = 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/gansm/finalcut.git";
+else
+       SRC_URI="https://github.com/gansm/finalcut/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64"
+fi
+
+LICENSE="LGPL-3+"
+SLOT="0/${PV}"
+IUSE="doc examples +gpm static-libs test"
+REQUIRED_USE="test? ( !examples )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       sys-libs/ncurses:=[tinfo]
+       gpm? ( sys-libs/gpm )
+"
+
+BDEPEND="
+       virtual/pkgconfig
+       test? ( >=dev-util/cppunit-1.12.0 )
+"
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       default
+
+       [[ "${PV}" = 9999 ]] || eapply "${FILESDIR}/${P}-fix-tests.ebuild"
+
+       sed -i "/AM_CPPFLAGS/ s/-Werror//" {examples,final,test}/Makefile.am \
+               || die 'Failed to remove `-Werror` from `CPPFLAGS`'
+
+       for component in doc examples test; do
+               if ! use "${component}"; then
+                       sed -i "/SUBDIRS/ s/${component}//" Makefile.am \
+                               || die "Failed to remove ${component} from the 
building process"
+               fi
+       done
+
+       eautoreconf
+}
+
+src_configure() {
+       use test && append-cxxflags -O0 -DDEBUG -DUNIT_TEST
+
+       econf \
+               $(use_enable static-libs static) \
+               $(use_with gpm) \
+               $(use_with test unit-test)
+}
+
+src_install() {
+       emake DESTDIR="${ED}" PACKAGE="${PF}" install
+       dodoc CODE_OF_CONDUCT.md Contributing.md SECURITY.md
+
+       if use examples; then
+                       local examples="/usr/share/doc/${PF}/examples"
+                       docompress -x "${examples}"
+
+                       for example in examples/.libs/*; do
+                                       example="${example#examples/.libs/}"
+
+                                       local 
install_dir="${examples}/${example}"
+
+                                       insinto "${install_dir}"
+                                       doins "examples/${example}.cpp"
+                                       exeinto "${install_dir}"
+                                       doexe "examples/${example}"
+                       done
+       fi
+
+       find "${ED}" -name "*.la" -delete || die
+}

diff --git a/dev-cpp/finalcut/finalcut-9999.ebuild 
b/dev-cpp/finalcut/finalcut-9999.ebuild
new file mode 100644
index 000000000..db06be5b1
--- /dev/null
+++ b/dev-cpp/finalcut/finalcut-9999.ebuild
@@ -0,0 +1,85 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic
+
+DESCRIPTION="A text-based widget toolkit"
+HOMEPAGE="https://github.com/gansm/finalcut/";
+
+if [[ "${PV}" = 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://github.com/gansm/finalcut.git";
+else
+       SRC_URI="https://github.com/gansm/finalcut/archive/${PV}.tar.gz -> 
${P}.tar.gz"
+       KEYWORDS="~amd64"
+fi
+
+LICENSE="LGPL-3+"
+SLOT="0/0.9.0"
+IUSE="doc examples +gpm static-libs test"
+REQUIRED_USE="test? ( !examples )"
+RESTRICT="!test? ( test )"
+
+DEPEND="
+       sys-libs/ncurses:=[tinfo]
+       gpm? ( sys-libs/gpm )
+"
+
+BDEPEND="
+       virtual/pkgconfig
+       test? ( >=dev-util/cppunit-1.12.0 )
+"
+
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+       default
+
+       [[ "${PV}" = 9999 ]] || eapply "${FILESDIR}/${P}-fix-tests.ebuild"
+
+       sed -i "/AM_CPPFLAGS/ s/-Werror//" {examples,final,test}/Makefile.am \
+               || die 'Failed to remove `-Werror` from `CPPFLAGS`'
+
+       for component in doc examples test; do
+               if ! use "${component}"; then
+                       sed -i "/SUBDIRS/ s/${component}//" Makefile.am \
+                               || die "Failed to remove ${component} from the 
building process"
+               fi
+       done
+
+       eautoreconf
+}
+
+src_configure() {
+       use test && append-cxxflags -O0 -DDEBUG -DUNIT_TEST
+
+       econf \
+               $(use_enable static-libs static) \
+               $(use_with gpm) \
+               $(use_with test unit-test)
+}
+
+src_install() {
+       emake DESTDIR="${ED}" PACKAGE="${PF}" install
+       dodoc CODE_OF_CONDUCT.md Contributing.md SECURITY.md
+
+       if use examples; then
+                       local examples="/usr/share/doc/${PF}/examples"
+                       docompress -x "${examples}"
+
+                       for example in examples/.libs/*; do
+                                       example="${example#examples/.libs/}"
+
+                                       local 
install_dir="${examples}/${example}"
+
+                                       insinto "${install_dir}"
+                                       doins "examples/${example}.cpp"
+                                       exeinto "${install_dir}"
+                                       doexe "examples/${example}"
+                       done
+       fi
+
+       find "${ED}" -name "*.la" -delete || die
+}

diff --git a/dev-cpp/finalcut/metadata.xml b/dev-cpp/finalcut/metadata.xml
new file mode 100644
index 000000000..412aad48c
--- /dev/null
+++ b/dev-cpp/finalcut/metadata.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>Mattéo Rossillol‑‑Laruelle</name>
+       </maintainer>
+       <longdescription>
+               <pkg>dev-cpp/finalcut</pkg> is a C++ class library and widget
+               toolkit with full mouse support for creating a text-based user
+               interface. The library supports the programmer to develop an
+               application for the text console. It allows the simultaneous
+               handling of multiple text windows on the screen. The structure
+               of the Qt framework was originally the inspiration for the C++
+               class design of <pkg>dev-cpp/finalcut</pkg>. It provides common
+               controls like dialog boxes, push buttons, check boxes, radio
+               buttons, input lines, list boxes, status bars and so on.
+       </longdescription>
+       <longdescription lang="fr">
+               <pkg>dev-cpp/finalcut</pkg> est une bibliothèque C++ offrant la
+               possibilité de créer un environnement en mode texte. Elle
+               fournit des composants d'interface graphique supportant
+               pleinement l'usage de la souris. Elle permet aux développeurs
+               une programmation plus aisée des applications de ce type. Elle
+               rend possible la gestion de plusieurs fenêtres dans un même
+               terminal. L'interface de programmation applicative de
+               <pkg>dev-cpp/finalcut</pkg> s'inspire de celle de Qt. Celle-ci
+               fournit également les composants de base tels que des boîtes de
+               dialogue, des bouttons poussoirs, des case à cocher, des boutons
+               radio, des lignes d'entrée, des barres d'état, et ainsi de
+               suite.
+       </longdescription>
+       <slots>
+               <subslots>Reflect ABI compatibility for libfinal.so</subslots>
+       </slots>
+       <slots lang="fr">
+               <subslots>Reflétent la compatibilité de l'interface 
binaire-programme (A.B.I.) de libfinal.so</subslots>
+       </slots>
+       <upstream>
+               <maintainer status="active">
+                       <name>Markus Gans</name>
+                       <email>[email protected]</email>
+               </maintainer>
+               
<changelog>https://github.com/gansm/finalcut/blob/main/ChangeLog</changelog>
+               <doc>https://github.com/gansm/finalcut/wiki/</doc>
+               <bugs-to>https://github.com/gansm/finalcut/issues/</bugs-to>
+               <remote-id type="github">gansm/finalcut</remote-id>
+       </upstream>
+</pkgmetadata>

Reply via email to