public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: media-sound/timidity++/files/, media-sound/timidity++/
@ 2018-08-26  9:50 Andreas Sturmlechner
  0 siblings, 0 replies; 4+ messages in thread
From: Andreas Sturmlechner @ 2018-08-26  9:50 UTC (permalink / raw
  To: gentoo-commits

commit:     e22fc38985047ca60503b0eac793c9a16648d5ba
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 26 09:49:43 2018 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Aug 26 09:50:05 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e22fc389

media-sound/timidity++: Fix build with GCC-5

Closes: https://bugs.gentoo.org/606894
Package-Manager: Portage-2.3.48, Repoman-2.3.10

 .../timidity++/files/timidity++-2.14.0-gcc5.patch  | 31 ++++++++++++++++++++++
 media-sound/timidity++/timidity++-2.14.0-r3.ebuild |  1 +
 2 files changed, 32 insertions(+)

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch b/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch
new file mode 100644
index 00000000000..50d64e3bcbb
--- /dev/null
+++ b/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch
@@ -0,0 +1,31 @@
+Upstream commit 6e189f6073e979ceccaf05c3bb5f495a1b9ed87e
+
+inline, defaults to "extern inline" with newer gcc versions
+
+With newer versions of gcc, "inline" defaults to extern, and not static if
+not specified. This causes linking problems at the end of the compile. Most
+of this occurences are fixed (or #ifdef'ed away) except these two small
+ones in timidity/mfi.c
+
+Signed-off-by: Stian Skjelstad <stian.skjelstad@...>
+
+--- a/timidity/mfi.c   2004-02-17 17:02:18.000000000 +0100 
++++ b/timidity/mfi.c   2017-02-14 04:41:24.000000000 +0100 
+@@ -344,7 +344,7 @@
+ #define SEND_LASTNOTEINFO(lni, ch)				if (LASTNOTEINFO_HAS_DATA((lni)[ch])) SendLastNoteInfo(lni, ch);
+ #define SEND_AND_CLEAR_LASTNOTEINFO(lni, ch)	if (LASTNOTEINFO_HAS_DATA((lni)[ch])) { SendLastNoteInfo(lni, ch); (lni)[ch].on = NO_LAST_NOTE_INFO; }
+ 
+-inline void StoreLastNoteInfo(LastNoteInfo *info, int channel, int time, int duration, int note, int velocity)
++static inline void StoreLastNoteInfo(LastNoteInfo *info, int channel, int time, int duration, int note, int velocity)
+ {
+ 	info[channel].on = time;
+ 	info[channel].off = time + duration;
+@@ -352,7 +352,7 @@
+ 	info[channel].velocity = velocity;
+ }
+ 
+-inline void SendLastNoteInfo(const LastNoteInfo *info, int channel)
++static inline void SendLastNoteInfo(const LastNoteInfo *info, int channel)
+ {
+ 	NOTE_BUF_EV_DEBUGSTR(channel, info[channel].on, note_name[info[channel].note % 12], info[channel].note / 12, info[channel].velocity, info[channel].off);
+ 	MIDIEVENT(info[channel].on, ME_NOTEON, channel, info[channel].note, info[channel].velocity);

diff --git a/media-sound/timidity++/timidity++-2.14.0-r3.ebuild b/media-sound/timidity++/timidity++-2.14.0-r3.ebuild
index 5a1770ebcfd..e754067be07 100644
--- a/media-sound/timidity++/timidity++-2.14.0-r3.ebuild
+++ b/media-sound/timidity++/timidity++-2.14.0-r3.ebuild
@@ -63,6 +63,7 @@ PATCHES=(
 	"${FILESDIR}"/${P}-configure-flags.patch
 	"${FILESDIR}"/${P}-pkg-config.patch
 	"${FILESDIR}"/${P}-CVE-2017-1154{6,7}.patch
+	"${FILESDIR}"/${P}-gcc5.patch # bug 606894
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/timidity++/files/, media-sound/timidity++/
@ 2019-03-12  8:25 Lars Wendler
  0 siblings, 0 replies; 4+ messages in thread
From: Lars Wendler @ 2019-03-12  8:25 UTC (permalink / raw
  To: gentoo-commits

commit:     e9aa0cde103128dad32502db4f43e1c058ce800e
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 12 08:24:57 2019 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Mar 12 08:24:57 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e9aa0cde

media-sound/timidity++: Bump to version 2.15.0

Thanks-to: Robert Gill <locke <AT> sdf.lonestar.org>
Closes: https://bugs.gentoo.org/676610
Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 media-sound/timidity++/Manifest                    |   1 +
 .../files/timidity++-2.15.0-pkg-config.patch       | 118 ++++++++++++
 media-sound/timidity++/timidity++-2.15.0.ebuild    | 210 +++++++++++++++++++++
 3 files changed, 329 insertions(+)

diff --git a/media-sound/timidity++/Manifest b/media-sound/timidity++/Manifest
index 0ff73fe8285..6417e3383c2 100644
--- a/media-sound/timidity++/Manifest
+++ b/media-sound/timidity++/Manifest
@@ -1 +1,2 @@
 DIST TiMidity++-2.14.0.tar.xz 1356476 BLAKE2B 8d4a360d1c16b250f3bef7c010e1e263fdda13446437ff2454dc2c2a717246c4d27836a3b40586b12b33e175bc54ee211a3a1798005733461cf5833eda11811a SHA512 d8fc06fa36e4dd42de80c61943da4cd9aec5f8aaf31057a9ededa633d2d48e64c4e53391378d82a7a46ffe4f96c756b010ea9727270f80b134ae1f8bad535bd3
+DIST TiMidity++-2.15.0.tar.xz 1363040 BLAKE2B 63612dc96ddef9b24ca35a8fa24c22fee8b0573efb09543e6017070b2d0a68494bc34afe8ffc50b5f7fe2d95397a971d5dc7afd4c9adbb524b119012e716b7f7 SHA512 36c3c79d941903109d5d6d529963d12e8192a857e80402ad5ab0d1e223451a7cf5dc8fdd046b22ae7da96f413d68db8587a8fce348635838eba2f30f7019192f

diff --git a/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch b/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch
new file mode 100644
index 00000000000..3c2e269be02
--- /dev/null
+++ b/media-sound/timidity++/files/timidity++-2.15.0-pkg-config.patch
@@ -0,0 +1,118 @@
+use $PKG_CONFIG rather than `pkg-config`
+
+https://bugs.gentoo.org/497362
+get ncurses info via pkg-config while we're at it
+
+patch by Mike Frysinger <vapier@gentoo.org>
+
+--- a/configure.in
++++ b/configure.in
+@@ -163,6 +163,7 @@ AC_SUBST(xawresdir)
+ 
+ # Checks for programs.
+ AM_PATH_LISPDIR
++PKG_PROG_PKG_CONFIG
+ AC_PROG_CC
+ AC_PROG_GCC_TRADITIONAL
+ AC_PROG_INSTALL
+@@ -1348,8 +1349,8 @@ AC_MSG_CHECKING(enable_audio=jack)
+ if test "x$au_enable_jack" = xyes; then
+   AC_MSG_RESULT(yes)
+   SYSEXTRAS="$SYSEXTRAS jack_a.c"
+-  EXTRALIBS="$EXTRALIBS $(pkg-config --libs jack)"
+-  EXTRADEFS="$EXTRADEFS -DAU_JACK $(pkg-config --cflags jack)"
++  EXTRALIBS="$EXTRALIBS $(${PKG_CONFIG} --libs jack)"
++  EXTRADEFS="$EXTRADEFS -DAU_JACK $(${PKG_CONFIG} --cflags jack)"
+ else
+   AC_MSG_RESULT(no)
+ fi
+@@ -1665,69 +1666,8 @@ dnl ncurses
+ AM_CONDITIONAL(ENABLE_NCURSES, false)
+ CONFIG_INTERFACE(ncurses,NCURSES,n,
+   AS_HELP_STRING([--enable-ncurses], [Enable ncurses interface        (default is no)]),
+-  [ AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h)
+-
+-dnl #include <ncurses/curses.h> is failure on Plamo Linux 1.3/ncurses 1.9.9e
+-dnl because <ncurses/curses.h> includes <unctrl.h>:
+-dnl /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory
+-dnl But surely there is unctl.h at /usr/include/ncurses/unctrl.h.
+-dnl configure must check ncurses header with -I/usr/include/ncurses option.
+-
+-  case "$ac_cv_header_curses_h$ac_cv_header_ncurses_curses_h$ac_cv_header_ncurses_h" in
+-    *yes*);;
+-    *)	for i in /usr/include /usr/local/include; do
+-	  if test -f "$i/ncurses/curses.h" -a -f "$i/ncurses/unctrl.h"; then
+-	    AC_MSG_WARN(ncurses test is failure.  Please check config.h and common.makefile later)
+-	    CPPFLAGS="$CPPFLAGS -I$i/ncurses"
+-	    break
+-	  fi
+-	done
+-	;;
+-    esac
+-
+-    AC_CHECK_LIB(ncurses,initscr,lib_curses_opt=-lncurses,
+-      [ dnl checking pdcurses
+-	AC_CHECK_LIB(curses,PDC_set_ctrl_break,
+-          [ lib_curses_opt=-lcurses
+-	    AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
+-	    lib_user32_opt="$lib_user32_test"
+-	    AC_CHECK_LIB(curses, vwprintw,
+-	      AC_DEFINE(HAVE_VWPRINTW, 1,
+-	        [Define to 1 if you have the `vwprintw' function.]))
+-	  ],
+-	  [ dnl checking libpdcurses
+-	    AC_CHECK_LIB(pdcurses,PDC_set_ctrl_break,
+-	    [ lib_curses_opt=-lpdcurses
+-	      AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
+-	      lib_user32_opt="$lib_user32_test"
+-	      AC_CHECK_LIB(pdcurses, vwprintw,
+-	        AC_DEFINE(HAVE_VWPRINTW, 1,
+-	          [Define to 1 if you have the `vwprintw' function.]))
+-	    ],
+-	    [ dnl OpenBSD use -lcurses instead of -lncurses.
+-	      case "$target" in
+-		*openbsd*)
+-		  AC_CHECK_LIB(curses,initscr,lib_curses_opt=-lcurses,
+-		    [ AC_MSG_WARN(ncurses interface is not enabled)
+-		      enable_ncurses=no ])
+-		  ;;
+-		*)
+-		  if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
+-		    lib_curses_opt=libpdcurses.lib
+-		    AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
+-		    AC_CHECK_LIB(pdcurses, vwprintw,
+-		      AC_DEFINE(HAVE_VWPRINTW, 1,
+-		        [Define to 1 if you have the `vwprintw' function.]))
+-		  else
+-		    AC_MSG_WARN(ncurses interface is not enabled)
+-		    enable_ncurses=no
+-		  fi
+-		  ;;
+-	      esac
+-	    ])
+-	],
+-	$lib_user32_test)
+-      ])
++  [ CPPFLAGS="$CPPFLAGS $(${PKG_CONFIG} --cflags ncurses)"
++    lib_curses_opt=$(${PKG_CONFIG} --libs ncurses)
+   ],
+   [ LIBS="$LIBS $lib_curses_opt"
+     case "$target" in
+@@ -1894,7 +1834,7 @@ CONFIG_INTERFACE(xaw,XAW,a,
+     lib_xmu_opt=-lXmu
+     lib_xt_opt=-lXt
+     if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
+-      XFT_CFLAGS="$(pkg-config --cflags xft)";
++      XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)";
+       EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
+       lib_xft_opt="-lXft";
+     fi
+@@ -1948,7 +1888,7 @@ CONFIG_INTERFACE(xaw,XAW,a,
+ 	;;
+     esac
+     if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
+-      XFT_CFLAGS="$(pkg-config --cflags xft)";
++      XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)";
+       EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
+       a_so_libs="$a_so_libs -lXft";
+     fi

diff --git a/media-sound/timidity++/timidity++-2.15.0.ebuild b/media-sound/timidity++/timidity++-2.15.0.ebuild
new file mode 100644
index 00000000000..286e33775ee
--- /dev/null
+++ b/media-sound/timidity++/timidity++-2.15.0.ebuild
@@ -0,0 +1,210 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools desktop elisp-common systemd toolchain-funcs user xdg
+
+MY_PV=${PV/_/-}
+MY_P=TiMidity++-${MY_PV}
+S=${WORKDIR}/${MY_P}
+
+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"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="alsa ao emacs flac gtk jack motif nas ncurses oss selinux slang speex tk vorbis X"
+
+REQUIRED_USE="tk? ( X )"
+
+DEPEND="
+	alsa? ( media-libs/alsa-lib )
+	ao? ( >=media-libs/libao-0.8.5 )
+	emacs? ( virtual/emacs )
+	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= )
+	slang? ( sys-libs/slang )
+	speex? ( media-libs/speex )
+	tk? ( dev-lang/tk:0= )
+	vorbis? ( media-libs/libvorbis )
+	X? (
+		media-libs/libpng:0=
+		x11-libs/libXaw
+		x11-libs/libXext
+	)
+"
+RDEPEND="${DEPEND}
+	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
+
+pkg_setup() {
+	enewgroup audio 18 # Just make sure it exists
+	enewuser timidity -1 -1 /var/lib/timidity audio
+}
+
+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
+)
+
+src_prepare() {
+	default
+	eautoreconf
+}
+
+src_configure() {
+	export EXTRACFLAGS="${CFLAGS}" #385817
+
+	local audios
+	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 flac && audios+=",flac"
+	use speex && audios+=",speex"
+	use vorbis && audios+=",vorbis"
+	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
+
+	diropts -o timidity -g nobody -m 0700
+	keepdir /var/lib/timidity
+
+	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_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_desktop_database_update
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+	xdg_desktop_database_update
+}


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/timidity++/files/, media-sound/timidity++/
@ 2021-01-07  1:24 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2021-01-07  1:24 UTC (permalink / raw
  To: gentoo-commits

commit:     4071642e177ae0e7289d684387d1f01af563cbd1
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Jan  7 01:16:57 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Jan  7 01:16:57 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4071642e

media-sound/timidity++: cleanup old

Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Sam James <sam <AT> gentoo.org>

 media-sound/timidity++/Manifest                    |   1 -
 .../files/timidity++-2.14.0-CVE-2017-11546.patch   |  31 ----
 .../files/timidity++-2.14.0-CVE-2017-11547.patch   |  67 -------
 .../timidity++/files/timidity++-2.14.0-gcc5.patch  |  31 ----
 .../files/timidity++-2.14.0-pkg-config.patch       | 109 -----------
 ...ert-for-required-ctl_speana_data-function.patch |  28 ---
 .../files/timidity++-2.14.0-tcltk86.patch          |  13 --
 media-sound/timidity++/timidity++-2.14.0-r3.ebuild | 202 ---------------------
 8 files changed, 482 deletions(-)

diff --git a/media-sound/timidity++/Manifest b/media-sound/timidity++/Manifest
index 6417e3383c2..e6d1475e98f 100644
--- a/media-sound/timidity++/Manifest
+++ b/media-sound/timidity++/Manifest
@@ -1,2 +1 @@
-DIST TiMidity++-2.14.0.tar.xz 1356476 BLAKE2B 8d4a360d1c16b250f3bef7c010e1e263fdda13446437ff2454dc2c2a717246c4d27836a3b40586b12b33e175bc54ee211a3a1798005733461cf5833eda11811a SHA512 d8fc06fa36e4dd42de80c61943da4cd9aec5f8aaf31057a9ededa633d2d48e64c4e53391378d82a7a46ffe4f96c756b010ea9727270f80b134ae1f8bad535bd3
 DIST TiMidity++-2.15.0.tar.xz 1363040 BLAKE2B 63612dc96ddef9b24ca35a8fa24c22fee8b0573efb09543e6017070b2d0a68494bc34afe8ffc50b5f7fe2d95397a971d5dc7afd4c9adbb524b119012e716b7f7 SHA512 36c3c79d941903109d5d6d529963d12e8192a857e80402ad5ab0d1e223451a7cf5dc8fdd046b22ae7da96f413d68db8587a8fce348635838eba2f30f7019192f

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11546.patch b/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11546.patch
deleted file mode 100644
index 94135e98b96..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11546.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 2386ec2c745f6c5075e53ea051da211336b44b84 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai <tiwai@suse.de>
-Date: Tue, 26 Jun 2018 22:31:27 +0200
-Subject: readmidi: Fix division by zero
-
-References: CVE-2017-11546
-
-An adhoc fix for division by zero in insert_note_steps().
-
-Signed-off-by: Takashi Iwai <tiwai@suse.de>
-bug-debian: https://bugs.debian.org/870338
-bug-suse: https://bugzilla.suse.com/show_bug.cgi?id=1081694
-bug: https://bugzilla.suse.com/show_bug.cgi?id=1081694
-origin: https://bugzilla.suse.com/attachment.cgi?id=760825
----
- timidity/readmidi.c | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/timidity/readmidi.c b/timidity/readmidi.c
-index 158388a..341777e 100644
---- a/timidity/readmidi.c
-+++ b/timidity/readmidi.c
-@@ -4585,6 +4585,8 @@ static void insert_note_steps(void)
- 			if (beat != 0)
- 				meas++, beat = 0;
- 			num = timesig[n].a, denom = timesig[n].b, n++;
-+			if (!denom)
-+				denom = 1;
- 		}
- 		a = (meas + 1) & 0xff;
- 		b = (((meas + 1) >> 8) & 0x0f) + ((beat + 1) << 4);

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11547.patch b/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11547.patch
deleted file mode 100644
index 12562a577e0..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-CVE-2017-11547.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 34328d22cbb4ccf03f29223f54f1834c796d86a2 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai <tiwai@suse.de>
-Date: Tue, 26 Jun 2018 22:31:28 +0200
-Subject: resample: Fix out-of-bound access in resamplers
-
-References: CVE-2017-11547
-
-An adhoc fix for out-of-bound accesses in resamples.
-The offset might overflow the given data range.
-
-Signed-off-by: Takashi Iwai <tiwai@suse.de>
-bug-debian: https://bugs.debian.org/870338
-bug-suse: https://bugzilla.suse.com/show_bug.cgi?id=1081694
-origin: https://bugzilla.suse.com/attachment.cgi?id=760826
----
- timidity/resample.c | 10 ++++++++++
- 1 file changed, 10 insertions(+)
-
-diff --git a/timidity/resample.c b/timidity/resample.c
-index cd6b8e6..4a3fadf 100644
---- a/timidity/resample.c
-+++ b/timidity/resample.c
-@@ -57,6 +57,8 @@ static resample_t resample_cspline(sample_t *src, splen_t ofs, resample_rec_t *r
- {
-     int32 ofsi, ofsf, v0, v1, v2, v3, temp;
- 
-+    if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
-+      return src[ofs >> FRACTION_BITS];
-     ofsi = ofs >> FRACTION_BITS;
-     v1 = src[ofsi];
-     v2 = src[ofsi + 1];
-@@ -96,6 +98,8 @@ static resample_t resample_lagrange(sample_t *src, splen_t ofs, resample_rec_t *
- {
-     int32 ofsi, ofsf, v0, v1, v2, v3;
- 
-+    if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
-+      return src[ofs >> FRACTION_BITS];
-     ofsi = ofs >> FRACTION_BITS;
-     v1 = (int32)src[ofsi];
-     v2 = (int32)src[ofsi + 1];
-@@ -154,6 +158,8 @@ static resample_t resample_gauss(sample_t *src, splen_t ofs, resample_rec_t *rec
-     sample_t *sptr;
-     int32 left, right, temp_n;
- 
-+    if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
-+      return src[ofs >> FRACTION_BITS];
-     left = (ofs>>FRACTION_BITS);
-     right = (rec->data_length>>FRACTION_BITS) - left - 1;
-     temp_n = (right<<1)-1;
-@@ -261,6 +267,8 @@ static resample_t resample_newton(sample_t *src, splen_t ofs, resample_rec_t *re
-     int32 left, right, temp_n;
-     int ii, jj;
- 
-+    if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
-+      return src[ofs >> FRACTION_BITS];
-     left = (ofs>>FRACTION_BITS);
-     right = (rec->data_length>>FRACTION_BITS)-(ofs>>FRACTION_BITS)-1;
-     temp_n = (right<<1)-1;
-@@ -330,6 +338,8 @@ static resample_t resample_linear(sample_t *src, splen_t ofs, resample_rec_t *re
- {
-     int32 v1, v2, ofsi;
- 
-+    if (ofs + (1 << FRACTION_BITS) >= rec->data_length)
-+      return src[ofs >> FRACTION_BITS];
-     ofsi = ofs >> FRACTION_BITS;
-     v1 = src[ofsi];
-     v2 = src[ofsi + 1];

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch b/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch
deleted file mode 100644
index 50d64e3bcbb..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-gcc5.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-Upstream commit 6e189f6073e979ceccaf05c3bb5f495a1b9ed87e
-
-inline, defaults to "extern inline" with newer gcc versions
-
-With newer versions of gcc, "inline" defaults to extern, and not static if
-not specified. This causes linking problems at the end of the compile. Most
-of this occurences are fixed (or #ifdef'ed away) except these two small
-ones in timidity/mfi.c
-
-Signed-off-by: Stian Skjelstad <stian.skjelstad@...>
-
---- a/timidity/mfi.c   2004-02-17 17:02:18.000000000 +0100 
-+++ b/timidity/mfi.c   2017-02-14 04:41:24.000000000 +0100 
-@@ -344,7 +344,7 @@
- #define SEND_LASTNOTEINFO(lni, ch)				if (LASTNOTEINFO_HAS_DATA((lni)[ch])) SendLastNoteInfo(lni, ch);
- #define SEND_AND_CLEAR_LASTNOTEINFO(lni, ch)	if (LASTNOTEINFO_HAS_DATA((lni)[ch])) { SendLastNoteInfo(lni, ch); (lni)[ch].on = NO_LAST_NOTE_INFO; }
- 
--inline void StoreLastNoteInfo(LastNoteInfo *info, int channel, int time, int duration, int note, int velocity)
-+static inline void StoreLastNoteInfo(LastNoteInfo *info, int channel, int time, int duration, int note, int velocity)
- {
- 	info[channel].on = time;
- 	info[channel].off = time + duration;
-@@ -352,7 +352,7 @@
- 	info[channel].velocity = velocity;
- }
- 
--inline void SendLastNoteInfo(const LastNoteInfo *info, int channel)
-+static inline void SendLastNoteInfo(const LastNoteInfo *info, int channel)
- {
- 	NOTE_BUF_EV_DEBUGSTR(channel, info[channel].on, note_name[info[channel].note % 12], info[channel].note / 12, info[channel].velocity, info[channel].off);
- 	MIDIEVENT(info[channel].on, ME_NOTEON, channel, info[channel].note, info[channel].velocity);

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-pkg-config.patch b/media-sound/timidity++/files/timidity++-2.14.0-pkg-config.patch
deleted file mode 100644
index 15d6a4ec43f..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-pkg-config.patch
+++ /dev/null
@@ -1,109 +0,0 @@
-use $PKG_CONFIG rather than `pkg-config`
-
-https://bugs.gentoo.org/497362
-get ncurses info via pkg-config while we're at it
-
-patch by Mike Frysinger <vapier@gentoo.org>
-
---- a/configure.in
-+++ b/configure.in
-@@ -148,6 +148,7 @@ AC_SUBST(xawresdir)
- 
- # Checks for programs.
- AM_PATH_LISPDIR
-+PKG_PROG_PKG_CONFIG
- AC_PROG_CC
- AC_PROG_GCC_TRADITIONAL
- AC_PROG_INSTALL
-@@ -1318,8 +1319,8 @@ AC_MSG_CHECKING(enable_audio=jack)
- if test "x$au_enable_jack" = xyes; then
-   AC_MSG_RESULT(yes)
-   SYSEXTRAS="$SYSEXTRAS jack_a.c"
--  EXTRALIBS="$EXTRALIBS $(pkg-config --libs jack)"
--  EXTRADEFS="$EXTRADEFS -DAU_JACK $(pkg-config --cflags jack)"
-+  EXTRALIBS="$EXTRALIBS $(${PKG_CONFIG} --libs jack)"
-+  EXTRADEFS="$EXTRADEFS -DAU_JACK $(${PKG_CONFIG} --cflags jack)"
- else
-   AC_MSG_RESULT(no)
- fi
-@@ -1635,60 +1636,8 @@ dnl ncurses
- AM_CONDITIONAL(ENABLE_NCURSES, false)
- CONFIG_INTERFACE(ncurses,NCURSES,n,
-   AS_HELP_STRING([--enable-ncurses], [Enable ncurses interface        (default is no)]),
--  [ AC_CHECK_HEADERS(ncurses.h ncurses/curses.h curses.h)
--
--dnl #include <ncurses/curses.h> is failure on Plamo Linux 1.3/ncurses 1.9.9e
--dnl because <ncurses/curses.h> includes <unctrl.h>:
--dnl /usr/include/ncurses/curses.h:34: unctrl.h: No such file or directory
--dnl But surely there is unctl.h at /usr/include/ncurses/unctrl.h.
--dnl configure must check ncurses header with -I/usr/include/ncurses option.
--
--  case "$ac_cv_header_curses_h$ac_cv_header_ncurses_curses_h$ac_cv_header_ncurses_h" in
--    *yes*);;
--    *)	for i in /usr/include /usr/local/include; do
--	  if test -f "$i/ncurses/curses.h" -a -f "$i/ncurses/unctrl.h"; then
--	    AC_MSG_WARN(ncurses test is failure.  Please check config.h and common.makefile later)
--	    CPPFLAGS="$CPPFLAGS -I$i/ncurses"
--	    break
--	  fi
--	done
--	;;
--    esac
--
--    AC_CHECK_LIB(ncurses,initscr,lib_curses_opt=-lncurses,
--      [ dnl checking pdcurses
--	AC_CHECK_LIB(curses,PDC_set_ctrl_break,
--          [ lib_curses_opt=-lcurses
--	    AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
--	    lib_user32_opt="$lib_user32_test"
--	  ],
--	  [ dnl checking libpdcurses
--	    AC_CHECK_LIB(pdcurses,PDC_set_ctrl_break,
--	    [ lib_curses_opt=-lpdcurses
--	      AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
--	      lib_user32_opt="$lib_user32_test"
--	    ],
--	    [ dnl OpenBSD use -lcurses instead of -lncurses.
--	      case "$target" in
--		*openbsd*)
--		  AC_CHECK_LIB(curses,initscr,lib_curses_opt=-lcurses,
--		    [ AC_MSG_WARN(ncurses interface is not enabled)
--		      enable_ncurses=no ])
--		  ;;
--		*)
--		  if test "x$VCPP" = xyes || test "x$BORLANDC" = xyes || test "x$WATCOM_C" = xyes || test "x$DMC" = xyes || test "x$POCC" = xyes; then
--		    lib_curses_opt=libpdcurses.lib
--		    AC_DEFINE(USE_PDCURSES,1,Define to 1 if you use PDcurses)
--		  else
--		    AC_MSG_WARN(ncurses interface is not enabled)
--		    enable_ncurses=no
--		  fi
--		  ;;
--	      esac
--	    ])
--	],
--	$lib_user32_test)
--      ])
-+  [ CPPFLAGS="$CPPFLAGS $(${PKG_CONFIG} --cflags ncurses)"
-+    lib_curses_opt=$(${PKG_CONFIG} --libs ncurses)
-   ],
-   [ LIBS="$LIBS $lib_curses_opt"
-     case "$target" in
-@@ -1855,7 +1804,7 @@ CONFIG_INTERFACE(xaw,XAW,a,
-     lib_xmu_opt=-lXmu
-     lib_xt_opt=-lXt
-     if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
--      XFT_CFLAGS="$(pkg-config --cflags xft)";
-+      XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)";
-       EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
-       lib_xft_opt="-lXft";
-     fi
-@@ -1909,7 +1858,7 @@ CONFIG_INTERFACE(xaw,XAW,a,
- 	;;
-     esac
-     if test "x$enable_xft" = "xyes" && test "x$have_xaw" != "xno"; then
--      XFT_CFLAGS="$(pkg-config --cflags xft)";
-+      XFT_CFLAGS="$(${PKG_CONFIG} --cflags xft)";
-       EXTRACT_CPPFLAGS(CPPFLAGS,CFLAGS,$XFT_CFLAGS)
-       a_so_libs="$a_so_libs -lXft";
-     fi

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-revert-for-required-ctl_speana_data-function.patch b/media-sound/timidity++/files/timidity++-2.14.0-revert-for-required-ctl_speana_data-function.patch
deleted file mode 100644
index 6f901eab8bc..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-revert-for-required-ctl_speana_data-function.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-This will revert part of the commit from:
-
-http://timidity.git.sourceforge.net/git/gitweb.cgi?p=timidity/timidity;a=commit;h=e73b53437dbc1e57e61dd4d0c1407784797b08d9
-
-Because otherwise TiMidity++ simply won't build as per:
-
-../interface/libinterface.a(xskin_c.o): In function `ctl_event':
-xskin_c.c:(.text+0x17c): undefined reference to `ctl_speana_data'
-collect2: error: ld returned 1 exit status
-
---- a/interface/xskin_c.c
-+++ b/interface/xskin_c.c
-@@ -228,7 +228,6 @@
-     }
- }
- 
--#if 0
- static void ctl_speana_data(double *val, int size) {
- 
-   /* 0 <= val[n] <= (AMP*NCOLOR) */
-@@ -280,7 +279,6 @@
- 
-   return;
- }
--#endif
- 
- /*ARGSUSED*/
- static int ctl_open(int using_stdin, int using_stdout) {

diff --git a/media-sound/timidity++/files/timidity++-2.14.0-tcltk86.patch b/media-sound/timidity++/files/timidity++-2.14.0-tcltk86.patch
deleted file mode 100644
index 23ef62aa03e..00000000000
--- a/media-sound/timidity++/files/timidity++-2.14.0-tcltk86.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-http://bugs.gentoo.org/451296
-
---- a/interface/tk_c.c
-+++ b/interface/tk_c.c
-@@ -913,7 +913,7 @@
- 	vsnprintf(buf, sizeof(buf), fmt, ap);
- 	Tcl_Eval(my_interp, buf);
- 	va_end(ap);
--	return my_interp->result;
-+	return Tcl_GetStringResult(my_interp);
- }
- 
- static const char *v_get2(const char *v1, const char *v2)

diff --git a/media-sound/timidity++/timidity++-2.14.0-r3.ebuild b/media-sound/timidity++/timidity++-2.14.0-r3.ebuild
deleted file mode 100644
index 647057fac1e..00000000000
--- a/media-sound/timidity++/timidity++-2.14.0-r3.ebuild
+++ /dev/null
@@ -1,202 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit autotools desktop elisp-common systemd toolchain-funcs user xdg-utils
-
-MY_PV=${PV/_/-}
-MY_P=TiMidity++-${MY_PV}
-S=${WORKDIR}/${MY_P}
-
-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"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="amd64 arm arm64 ~hppa ppc ppc64 sparc x86"
-IUSE="alsa ao emacs flac gtk jack motif nas ncurses oss selinux slang speex tk vorbis X"
-
-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= )
-	slang? ( sys-libs/slang )
-	speex? ( media-libs/speex )
-	tk? ( dev-lang/tk:0= )
-	vorbis? ( media-libs/libvorbis )
-	X? (
-		media-libs/libpng:0=
-		x11-libs/libXaw
-		x11-libs/libXext
-	)
-"
-RDEPEND="${DEPEND}
-	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
-
-pkg_setup() {
-	enewgroup audio 18 # Just make sure it exists
-	enewuser timidity -1 -1 /var/lib/timidity audio
-}
-
-DOCS=( AUTHORS ChangeLog NEWS README "${FILESDIR}"/timidity.cfg-r1 )
-
-PATCHES=(
-	"${FILESDIR}"/${P}-params.patch
-	"${FILESDIR}"/${P}-revert-for-required-ctl_speana_data-function.patch
-	"${FILESDIR}"/${P}-tcltk86.patch
-	"${FILESDIR}"/${P}-ar.patch
-	"${FILESDIR}"/${P}-configure-flags.patch
-	"${FILESDIR}"/${P}-pkg-config.patch
-	"${FILESDIR}"/${P}-CVE-2017-1154{6,7}.patch
-	"${FILESDIR}"/${P}-gcc5.patch # bug 606894
-)
-
-src_prepare() {
-	default
-	eautoreconf
-}
-
-src_configure() {
-	export EXTRACFLAGS="${CFLAGS}" #385817
-
-	local myconf=()
-	local audios
-
-	use flac && audios+=",flac"
-	use speex && audios+=",speex"
-	use vorbis && audios+=",vorbis"
-	use oss && audios+=",oss"
-	use jack && audios+=",jack"
-	use ao && audios+=",ao"
-
-	if use nas; then
-		audios+=",nas"
-		myconf+=( --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"
-		myconf+=( --with-default-output=alsa --enable-alsaseq )
-	fi
-
-	# We disable motif by default and then only enable it if it's requested.
-	if use motif; then
-		myconf+=( --enable-motif --with-x )
-		use X || ewarn "Basic X11 support will be enabled because required by motif."
-	fi
-
-	econf \
-		--localstatedir=/var/state/timidity++ \
-		--with-module-dir="${EPREFIX}/usr/share/timidity" \
-		--with-lispdir="${SITELISP}/${PN}" \
-		--with-elf \
-		--enable-audio=${audios} \
-		--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) \
-		--disable-motif \
-		"${myconf[@]}"
-}
-
-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
-
-	diropts -o timidity -g nobody -m 0700
-	keepdir /var/lib/timidity
-
-	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 "${D}"/usr/share/applications/timidity.desktop || die
-}
-
-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_desktop_database_update
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-	xdg_desktop_database_update
-}


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: media-sound/timidity++/files/, media-sound/timidity++/
@ 2022-09-12 20:08 Sam James
  0 siblings, 0 replies; 4+ messages in thread
From: Sam James @ 2022-09-12 20:08 UTC (permalink / raw
  To: gentoo-commits

commit:     8ebfae3dd7d5badea7fa7dd04bbd59bfd96762b5
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 12 20:03:07 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Sep 12 20:03:31 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8ebfae3d

media-sound/timidity++: fix configure tests with Clang 15

Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../timidity++-2.15.0-clang-15-configure.patch     |  27 +++
 media-sound/timidity++/timidity++-2.15.0-r5.ebuild | 236 +++++++++++++++++++++
 2 files changed, 263 insertions(+)

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-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
+}


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2022-09-12 20:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-07  1:24 [gentoo-commits] repo/gentoo:master commit in: media-sound/timidity++/files/, media-sound/timidity++/ Sam James
  -- strict thread matches above, loose matches on Subject: below --
2022-09-12 20:08 Sam James
2019-03-12  8:25 Lars Wendler
2018-08-26  9:50 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox