commit:     fa7697a5f071519f7c560e7d070b9f9fb2b09cf3
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sun Mar 22 23:03:59 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sun Mar 22 23:06:21 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa7697a5

media-sound/solfege: 3.23.4 version bump

Bug: https://bugs.gentoo.org/708132
Package-Manager: Portage-2.3.94, Repoman-2.3.21
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 media-sound/solfege/Manifest                       |   1 +
 .../solfege/files/solfege-3.23.4-fix-menubar.patch |  16 ++
 .../solfege-3.23.4-fix-webbrowser-module.patch     |  26 ++++
 .../solfege/files/solfege-3.23.4-itstool.patch     | 161 +++++++++++++++++++++
 .../solfege/files/solfege-3.23.4-no-xmllint.patch  |  16 ++
 .../files/solfege-3.23.4-topdocs-encodings.patch   |  39 +++++
 media-sound/solfege/solfege-3.23.4.ebuild          |  77 ++++++++++
 7 files changed, 336 insertions(+)

diff --git a/media-sound/solfege/Manifest b/media-sound/solfege/Manifest
index 42d6f6424fc..ce0e3617261 100644
--- a/media-sound/solfege/Manifest
+++ b/media-sound/solfege/Manifest
@@ -1 +1,2 @@
 DIST solfege-3.22.2.tar.gz 6890977 BLAKE2B 
e9e4c34a3ebf91470442d294fd97b51e8845b4634dbb9dd0ba786d8c855d177a4fd00e63f0e872c45d52a0bb7be32d7efbd17ab77448c8f8bf9903ca4a626a7b
 SHA512 
7767d5747b324558fb5ebc82767fd592636acbea78d083992ae100a6b288bb3cc233745e9f12c66f5059a8531a85be2ec82aa856d9251206c737a090b1d42a26
+DIST solfege-3.23.4.tar.gz 5148412 BLAKE2B 
8543aaa659f753af87f7b911401ee38713aa51afcf3dc33d4bfacbc880c8088aff78a81ce03369ba0b58d14a4b6965d78d97486ac2c3481f066591db0f29743d
 SHA512 
e489dec514b4f387ebac7627d83d1a7766718d10a26c3ec6257d3f4b27a082501df16a27c8a16023b34a06cd4832fabaa1c73bcded52c502fc68ab57b303eeea

diff --git a/media-sound/solfege/files/solfege-3.23.4-fix-menubar.patch 
b/media-sound/solfege/files/solfege-3.23.4-fix-menubar.patch
new file mode 100644
index 00000000000..e45e1baa482
--- /dev/null
+++ b/media-sound/solfege/files/solfege-3.23.4-fix-menubar.patch
@@ -0,0 +1,16 @@
+Author: Reiner Herrmann <[email protected]>
+Description: with recent gtk+ versions, the menubar text is not visibile
+ As a workaround another container (HBox) is used.
+Bug: https://savannah.gnu.org/bugs/index.php?53109
+
+--- a/solfege/mainwin.py
++++ b/solfege/mainwin.py
+@@ -267,7 +267,7 @@
+         self.g_ui_manager.add_ui_from_file("ui.xml")
+ 
+         self.add_accel_group(self.g_ui_manager.get_accel_group())
+-        hdlbox = Gtk.HandleBox()
++        hdlbox = Gtk.HBox()
+         hdlbox.show()
+         hdlbox.add(self.g_ui_manager.get_widget('/Menubar'))
+         self._vbox.pack_start(hdlbox, False, False, 0)

diff --git 
a/media-sound/solfege/files/solfege-3.23.4-fix-webbrowser-module.patch 
b/media-sound/solfege/files/solfege-3.23.4-fix-webbrowser-module.patch
new file mode 100644
index 00000000000..1fe93228bdf
--- /dev/null
+++ b/media-sound/solfege/files/solfege-3.23.4-fix-webbrowser-module.patch
@@ -0,0 +1,26 @@
+From 9cf6ec0727344bc3e86acc96b4a751a54f9de302 Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Sun, 22 Mar 2020 23:47:21 +0100
+Subject: [PATCH] fix early access of webbrowser module internal, leading to
+ AttributeError
+
+See also: https://bugs.archlinux.org/task/63703
+---
+ solfege/mainwin.py | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/solfege/mainwin.py b/solfege/mainwin.py
+index c058976..a384d57 100644
+--- a/solfege/mainwin.py
++++ b/solfege/mainwin.py
+@@ -25,6 +25,7 @@ import textwrap
+ # debian etch system, the browser does will freeze solfege until
+ # I close the browser window.
+ try:
++    webbrowser.register_standard_browsers()
+     i = webbrowser._tryorder.index("x-www-browser")
+     webbrowser._tryorder.append(webbrowser._tryorder[i])
+     del webbrowser._tryorder[i]
+-- 
+2.25.2
+

diff --git a/media-sound/solfege/files/solfege-3.23.4-itstool.patch 
b/media-sound/solfege/files/solfege-3.23.4-itstool.patch
new file mode 100644
index 00000000000..755ed1f77e7
--- /dev/null
+++ b/media-sound/solfege/files/solfege-3.23.4-itstool.patch
@@ -0,0 +1,161 @@
+diff --git a/Makefile.in b/Makefile.in
+index 5de799b..9851380 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -39,10 +39,9 @@ export MAKEINFO:=@MAKEINFO@
+ export MSGFMT:=@MSGFMT@
+ export MSGGREP:=@MSGGREP@
+ export MSGMERGE:=@MSGMERGE@
+-export XML2PO:=@XML2PO@
++export ITSTOOL:=@ITSTOOL@
+ export XSLTPROC:=@XSLTPROC@
+ export STYLESHEET:=@STYLESHEET@
+-export HAVE_STYLESHEET:=@HAVE_STYLESHEET@
+ export PYTHON:=@PYTHON@
+ export PYTHON_VERSION:=@PYTHON_VERSION@
+ export PYTHON_PREFIX:=@PYTHON_PREFIX@
+@@ -288,7 +287,7 @@ help:
+       @echo "set skipmanual=yes       Don't rebuild the music theory images"
+       @echo "make po-update           Update po/solfege.pot and msgmerge with 
po/*.po"
+       @echo "make manual-po-update    Update help/*/solfege.pot and msgmerge 
with help/*/*.po"
+-      @echo "make update-manual       Rebuild the manual, requiring xml2po 
etc."
++      @echo "make update-manual       Rebuild the manual, requiring itstool 
etc."
+       @echo "make test-screenshots    See which screenshots are missing in 
the user manual"
+       @echo "make help                Display this message."
+       @echo "help/C/one-big-page.html Make documentation in on big html file."
+diff --git a/configure.ac b/configure.ac
+index 323eb27..7751792 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -92,23 +92,12 @@ MY_PATH_PROG(CAT, cat)
+ 
+ # FIXME we had to comment out this to run on win32
+ # PKG_CHECK_MODULES(XML2PO, xml2po >= 0.4)
+-AC_PATH_PROG(XML2PO, xml2po)
+-AC_SUBST(XML2PO)
++AC_PATH_PROG(ITSTOOL, itstool)
++AC_SUBST(ITSTOOL)
+ 
+ AC_PATH_PROG(XSLTPROC, xsltproc)
+ AC_SUBST(XSLTPROC)
+ 
+-AC_ARG_ENABLE(docbook-stylesheet,
+-   AC_HELP_STRING([--enable-docbook-stylesheet=PATH],
+-   [PATH is filename including full path to the html/chunk.xsl
+-    stylesheet.]),
+-  [STYLESHEET=$enableval],
+-  [STYLESHEET=/usr/share/sgml/docbook/stylesheet/xsl/nwalsh/html/chunk.xsl])
+-
+-AC_CHECK_FILE($STYLESHEET, HAVE_STYLESHEET=yes, HAVE_STYLESHEET=no)
+-AC_SUBST(STYLESHEET)
+-AC_SUBST(HAVE_STYLESHEET)
+-
+ AC_CHECK_HEADER(sys/soundcard.h, HAVE_SOUNDCARD_H=yes, HAVE_SOUNDCARD_H=no)
+ AC_SUBST(HAVE_SOUNDCARD_H)
+ 
+@@ -178,9 +167,9 @@ AC_OUTPUT
+ 
+ AC_MSG_NOTICE
+ AC_MSG_NOTICE([Please remember to rerun configure if you change swig 
versions!])
+-if test -z "$XML2PO"; then
++if test -z "$ITSTOOL"; then
+ AC_MSG_NOTICE
+-AC_MSG_NOTICE([xml2po was not found. This is no big deal, but it mean that 
the])
++AC_MSG_NOTICE([itstool was not found. This is no big deal, but it mean that 
the])
+ AC_MSG_NOTICE([translated user manuals will not be updated if you make 
changes])
+ AC_MSG_NOTICE([to the english manual.])
+ fi
+diff --git a/help/C/Makefile b/help/C/Makefile
+index c14c3c8..f169682 100644
+--- a/help/C/Makefile
++++ b/help/C/Makefile
+@@ -38,13 +38,13 @@ dist_files += help/C/solfege.pot \
+       $(wildcard help/C/scales/images/modes/scales/*.png) \
+ 
+ help/C/solfege.pot: $(USER_MANUAL_SOURCES)
+-ifndef XML2PO
++ifndef ITSTOOL
+       @echo
+-      @echo "You need to install xml2po to update help/C/solfege.pot"
++      @echo "You need to install itstool to update help/C/solfege.pot"
+       @echo
+       @exit 64
+ else
+-      $(XML2PO) --keep-entities $(USER_MANUAL_SOURCES) | $(MSGGREP) -v -K -e 
"@@image:" -e "^Tom" -e "^Amundsen" -e "^[email protected]" -e 
"^[email protected]" -e "^[email protected]" -e 
"^[email protected]"  -o help/C/solfege.pot
++      $(ITSTOOL) $(USER_MANUAL_SOURCES) | $(MSGGREP) -v -K -e "@@image:" -e 
"^Tom" -e "^Amundsen" -e "^[email protected]" -e "^[email protected]" -e 
"^[email protected]" -e 
"^[email protected]"  -o help/C/solfege.pot
+ endif
+ 
+ help/C/index.html: $(USER_MANUAL_SOURCES) $(NOT_TRANSLATED_SOURCES)
+diff --git a/help/Makefile b/help/Makefile
+index f333161..a712266 100644
+--- a/help/Makefile
++++ b/help/Makefile
+@@ -13,6 +13,7 @@ XSLTPARAMS:= \
+ --param callout.graphics 0 \
+ --param xref.with.number.and.title 0 \
+ --xinclude \
++--nonet \
+ --stringparam html.stylesheet "../style.css"
+ 
+ dist_files += help/Makefile help/README \
+@@ -65,12 +66,11 @@ help/ru/solfege.xml: help/C/solfege.pot help/ru/ru.po 
$(USER_MANUAL_SOURCES)
+ help/tr/solfege.xml: help/C/solfege.pot help/tr/tr.po $(USER_MANUAL_SOURCES)
+ 
+ help/%/solfege.xml:
+-ifdef XML2PO
++ifdef ITSTOOL
+ ifneq "$(skipmanual)" "yes"
+-      for filename in $(notdir $(USER_MANUAL_SOURCES)); do \
+-      $(XML2PO) --keep-entities -p $(patsubst help/%/solfege.xml, help/%, 
$@)/$(patsubst help/%/solfege.xml,%,$@).po -o $(dir $@)/$$filename 
help/C/$$filename; \
+-      done
+-      rm -f .xml2po.mo
++      msgfmt $(patsubst help/%/solfege.xml, help/%, $@)/$(patsubst 
help/%/solfege.xml,%,$@).po -o $(patsubst help/%/solfege.xml, help/%, 
$@)/$(patsubst help/%/solfege.xml,%,$@).mo;
++      $(ITSTOOL) -m $(patsubst help/%/solfege.xml, help/%, $@)/$(patsubst 
help/%/solfege.xml,%,$@).mo -o help/$(patsubst help/%/solfege.xml,%,$@) 
$(USER_MANUAL_SOURCES);
++      rm -f $(patsubst help/%/solfege.xml, help/%, $@)/$(patsubst 
help/%/solfege.xml,%,$@).mo
+ endif
+ endif
+ 
+@@ -113,13 +113,12 @@ help/C/rhythmtable.xml: tools/gen_rhythms_table.py
+       $(PYTHON) tools/gen_rhythms_table.py
+ 
+ %/one-big-page.html: %/solfege.xml
+-      (cd $(dir $<); $(XSLTPROC) $(I18NDEFS) --xinclude --stringparam 
html.stylesheet "../style.css" --stringparam root.filename "one-big-page" 
--param onechunk 1 $(subst chunk,onechunk,$(STYLESHEET)) $(notdir $<) )
++      (cd $(dir $<); $(XSLTPROC) $(I18NDEFS) --xinclude --stringparam 
html.stylesheet "../style.css" --stringparam root.filename "one-big-page" 
--param onechunk 1 
"http://docbook.sourceforge.net/release/xsl/current/html/onechunk.xsl"; $(notdir 
$<) )
+ 
+ %/index.html: %/solfege.xml
+ ifneq "$(skipmanual)" "yes"
+-ifeq "$(HAVE_STYLESHEET)" "yes"
+  ifneq "$(XSLTPROC)" ""
+-      (cd $(dir $<); $(XSLTPROC) $(I18NDEFS) $(XSLTPARAMS) $(STYLESHEET) 
$(notdir $<))
++      (cd $(dir $<); $(XSLTPROC) $(I18NDEFS) $(XSLTPARAMS) 
"http://docbook.sourceforge.net/release/xsl/current/html/chunk.xsl"; $(notdir 
$<))
+  else
+   ifneq "$(skipmanual)" "yes"
+       @echo "*** Cannot rebuild the user manual because you don't have 
xsltproc installed."
+@@ -127,25 +126,17 @@ ifeq "$(HAVE_STYLESHEET)" "yes"
+       exit 64
+   endif
+  endif
+-else
+- ifneq "$(skipmanual)" "yes"
+-      @echo "*** Cannot rebuild html docs because we are missing the docbook 
stylesheet."
+-      @echo "*** Try to install the missing software and reconfigure."
+-      @echo "*** Run make as 'make skipmanual=yes' to ignore the problem and 
don't build the docs"
+-      exit 64
+- endif
+-endif
+ endif
+ ifeq "$(skipmanual)" "yes"
+       @echo "*** Not building manual because nomanual=yes"
+ endif
+ 
+ .PHONY: update-manual
+-ifdef XML2PO
++ifdef ITSTOOL
+ update-manual: $(addsuffix /index.html,$(addprefix help/,C 
$(USER_MANUAL_LANGUAGES)))
+ else
+ update-manual:
+-      @echo "You have to install xml2po to run 'make update-manual'"
++      @echo "You have to install itstool to run 'make update-manual'"
+ endif
+ 
+ %.png:%.ly

diff --git a/media-sound/solfege/files/solfege-3.23.4-no-xmllint.patch 
b/media-sound/solfege/files/solfege-3.23.4-no-xmllint.patch
new file mode 100644
index 00000000000..b031483b923
--- /dev/null
+++ b/media-sound/solfege/files/solfege-3.23.4-no-xmllint.patch
@@ -0,0 +1,16 @@
+Author: Tom Cato Amundsen <[email protected]>
+Description: don't run xmllint to fix FTBFS
+Bug-Debian: https://bugs.debian.org/643609
+Forwarded: not-needed
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -197,7 +197,7 @@
+ 
+ .PHONY: test
+ 
+-test: xmllint po/solfege.pot
++test: po/solfege.pot
+       if grep -H -n -e "[Uu]ser'*s manual" po/solfege.pot; then \
+               echo "Don't write \"users manual\" or \"user's manual\". Always 
write \"user manual\""; \
+               exit 10; \

diff --git a/media-sound/solfege/files/solfege-3.23.4-topdocs-encodings.patch 
b/media-sound/solfege/files/solfege-3.23.4-topdocs-encodings.patch
new file mode 100644
index 00000000000..497a646c4e8
--- /dev/null
+++ b/media-sound/solfege/files/solfege-3.23.4-topdocs-encodings.patch
@@ -0,0 +1,39 @@
+From 176610fa27d8415d67c8f24974e83e7e851b889c Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <[email protected]>
+Date: Sun, 22 Mar 2020 23:44:53 +0100
+Subject: [PATCH] Fix encoding
+
+---
+ topdocs/AUTHORS.texi | 2 +-
+ topdocs/README.texi  | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/topdocs/AUTHORS.texi b/topdocs/AUTHORS.texi
+index dcef2fb..3bc9ba8 100644
+--- a/topdocs/AUTHORS.texi
++++ b/topdocs/AUTHORS.texi
+@@ -35,7 +35,7 @@ Small update to fr.po
+ Updated @file{es.po} file and added @file{es_MX.po}. Compiled binaries
+ for RedHat 8.0. Testing and bugreporting.
+ 
+-@item David Asorey �lvares and @email{die@@die.com.fr, Diego Duchowney}
++@item David Asorey Álvares and @email{die@@die.com.fr, Diego Duchowney}
+ 
+ Spannish translations.
+ 
+diff --git a/topdocs/README.texi b/topdocs/README.texi
+index fcedd28..b4aa798 100644
+--- a/topdocs/README.texi
++++ b/topdocs/README.texi
+@@ -166,7 +166,7 @@ You are welcome to ask questions on
+ @section History
+ 
+ The first versions of Solfege was written in the first quarter
+-of 1999 when I studied my 4th and last year at Malm� Academy of Music.
++of 1999 when I studied my 4th and last year at Malmö Academy of Music.
+ I was writing a "special subject" (what is the english term??) about
+ ear training and used GNU Lilypond and LaTeX to typeset the paper.
+ 
+-- 
+2.25.2
+

diff --git a/media-sound/solfege/solfege-3.23.4.ebuild 
b/media-sound/solfege/solfege-3.23.4.ebuild
new file mode 100644
index 00000000000..84956a2abe8
--- /dev/null
+++ b/media-sound/solfege/solfege-3.23.4.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+PYTHON_REQ_USE="sqlite"
+inherit autotools python-single-r1
+
+DESCRIPTION="GNU program to help practicing ear training"
+HOMEPAGE="https://www.gnu.org/software/solfege/";
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="alsa oss"
+
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+BDEPEND="${PYTHON_DEPS}
+       >=app-text/docbook-xsl-stylesheets-1.60
+       app-text/txt2man
+       dev-lang/swig
+       dev-libs/libxslt
+       dev-util/itstool
+       sys-apps/texinfo
+       sys-devel/gettext
+       virtual/pkgconfig
+"
+RDEPEND="${PYTHON_DEPS}
+       $(python_gen_cond_dep '
+               dev-python/pycairo[${PYTHON_MULTI_USEDEP}]
+               dev-python/pygobject:3[${PYTHON_MULTI_USEDEP}]
+       ')
+       x11-libs/gtk+:3
+       alsa? ( dev-python/pyalsa )
+       !oss? ( media-sound/timidity++ )
+"
+DEPEND="${RDEPEND}"
+
+RESTRICT="test"
+
+PATCHES=(
+       "${FILESDIR}/${P}-no-xmllint.patch"
+       "${FILESDIR}/${P}-fix-menubar.patch"
+       "${FILESDIR}/${P}-itstool.patch"
+       "${FILESDIR}/${P}-topdocs-encodings.patch"
+       "${FILESDIR}/${P}-fix-webbrowser-module.patch"
+)
+
+src_prepare() {
+       default
+
+       # fix encoding of the Hungarian translation, thanks to Arch Linux
+       iconv -f ISO-8859-2 -t UTF-8 po/hu.po -o po/hu.po.new || die
+       sed -i 's/charset=iso-8859-2/charset=utf-8/' po/hu.po.new || die
+       mv po/hu.po.new po/hu.po || die
+
+       sed -E 's|(PYTHON_INCLUDES=).+|\1"$(pkg-config --cflags-only-I 
python3)"|g' \
+               -i acinclude.m4 || die
+
+       eautoreconf
+}
+
+src_configure() {
+       econf $(use_enable oss oss-sound)
+}
+
+src_compile() {
+       emake skipmanual=yes
+}
+
+src_install() {
+       emake DESTDIR="${ED}" nopycompile=YES skipmanual=yes install
+       dodoc AUTHORS changelog FAQ README
+}

Reply via email to