* [gentoo-commits] repo/proj/guru:dev commit in: app-accessibility/rhvoice-core/, app-accessibility/rhvoice-core/files/
@ 2025-03-17 17:36 Anna Vyalkova
0 siblings, 0 replies; only message in thread
From: Anna Vyalkova @ 2025-03-17 17:36 UTC (permalink / raw
To: gentoo-commits
commit: 9fdde86857d845fe3366813888eaee04a0540bb9
Author: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
AuthorDate: Mon Mar 17 17:06:07 2025 +0000
Commit: Anna Vyalkova <cyber+gentoo <AT> sysrq <DOT> in>
CommitDate: Mon Mar 17 17:35:56 2025 +0000
URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=9fdde868
app-accessibility/rhvoice-core: add 1.16.4
Closes: https://bugs.gentoo.org/923911
Signed-off-by: Anna (cybertailor) Vyalkova <cyber+gentoo <AT> sysrq.in>
app-accessibility/rhvoice-core/Manifest | 2 +
.../files/rhvoice-core-1.16.4-flags.patch | 13 +++
app-accessibility/rhvoice-core/metadata.xml | 16 +---
.../rhvoice-core/rhvoice-core-1.16.4.ebuild | 103 +++++++++++++++++++++
4 files changed, 121 insertions(+), 13 deletions(-)
diff --git a/app-accessibility/rhvoice-core/Manifest b/app-accessibility/rhvoice-core/Manifest
index 2f6ab5834..7d3680339 100644
--- a/app-accessibility/rhvoice-core/Manifest
+++ b/app-accessibility/rhvoice-core/Manifest
@@ -1,2 +1,4 @@
DIST RHVoice-1.14.0-sanitizers.tar.gz 7339 BLAKE2B e600886c9afed2681ea7ad5fd9900af7d3f98a7d96291af7c9ef648be438d149e86ee143f3fa5af0dee08457008ce66be43177adcac79401ef025ddd0d8d40fe SHA512 61df4641f3dbeca38cff44336df6fcea75d02d97135a677df51a02353b5580a96dd77af268bd42944afe36a58512fd948200098ea96a41d20ec503fc33a69421
DIST RHVoice-1.14.0.tar.gz 3181853 BLAKE2B c3c8c7437aa859898dec8747963aa23e6e16b975b58d76f9b1ade3d1c17d9d4e63c24469a670c1210f9a1501606a34b6adf52ab4c64abfddb97541cced8f82b2 SHA512 dab57df49bdb1e2c574cd10e17e5bea08144a105d8f48991cef14b80d28db98dcae29b19d69ec97fc843ee8636d53c48845a3887552d347f117339c95fa0daf1
+DIST RHVoice-1.16.4-sanitizers.tar.gz 7339 BLAKE2B e600886c9afed2681ea7ad5fd9900af7d3f98a7d96291af7c9ef648be438d149e86ee143f3fa5af0dee08457008ce66be43177adcac79401ef025ddd0d8d40fe SHA512 61df4641f3dbeca38cff44336df6fcea75d02d97135a677df51a02353b5580a96dd77af268bd42944afe36a58512fd948200098ea96a41d20ec503fc33a69421
+DIST RHVoice-1.16.4.tar.gz 3228520 BLAKE2B bc48e4b008416ec32b53969ca94d50eca847ced140601c8480624ee21410da149662cf64b5bcb7119c79900654b5488bc719acbfc3c424c3ede606d7b5433b5a SHA512 97e08eb8277fc39dd09d9954f0bb5927ed49e4d8310b82b8d71a16236db988f49d92303278644ce9031da61a026c14a36b7de0f95cb42072a6ac9754e29272b8
diff --git a/app-accessibility/rhvoice-core/files/rhvoice-core-1.16.4-flags.patch b/app-accessibility/rhvoice-core/files/rhvoice-core-1.16.4-flags.patch
new file mode 100644
index 000000000..2c7499d78
--- /dev/null
+++ b/app-accessibility/rhvoice-core/files/rhvoice-core-1.16.4-flags.patch
@@ -0,0 +1,13 @@
+Hardening.cmake: allow overwriting HARDENING_MACRODEFS
+
+CMake requires explicit form for cache variables.
+
+--- a/cmake/Hardening.cmake
++++ b/cmake/Hardening.cmake
+@@ -272,5 +272,5 @@ function(harden target)
+
+ #list(JOIN HARDENING_MACRODEFS " " HARDENING_MACRODEFS) # unneeded, list is needed, not string
+ set(HARDENING_MACRODEFS "${HARDENING_MACRODEFS}" CACHE STRING "Hardening flags CMake list (not string!)")
+- target_compile_definitions(${target} PRIVATE ${HARDENING_MACRODEFS})
++ target_compile_definitions(${target} PRIVATE $CACHE{HARDENING_MACRODEFS})
+ endfunction(harden)
diff --git a/app-accessibility/rhvoice-core/metadata.xml b/app-accessibility/rhvoice-core/metadata.xml
index 7015e8069..659bfe949 100644
--- a/app-accessibility/rhvoice-core/metadata.xml
+++ b/app-accessibility/rhvoice-core/metadata.xml
@@ -12,18 +12,8 @@
<flag name="speech-dispatcher">Build a speech-dispatcher middleware module</flag>
</use>
<longdescription lang="en">
- RHVoice is a free and open source speech synthesizer.
-
- Voices are built from recordings of natural speech. They have small
- footprints, because only statistical models are stored on users'
- computers. And though the voices lack the naturalness of the
- synthesizers which generate speech by combining segments of the
- recordings themselves, they are still very intelligible and resemble
- the speakers who recorded the source material.
-
- Initially, RHVoice could speak only Russian. Now it also supports
- American English, Brazilian Portuguese, Esperanto, Georgian, Ukrainian,
- Kyrgyz and Tatar. In theory, it is possible to implement support for
- other languages, if all the necessary resources can be found or created.
+ RHVoice is a multilingual speech synthesizer primarily developed for
+ use with screen readers, maintaining the balance between speech
+ quality and responsiveness.
</longdescription>
</pkgmetadata>
diff --git a/app-accessibility/rhvoice-core/rhvoice-core-1.16.4.ebuild b/app-accessibility/rhvoice-core/rhvoice-core-1.16.4.ebuild
new file mode 100644
index 000000000..6812029d8
--- /dev/null
+++ b/app-accessibility/rhvoice-core/rhvoice-core-1.16.4.ebuild
@@ -0,0 +1,103 @@
+# Copyright 2021-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake flag-o-matic
+
+MY_PN="RHVoice"
+MY_P="${MY_PN}-${PV}"
+SANITIZERS_COMMIT="99e159ec9bc8dd362b08d18436bd40ff0648417b"
+DESCRIPTION="Multilingual text-to-speech engine"
+HOMEPAGE="
+ https://rhvoice.org
+ https://github.com/RHVoice/RHVoice
+"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/refs/tags/${PV}.tar.gz -> ${MY_P}.tar.gz
+ https://github.com/arsenm/sanitizers-cmake/archive/${SANITIZERS_COMMIT}.tar.gz -> ${MY_P}-sanitizers.tar.gz
+"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="BSD GPL-2+ GPL-3+ LGPL-2.1+"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="ao dbus portaudio +pulseaudio +speech-dispatcher"
+REQUIRED_USE="|| ( ao portaudio pulseaudio )"
+
+COMMON_DEPEND="
+ dev-libs/boost:=
+ ao? ( media-libs/libao )
+ dbus? (
+ dev-libs/glib:2[dbus]
+ dev-libs/libsigc++:2
+ >=dev-cpp/glibmm-2.66.1:2
+ )
+ portaudio? ( media-libs/portaudio )
+ pulseaudio? ( media-libs/libpulse )
+ speech-dispatcher? ( app-accessibility/speech-dispatcher )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<app-accessibility/rhvoice-1.14.0
+"
+DEPEND="${COMMON_DEPEND}
+ dev-cpp/cli11
+ <dev-libs/utfcpp-4.0
+"
+
+PATCHES=(
+ # https://bugs.gentoo.org/923911
+ "${FILESDIR}"/${PN}-1.16.4-flags.patch
+)
+
+DOCS=( README.md doc/. config/dicts )
+
+LANGS=( en ru )
+for lang in "${LANGS[@]}"; do
+ IUSE+=" l10n_${lang}"
+ RDEPEND+=" l10n_${lang}? ( app-dicts/rhvoice-${lang} )"
+done
+
+src_unpack() {
+ default
+ cd "${S}" || die
+
+ rmdir cmake/thirdParty/sanitizers || die
+ mv "${WORKDIR}"/sanitizers-cmake-${SANITIZERS_COMMIT} cmake/thirdParty/sanitizers || die
+}
+
+src_prepare() {
+ cmake_src_prepare
+ cmake_comment_add_subdirectory '"${thirdPartyCMakeModulesDir}/CCache"'
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DRHVOICE_VERSION_FROM_GIT=${PV}
+ -DWITH_CLI11=ON
+ -DWITH_DATA=OFF
+
+ # src/CMakeLists.txt
+ -DBUILD_CLIENT=OFF # deprecated, use speech-dispatcher
+ -DBUILD_UTILS=OFF # fails to build because of bundled tclap
+ -DBUILD_TESTS=ON # standalone cli application
+ -DBUILD_SERVICE=$(usex dbus)
+ -DBUILD_SPEECHDISPATCHER_MODULE=$(usex speech-dispatcher)
+
+ # src/audio/CMakeLists.txt
+ -DWITH_LIBAO=$(usex ao)
+ -DWITH_PULSE=$(usex pulseaudio)
+ -DWITH_PORTAUDIO=$(usex portaudio)
+
+ # Hardening.cmake: don't mess with flags
+ -DHARDENING_PIC=OFF
+ -DHARDENING_SSE2=OFF
+ -DHARDENING_COMPILE_FLAGS=
+ -DHARDENING_LINK_FLAGS=
+ -DHARDENING_MACRODEFS=
+ )
+
+ use speech-dispatcher && \
+ append-cppflags -DSPD_MAJOR=1 -DSPD_MINOR=0
+
+ cmake_src_configure
+}
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2025-03-17 17:36 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-17 17:36 [gentoo-commits] repo/proj/guru:dev commit in: app-accessibility/rhvoice-core/, app-accessibility/rhvoice-core/files/ Anna Vyalkova
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox