summaryrefslogtreecommitdiff
path: root/media-sound/timidity++
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-09-14 11:10:11 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-09-14 11:10:11 +0100
commit81b8f20732954c4508baf2f77472b5435e3f851f (patch)
tree4180177cb7ba85eab50159ce96218c2419fb24a6 /media-sound/timidity++
parent946859e0e36904cffb3e0ccbccb6b7b1347c1cc8 (diff)
gentoo auto-resync : 14:09:2022 - 11:10:10
Diffstat (limited to 'media-sound/timidity++')
-rw-r--r--media-sound/timidity++/Manifest4
-rw-r--r--media-sound/timidity++/files/timidity++-2.15.0-clang-15-configure.patch27
-rw-r--r--media-sound/timidity++/timidity++-2.15.0-r4.ebuild (renamed from media-sound/timidity++/timidity++-2.15.0-r3.ebuild)4
-rw-r--r--media-sound/timidity++/timidity++-2.15.0-r5.ebuild236
4 files changed, 268 insertions, 3 deletions
diff --git a/media-sound/timidity++/Manifest b/media-sound/timidity++/Manifest
index ebf21a7ca12c..330aed5ad6e7 100644
--- a/media-sound/timidity++/Manifest
+++ b/media-sound/timidity++/Manifest
@@ -6,6 +6,7 @@ AUX timidity++-2.14.0-CVE-2017-11547.patch 2480 BLAKE2B 6db9598d7f8c9b969163f8ce
AUX timidity++-2.14.0-ar.patch 822 BLAKE2B ecd76b6297cfc6fa04fdc1760dad9879a2835db79378df98a224e758d22aaa08fa7cd6f82c16b394e6d6b4bd103b9f69b7ff84b2c7ebb1b0c82c487cc8eb5dd5 SHA512 b0c26daa94361bc471034431c0632052ceb2a8e001caabfb7e08bd3f401932724981dc2c903132f9319d16038f7bac05843ca8da1112a5a3bab626c88244514b
AUX timidity++-2.14.0-configure-flags.patch 4241 BLAKE2B d1d083ad5e397aa0e827cd21eb98b4143638559c31d38d9541f41a6d4dc12358a1c17c8115f956e177359f9ca122ee44e775abd7b6009777ca1eaaaeeadd59a1 SHA512 be9ca5a580a47af5eb29e180c81b141628692e2cb538113b3ec596e4b800fb6d4792fa4c72921414ba41a8e6932ae655e9b9a1428021333471e2929fdab07b17
AUX timidity++-2.14.0-params.patch 716 BLAKE2B d4426e36db91fea9561a81bacb5337c8da3e385a598ebd61a38cb00ff2ab8be5b07c6259068ea31e11d0e755b28ba5769ee0cf9e6a7c31a272d1145d70e0521c SHA512 b35596de8ba6ffc4ff91a8ab7a2a0a25c658af97f8aa4e226737e910227e2a11bf4b227a5f8c61ddc1452cd614e03f75736787a2240cc530e90aba437371a09a
+AUX timidity++-2.15.0-clang-15-configure.patch 1067 BLAKE2B 0d8bc594306b4f8fdb121639ffbaf4adc8c89a0959b3fb2b43f51dc9a590c926632f408f5427f3151350b2d1afc05c1665fe669a6596d6abff39332fbd1833a6 SHA512 60b5b06657ce441d52e8ce5f9372dd4a620b7f3d279a6ec92626d41fac83ccab6bbf679a1b24e22771eeffec1d7b3a33f37bb6ed2c93699e70d5828d731bfedf
AUX timidity++-2.15.0-lto-workaround.patch 319 BLAKE2B a0aa616e6e3626a5694879e8e61bfb2242e71b5e216bdb5b4aa7d5eee95aa0a800a0ff4987e1492badf12e2e1aa1c3a4c58539994718e21839d8d2fe6db669c6 SHA512 ee7949bd54e2be657c3f45b1b4848162d2655682f86acf5474c69343c35dc7bff677b588820735ec2ad29a0e8d6e9a868c8c0ecdf9a9c79d4d4e69764ef9f214
AUX timidity++-2.15.0-pkg-config.patch 4257 BLAKE2B f9e81fdc50ff485636aaab4b0c74e7a7caba49eb8884b5176b2a71a3a582542300872786ec56886d645f8b6ec23b5312908053c47c5b107d8ecf905dbdd27402 SHA512 e6ae48d17d0b7b9589df3e90e5923cd53c86b59b2730306c2ec76f8c20013e8befd70e36d4c2629bae906cb967c1404b3595334a6f208f8799d7fbd6e030fe08
AUX timidity.cfg-r1 669 BLAKE2B 023edf8f503f23817c1941a0cb1a0341f0ff1475405fc906a9acf4adb36ca8769bc015df5c30af50a828dd522d214bf9d6c4feabe2db3419e8100ebd431fdbdb SHA512 98f0690bda6deed6022e97e74a6114334d5f965d646d7c7d150ac177f6eb78277e931ed0b4c5613ef16ba648eaad66a3ed72ed933ca936698ca81365151b223b
@@ -13,5 +14,6 @@ AUX timidity.desktop.2 257 BLAKE2B 6c7f88a3ccd9fc4ea90cd228e6d04d799430a78361d6d
AUX timidity.service 190 BLAKE2B 909311fae666b9970a8b4d56e1848f907ffeff1fc9e0cacc7a89027ec1ce6a555ea01570328d75425b006752d6332cf278642ec9a7c27b9c9adb2cb7621e241e SHA512 1022c1e37e2a97fba414673860ec89bc146da208981dd50d9486c525b47c74ae146acef2d75ceec26335c3ab98b2c928ce480a161637990ecd737507a6c21b49
AUX timidity.xpm 1522 BLAKE2B 9aee528dbf843d992d548adc923f817373013760128ae96df7becb6bc844a95ddc056b072dbaea1528d9db5c2d4836b09f8316b740c75033fc23a0bb76186fab SHA512 1630fc235e450e5420c598357ad98eed6f04b1d1035fd6284dfeb2e633ce5d80135f89ea593d58b4eac2b9405383787e4d891b9c22ff8b5ac3ece64e9abe7d4e
DIST TiMidity++-2.15.0.tar.xz 1363040 BLAKE2B 63612dc96ddef9b24ca35a8fa24c22fee8b0573efb09543e6017070b2d0a68494bc34afe8ffc50b5f7fe2d95397a971d5dc7afd4c9adbb524b119012e716b7f7 SHA512 36c3c79d941903109d5d6d529963d12e8192a857e80402ad5ab0d1e223451a7cf5dc8fdd046b22ae7da96f413d68db8587a8fce348635838eba2f30f7019192f
-EBUILD timidity++-2.15.0-r3.ebuild 5952 BLAKE2B dc8243e719c2ca236090aab5d19965c08423697ef2e32f40e7618ec22c7c2d2529ec842d2d3ba72e308b6e4d83bbdb0932c2ddb1ccf6999bb2ea32d2acacd746 SHA512 e0a3402e2887c0ad956959a581304ca7e32082647f1f61f5b52a751e10a30eeee0cd00ec38ee445856dd1440c01c6525ae23d50bc9e6df2f74109bf8388bd488
+EBUILD timidity++-2.15.0-r4.ebuild 5954 BLAKE2B ef0b317663f00b5393a43bb71141906c0e31394e30a402f450aa070ec52922ab3723be1a9b37b267486a8d814c5454e44f019c42735de2620bc7dd520f9a1e12 SHA512 270ec08297c0ffa19fa1bcf8318d4283e40ef96416e5cbaf05ac374f27656209c8b545708b3aa6595841e87197b07e5512fe8039529a249790bec279905b22b1
+EBUILD timidity++-2.15.0-r5.ebuild 5998 BLAKE2B f0dc8be15a964b34f7cfb023052af8303854ec0f1235cc8548b96fb3b898b97542cc674db082f7019fb8f435d3c582a237373a6bd54dac3e3add0a7c4aa616c8 SHA512 16cac1d780050e9f85c0cfe56a74cab7e7b3ad7127fc76db70b038efe1a7639dc9f428eef6ea1d6f33dc3016b618a36a3ccb5c2e1674926d70186c74fa02628e
MISC metadata.xml 332 BLAKE2B 417167c38c5b331872b74c9dd82d3c386cf4ea5f963201eb20744ff043ff74943867190193f87d7c5220435b38550d6a01a2879803df12934ead428d5f684126 SHA512 5e8adfac2728f35a8bda3e042450c5554ab9aa4a5addbf3dd4fa4dbe3a426a98a9a79fa8cca64c27934707d3564a26bfdc9e5acdb4f79590681885e07cd32bbb
diff --git a/media-sound/timidity++/files/timidity++-2.15.0-clang-15-configure.patch b/media-sound/timidity++/files/timidity++-2.15.0-clang-15-configure.patch
new file mode 100644
index 000000000000..80fa7a904d12
--- /dev/null
+++ b/media-sound/timidity++/files/timidity++-2.15.0-clang-15-configure.patch
@@ -0,0 +1,27 @@
+conftest.c:114:4: error: call to undeclared library function 'exit' with type 'void (int) __attribute__((noreturn))'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
+--- a/configure.in
++++ b/configure.in
+@@ -696,6 +696,7 @@ dnl ***
+ AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ #include <stdarg.h>
++ #include <stdlib.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+@@ -715,6 +716,7 @@ AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[
+ AC_CACHE_CHECK([for an implementation of __va_copy()],lib_cv___va_copy,[
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ #include <stdarg.h>
++ #include <stdlib.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
+@@ -745,6 +747,7 @@ fi
+ AC_CACHE_CHECK([whether va_lists can be copied by value],lib_cv_va_val_copy,[
+ AC_RUN_IFELSE([AC_LANG_SOURCE([[
+ #include <stdarg.h>
++ #include <stdlib.h>
+ void f (int i, ...) {
+ va_list args1, args2;
+ va_start (args1, i);
diff --git a/media-sound/timidity++/timidity++-2.15.0-r3.ebuild b/media-sound/timidity++/timidity++-2.15.0-r4.ebuild
index 9d6db7b8acf6..fe8c598bf3a6 100644
--- a/media-sound/timidity++/timidity++-2.15.0-r3.ebuild
+++ b/media-sound/timidity++/timidity++-2.15.0-r4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
@@ -24,7 +24,7 @@ DEPEND="
alsa? ( media-libs/alsa-lib )
ao? ( >=media-libs/libao-0.8.5 )
emacs? ( >=app-editors/emacs-23.1:* )
- flac? ( media-libs/flac )
+ flac? ( media-libs/flac:= )
gtk? ( x11-libs/gtk+:2 )
jack? ( virtual/jack )
motif? ( >=x11-libs/motif-2.3:0 )
diff --git a/media-sound/timidity++/timidity++-2.15.0-r5.ebuild b/media-sound/timidity++/timidity++-2.15.0-r5.ebuild
new file mode 100644
index 000000000000..7748c68b9c2b
--- /dev/null
+++ b/media-sound/timidity++/timidity++-2.15.0-r5.ebuild
@@ -0,0 +1,236 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools desktop elisp-common flag-o-matic systemd xdg
+
+MY_PV="${PV/_/-}"
+MY_P="TiMidity++-${MY_PV}"
+
+DESCRIPTION="A handy MIDI to WAV converter with OSS and ALSA output support"
+HOMEPAGE="http://timidity.sourceforge.net/"
+SRC_URI="mirror://sourceforge/timidity/${MY_P}.tar.xz"
+S="${WORKDIR}/${MY_P}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="alsa ao emacs flac gtk jack motif nas ncurses ogg oss selinux slang speex tk vorbis X Xaw3d"
+
+REQUIRED_USE="tk? ( X )"
+
+DEPEND="
+ alsa? ( media-libs/alsa-lib )
+ ao? ( >=media-libs/libao-0.8.5 )
+ emacs? ( >=app-editors/emacs-23.1:* )
+ flac? ( media-libs/flac:= )
+ gtk? ( x11-libs/gtk+:2 )
+ jack? ( virtual/jack )
+ motif? ( >=x11-libs/motif-2.3:0 )
+ nas? ( >=media-libs/nas-1.4 )
+ ncurses? ( sys-libs/ncurses:0= )
+ ogg? ( media-libs/libogg )
+ slang? ( sys-libs/slang )
+ speex? ( media-libs/speex )
+ tk? ( dev-lang/tk:= )
+ vorbis? ( media-libs/libvorbis )
+ X? (
+ media-libs/libpng:=
+ x11-libs/libX11
+ x11-libs/libXext
+ Xaw3d? ( x11-libs/libXaw3d )
+ !Xaw3d? ( x11-libs/libXaw )
+ )
+"
+
+RDEPEND="
+ ${DEPEND}
+ acct-group/audio
+ acct-group/nobody
+ acct-user/timidity
+ app-eselect/eselect-timidity
+ alsa? ( media-sound/alsa-utils )
+ selinux? ( sec-policy/selinux-timidity )
+"
+
+PDEPEND="|| ( media-sound/timidity-eawpatches media-sound/timidity-freepats )"
+
+SITEFILE=50${PN}-gentoo.el
+
+DOCS=( AUTHORS ChangeLog NEWS README "${FILESDIR}"/timidity.cfg-r1 )
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.14.0-params.patch
+ "${FILESDIR}"/${PN}-2.14.0-ar.patch
+ "${FILESDIR}"/${PN}-2.14.0-configure-flags.patch
+ "${FILESDIR}"/${PN}-2.15.0-pkg-config.patch
+ "${FILESDIR}"/${PN}-2.14.0-CVE-2017-1154{6,7}.patch
+ "${FILESDIR}"/${PN}-2.15.0-lto-workaround.patch
+ "${FILESDIR}"/${PN}-2.15.0-clang-15-configure.patch
+)
+
+src_prepare() {
+ default
+
+ mv configure.{in,ac} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ export EXTRACFLAGS="${CFLAGS}" #385817
+
+ local audios
+ # List by preference
+ local xaw_provider=$(usex Xaw3d 'xaw3d' 'xaw')
+
+ # configure workarounds: configure.in here is written for an old version
+ # of autoconf and upstream seems quite dead.
+ #
+ # 1. Avoid janky configure test breaking
+ # ```checking for sys/wait.h that is POSIX.1 compatible... yes
+ # ./configure: 7995: test: =: unexpected operator```
+ export ac_cv_header_sys_time_h=yes
+ #
+ # 2. And yes, we expect standard header locations (this configure test is flaky for us too)
+ # This avoids a bunch of implicit decl. errors which only happen with USE=-Xaw3d(?!)
+ append-cppflags -DSTDC_HEADERS
+
+ local myeconfargs=(
+ --localstatedir=/var/state/${PN}
+ --with-module-dir="${EPREFIX}/usr/share/timidity"
+ --with-lispdir="${SITELISP}/${PN}"
+ --with-elf
+ --enable-server
+ --enable-network
+ --enable-dynamic
+ --enable-vt100
+ --enable-spline=cubic
+ $(use_enable emacs)
+ $(use_enable slang)
+ $(use_enable ncurses)
+ $(use_with X x)
+ $(use_enable X spectrogram)
+ $(use_enable X wrd)
+ $(use_enable X xskin)
+ $(use_enable X xaw)
+ $(use_enable gtk)
+ $(use_enable tk tcltk)
+ $(use_enable motif)
+ $(use_with Xaw3d xawlib ${xaw_provider})
+ )
+
+ use flac && audios+=",flac"
+ use speex && audios+=",speex"
+ use vorbis && audios+=",vorbis"
+ use ogg && audios+=",ogg"
+ use oss && audios+=",oss"
+ use jack && audios+=",jack"
+ use ao && audios+=",ao"
+
+ if use nas; then
+ audios+=",nas"
+ myeconfargs+=(
+ --with-nas-library="/usr/$(get_libdir)/libaudio.so"
+ --with-x
+ )
+ use X || ewarn "Basic X11 support will be enabled because required by nas."
+ fi
+
+ if use alsa; then
+ audios+=",alsa"
+ myeconfargs+=(
+ --with-default-output=alsa
+ --enable-alsaseq
+ )
+ fi
+
+ if use motif; then
+ myeconfargs+=(
+ --with-x
+ )
+ use X || ewarn "Basic X11 support will be enabled because required by motif."
+ fi
+
+ # needs to come after all audios have been collected
+ myeconfargs+=(
+ --enable-audio=${audios}
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ einstalldocs
+
+ # these are only for the ALSA sequencer mode
+ if use alsa; then
+ newconfd "${FILESDIR}"/conf.d.timidity.2 timidity
+ newinitd "${FILESDIR}"/init.d.timidity.4 timidity
+
+ systemd_dounit "${FILESDIR}"/timidity.service
+ fi
+
+ insinto /etc
+ newins "${FILESDIR}"/timidity.cfg-r1 timidity.cfg
+
+ dodir /usr/share/timidity
+ dosym ../../../etc/timidity.cfg /usr/share/timidity/timidity.cfg
+
+ if use emacs; then
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ doicon "${FILESDIR}"/timidity.xpm
+ newmenu "${FILESDIR}"/timidity.desktop.2 timidity.desktop
+
+ # Order of preference: gtk, X (Xaw), ncurses, slang
+ # Do not create menu item for terminal ones
+ local interface="-id"
+ local terminal="true"
+ local nodisplay="true"
+ if use gtk || use X; then
+ interface="-ia"
+ terminal="false"
+ nodisplay="false"
+ use gtk && interface="-ig"
+ elif use ncurses || use slang; then
+ local interface="-is"
+ use ncurses && interface="-in"
+ fi
+ sed -e "s/Exec=timidity/Exec=timidity ${interface}/" \
+ -e "s/Terminal=.*/Terminal=${terminal}/" \
+ -e "s/NoDisplay=.*/NoDisplay=${nodisplay}/" \
+ -i "${ED}"/usr/share/applications/timidity.desktop || die
+}
+
+pkg_preinst() {
+ xdg_pkg_preinst
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+
+ elog "A timidity config file has been installed in /etc/timidity.cfg."
+ elog "Do not edit this file as it will interfere with the eselect timidity tool."
+ elog "The tool 'eselect timidity' can be used to switch between installed patchsets."
+
+ if use alsa; then
+ elog "An init script for the alsa timidity sequencer has been installed."
+ elog "If you wish to use the timidity virtual sequencer, edit /etc/conf.d/timidity"
+ elog "and run 'rc-update add timidity <runlevel> && /etc/init.d/timidity start'"
+ fi
+
+ if use sparc; then
+ elog "Only saving to wave file and ALSA soundback has been tested working."
+ fi
+
+ xdg_pkg_postinst
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+ xdg_pkg_postrm
+}