tmedia-sound/tuxguitar: Add 1.5.1. - parlay - yet another gentoo overlay
 (HTM) git clone https://git.parazyd.org/parlay
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
       ---
 (DIR) commit 20e8cd5e796725f3623fa3fef49b174e9e10312c
 (DIR) parent 78d334a1b46ccc12a214768463a7e67dfc568a95
 (HTM) Author: parazyd <parazyd@dyne.org>
       Date:   Mon,  4 Jan 2021 17:04:08 +0100
       
       media-sound/tuxguitar: Add 1.5.1.
       
       Diffstat:
         A media-sound/tuxguitar/Manifest      |       1 +
         A media-sound/tuxguitar/files/tuxgui… |      75 +++++++++++++++++++++++++++++++
         A media-sound/tuxguitar/tuxguitar-1.… |     143 +++++++++++++++++++++++++++++++
       
       3 files changed, 219 insertions(+), 0 deletions(-)
       ---
 (DIR) diff --git a/media-sound/tuxguitar/Manifest b/media-sound/tuxguitar/Manifest
       t@@ -0,0 +1 @@
       +DIST tuxguitar-1.5.1-src.tar.gz 87638216 BLAKE2B 85a31d636c8df163de85e1eefdb4dd16a896813e21099749eadc4b824c0c540a1b20f464442ae1c6965258945092ab97e499451a547a88c37610ef31a205e2c2 SHA512 38d273e4839af78510ff3ab6f67702273d549bc2cc744699c7a5f5aa1c8a5d5be9e3448cb890fd319dd12dec36523c5edc042dfc9ceaacfc137db0f047ee9d35
 (DIR) diff --git a/media-sound/tuxguitar/files/tuxguitar-1.5.1.patch b/media-sound/tuxguitar/files/tuxguitar-1.5.1.patch
       t@@ -0,0 +1,75 @@
       +--- a/TuxGuitar-gpx/build.xml        2018-06-15 00:08:16.846582120 +0300
       ++++ b/TuxGuitar-gpx/build.xml        2018-06-15 00:42:29.823353256 +0300
       +@@ -10,11 +10,13 @@
       +         <property name="build.share.path" value="share${file.separator}" />
       +         <property name="build.path" value="build${file.separator}" />
       +         <property name="build.jar" value="tuxguitar-gpx.jar" />
       ++        <property name="lib.commons_compress" value="/usr/share/commons-compress"></property>
       +         
       +         <path id="class.path">
       +                 <pathelement location="${path.tuxguitar-lib}"/>
       +                 <pathelement location="${path.tuxguitar-gm-utils}"/>
       +                 <pathelement location="${path.tuxguitar}"/>
       ++                <fileset dir="${lib.commons_compress}" includes="**/*.jar"/>
       +         </path >
       +         
       +         <target name="init" depends="clean">
       +--- a/TuxGuitar-gtp-ui/build.xml        2018-06-17 18:27:50.009821143 +0300
       ++++ b/TuxGuitar-gtp-ui/build.xml        2018-06-17 18:28:06.731886968 +0300
       +@@ -9,7 +9,7 @@
       +         <property name="build.src.path" value="src${file.separator}" />
       +         <property name="build.share.path" value="share${file.separator}" />
       +         <property name="build.path" value="build${file.separator}" />
       +-        <property name="build.jar" value="tuxguitar-gtp.jar" />
       ++        <property name="build.jar" value="tuxguitar-gtp-ui.jar" />
       +         
       +         <path id="class.path">
       +                 <pathelement location="${path.tuxguitar-lib}"/>
       +--- a/TuxGuitar-image/build.xml        2018-06-16 16:38:40.372607993 +0300
       ++++ b/TuxGuitar-image/build.xml        2018-06-16 16:40:01.296913057 +0300
       +@@ -18,6 +18,7 @@
       +                 <pathelement location="${path.tuxguitar-ui-toolkit}"/>
       +                 <pathelement location="${path.tuxguitar-ui-toolkit-swt}"/>
       +                 <pathelement location="${path.swt}"/>
       ++                <fileset dir="../" includes="**/*.jar"/>
       +         </path>
       +         
       +         <target name="init" depends="clean">
       +--- a/TuxGuitar-jsa/build.xml        2018-06-17 18:22:22.370532155 +0300
       ++++ b/TuxGuitar-jsa/build.xml        2018-06-17 18:21:48.876400461 +0300
       +@@ -16,6 +16,7 @@
       +                 <pathelement location="${path.tuxguitar-gm-utils}"/>
       +                 <pathelement location="${path.tuxguitar}"/>
       +                 <pathelement location="${path.tuxguitar-ui-toolkit}"/>
       ++                <fileset dir="../" includes="**/*.jar"/>
       +         </path >
       +         
       +         <target name="init" depends="clean">
       +--- a/TuxGuitar-ui-toolkit-swt/build.xml        2018-06-15 20:28:24.832778356 +0300
       ++++ b/TuxGuitar-ui-toolkit-swt/build.xml        2018-06-15 20:29:08.295947053 +0300
       +@@ -15,6 +15,7 @@
       +                 <pathelement location="${path.tuxguitar-ui-toolkit}"/>
       +                 <pathelement location="${path.tuxguitar-ui-toolkit-swt}"/>
       +                 <pathelement location="${path.swt}"/>
       ++                <pathelement location="../TuxGuitar-lib/tuxguitar-lib.jar"></pathelement>
       +         </path>
       +         
       +         <target name="init" depends="clean">
       +--- a/TuxGuitar-ui-toolkit/build.xml        2018-06-14 13:15:19.157119252 +0300
       ++++ b/TuxGuitar-ui-toolkit/build.xml        2018-06-14 13:15:52.863509043 +0300
       +@@ -19,6 +19,14 @@
       +                 <echo>|          B U I L D I N G   L I B R A R Y        |</echo>
       +                 <echo>+-------------------------------------------------+</echo>
       +                 
       ++    <javac srcdir="${build.src.path}" destdir="${build.path}">
       ++      <classpath>
       ++        <fileset dir="../">
       ++          <include name="**/*.jar"/>
       ++        </fileset>
       ++      </classpath>
       ++    </javac>
       ++
       +                 <javac srcdir="${build.src.path}" destdir="${build.path}" debug="false" >
       +                         <include name="**/*.java"/>
       +                 </javac>
       +
 (DIR) diff --git a/media-sound/tuxguitar/tuxguitar-1.5.1.ebuild b/media-sound/tuxguitar/tuxguitar-1.5.1.ebuild
       t@@ -0,0 +1,143 @@
       +# Copyright 1999-2017 Gentoo Foundation
       +# Distributed under the terms of the GNU General Public License v2
       +
       +EAPI="6"
       +JAVA_PKG_IUSE="source"
       +
       +inherit eutils java-pkg-2 java-ant-2 toolchain-funcs flag-o-matic gnome2-utils
       +
       +MY_P="${P}-src"
       +DESCRIPTION="TuxGuitar is a multitrack guitar tablature editor and player written in Java-SWT"
       +HOMEPAGE="http://tuxguitar.herac.com.ar/"
       +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
       +LICENSE="LGPL-2.1"
       +SLOT="0"
       +
       +IUSE="alsa fluidsynth jack lilypond oss pdf timidity tray"
       +
       +KEYWORDS="~amd64 ~x86"
       +
       +CDEPEND="dev-java/swt:3.7[cairo]
       +        dev-java/commons-compress
       +        alsa? ( media-libs/alsa-lib )
       +        pdf? ( dev-java/itext:5 )
       +        fluidsynth? ( media-sound/fluidsynth )
       +        lilypond? ( media-sound/lilypond )"
       +
       +RDEPEND=">=virtual/jre-1.5
       +        timidity? ( media-sound/timidity++[alsa?,oss?] )
       +        ${CDEPEND}"
       +
       +DEPEND=">=virtual/jdk-1.5
       +        ${CDEPEND}"
       +
       +S="${WORKDIR}/${MY_P}"
       +
       +PATCHES=(
       +        "${FILESDIR}/${P}.patch"
       +)
       +
       +LIBRARY_LIST=()
       +PLUGIN_LIST=()
       +
       +src_prepare() {
       +        default_src_prepare
       +        java-pkg-2_src_prepare
       +        java-ant-2_src_configure
       +
       +        sed -e "s|../TuxGuitar/lib/swt.jar|$(java-pkg_getjar swt-3.7 swt.jar)|" \
       +                -i TuxGuitar*/build.properties || die "sed TuxGuitar*/build.properties failed"
       +
       +        if use pdf; then
       +                sed -e "s|../TuxGuitar/lib/itext.jar|$(java-pkg_getjar itext-5 itext.jar)|" \
       +                -i TuxGuitar-pdf/build.properties || die "sed TuxGuitar-pdf/build.properties failed"
       +        fi
       +
       +        LIBRARY_LIST=(
       +                TuxGuitar-lib
       +                TuxGuitar-editor-utils
       +                TuxGuitar-gm-utils
       +                TuxGuitar-ui-toolkit
       +                TuxGuitar-ui-toolkit-swt
       +                TuxGuitar
       +        )
       +
       +        PLUGIN_LIST=( $(usev alsa) ascii browser-ftp community compat
       +                converter $(usev fluidsynth) gm-settings gpx gtp gtp-ui image
       +                $(usev jack) $(usex jack jack-ui "") jsa $(usev lilypond) midi
       +                musicxml $(usev oss) $(usev pdf) ptb svg tef $(usev tray) tuner
       +        )
       +}
       +
       +src_compile() {
       +        local build_order=( ${LIBRARY_LIST[@]} ${PLUGIN_LIST[@]/#/TuxGuitar-} )
       +        local directory
       +
       +        append-flags -fPIC $(java-pkg_get-jni-cflags)
       +
       +        for directory in ${build_order[@]}; do
       +                cd "${S}"/${directory} || die "cd ${directory} failed"
       +
       +                #java-ant_rewrite-classpath
       +                eant
       +
       +                if [[ -d jni ]]; then
       +                        CC=$(tc-getCC) emake -C jni
       +                fi
       +        done
       +}
       +
       +src_install() {
       +        local tuxguitar_inst_path="/usr/share/${PN}"
       +        local library
       +        local plugin
       +
       +        for library in ${LIBRARY_LIST[@]}; do
       +                cd "${S}"/${library} || die "cd ${library} failed"
       +                java-pkg_dojar ${library,,}.jar
       +                use source && java-pkg_dosrc src/org
       +        done
       +
       +        java-pkg_dolauncher ${PN} \
       +                --main org.herac.tuxguitar.app.TGMainSingleton \
       +                --java_args "-Xmx512m  -Dtuxguitar.share.path=${tuxguitar_inst_path}/share"
       +
       +        # Images and Files
       +        insinto ${tuxguitar_inst_path}
       +        doins -r share
       +
       +        java-pkg_sointo ${tuxguitar_inst_path}/lib
       +        insinto ${tuxguitar_inst_path}/share/plugins
       +        for plugin in ${PLUGIN_LIST[@]/#/TuxGuitar-}; do
       +                cd "${S}"/${plugin} || die "cd ${plugin} failed"
       +                doins ${plugin,,}.jar
       +
       +                #TuxGuitar has its own classloader. No need to register the plugins.
       +                if [[ -d jni ]]; then
       +                        java-pkg_doso jni/lib${plugin,,}-jni.so
       +                fi
       +        done
       +
       +        insinto ${tuxguitar_inst_path}/share
       +        doins -r "${S}"/TuxGuitar-resources/resources/soundfont
       +        doman "${S}/misc/${PN}.1"
       +        insinto /usr/share/mime/packages
       +        doins "${S}/misc/${PN}.xml"
       +        doicon "${S}/misc/${PN}.xpm"
       +        domenu "${S}/misc/${PN}.desktop"
       +}
       +
       +pkg_postinst() {
       +        xdg_mimeinfo_database_update
       +        gnome2_icon_cache_update
       +
       +        if use fluidsynth; then
       +                ewarn "Fluidsynth plugin blocks behavior of JSA plugin."
       +                ewarn "Enable only one of them in \"Tools > Plugins\""
       +        fi
       +}
       +
       +pkg_postrm() {
       +        xdg_mimeinfo_database_update
       +        gnome2_icon_cache_update
       +}