%define rname TuxGuitar %define gcj_support 1 Name: tuxguitar Version: 1.2 Release: %mkrel 4 Summary: Multitrack guitar tablature editor and player License: LGPLv2+ Group: Sound URL: http://www.tuxguitar.com.ar/ Source0: http://downloads.sourceforge.net/%{name}/%{name}-src-%{version}.tar.gz # Use Fedora specific build script from upstream svn. # http://tuxguitar.svn.sourceforge.net/viewvc/tuxguitar/trunk/TuxGuitar/xml/build-fedora.xml Source1: %{name}-build-fedora.xml # From upstream trunk, to disable certain plugins by default # http://tuxguitar.svn.sourceforge.net/viewvc/tuxguitar/trunk/TuxGuitar/src/org/herac/tuxguitar/gui/system/plugins/TGPluginProperties.java?r1=99&r2=770 Patch0: %{name}-plugin-properties.patch BuildRequires: alsa-lib-devel BuildRequires: ant BuildRequires: ant-contrib BuildRequires: ant-nodeps BuildRequires: itext BuildRequires: desktop-file-utils BuildRequires: fluidsynth-devel BuildRequires: jackit-devel BuildRequires: java-devel-openjdk BuildRequires: java-rpmbuild BuildRequires: jpackage-utils BuildRequires: eclipse-swt %if %{gcj_support} BuildRequires: java-gcj-compat-devel Requires(post): java-gcj-compat Requires(postun): java-gcj-compat %else BuildArch: noarch %endif Requires: eclipse-swt Requires: java >= 1.6 Requires: jpackage-utils Requires: itext Provides: %{rname} = %{version}-%{release} Provides: %{name}-alsa = %{version}-%{release} Provides: %{name}-javadoc = %{version}-%{release} Obsoletes: %{name}-alsa < %{version}-%{release} Obsoletes: %{name}-javadoc < %{version}-%{release} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %description TuxGuitar is a multitrack guitar tablature editor and player written in Java-SWT. With TuxGuitar, you will be able to compose music using the following features: * Tablature editor * Score Viewer * Multitrack display * Autoscroll while playing * Note duration management * Various effects (bend, slide, vibrato, hammer-on/pull-off) * Support for triplets (5,6,7,9,10,11,12) * Repeat open and close * Time signature management * Tempo management * Imports and exports gp3, gp4 and gp5 files %prep %setup -q -n %{name}-src-%{version} %patch0 -p1 cp %{SOURCE1} TuxGuitar/xml/build-fedora.xml # Set debug="true" on javac part of the build scripts. for file in $(find . -name build.xml); do sed -i 's|debug="false"|debug="true"|' $file done # Bump Java requires to 1.5 for file in $(find . -name build.properties); do sed -i 's|1.4|1.5|g' $file done # Use a hack to set correct path to MOZILLA_FIVE_HOME on runtime. # Fixes internal help browser not working. sed -i 's,firefox,`rpm -q --queryformat '%{NAME}-%{VERSION}' xulrunner`,' TuxGuitar/xml/build-fedora.xml %build # Plugins to build: PLUGINS="alsa ascii browser-ftp community compat converter fluidsynth gervill\ gtp jack jsa lilypond midi musicxml oss pdf ptb tef tray" # JNI's to build JNIS="alsa fluidsynth jack oss" LIBSUFFIX=$(echo %{_lib}|sed 's|lib||') # to pass to ant: ANT_FLAGS=" \ -Dpath.tuxguitar=$PWD/TuxGuitar/%{name}.jar \ -Dpath.itext=%{_javadir}/itext.jar \ -Dpath.swt=%{_libdir}/eclipse/swt.jar \ -Dlib.swt.jar=%{_libdir}/eclipse/swt.jar \ -Ddist.lib.path=%{_libdir}/%{name}/ \ -Ddist.file=xml/build-fedora.xml \ -Ddist.jar.path=%{_datadir}/%{name}/ \ -Ddist.share.path=%{_datadir}/%{name}/ \ -Dos.lib.suffix=$LIBSUFFIX \ -Dos.data.dir=%{_datadir}/ \ -Ddist.default.style=Lavender \ -Ddist.default.song=%{_datadir}/%{name}/%{name}.tg" # build jars %{ant} -f TuxGuitar/build.xml -v -d $ANT_FLAGS all for jarname in $PLUGINS; do %{ant} -f TuxGuitar-$jarname/build.xml -v -d $ANT_FLAGS \ -Dbuild.jar=../TuxGuitar/share/plugins/tuxguitar-$jarname.jar all done # build jnis for jni in $JNIS; do %{make} -C TuxGuitar-$jni/jni CFLAGS="%{optflags} \ -I%{_jvmdir}/java-openjdk/include \ -I%{_jvmdir}/java-openjdk/include/linux \ -fPIC" done %install rm -rf %{buildroot} # to pass to ant: ANT_FLAGS=" \ -Dpath.tuxguitar=$PWD/TuxGuitar/%{name}.jar \ -Ddist.file=xml/build-fedora.xml \ -Dos.bin.dir=%{_bindir} \ -Ddist.jar.path=%{_datadir}/%{name}/ \ -Ddist.share.path=%{_datadir}/%{name}/ \ -Dos.lib.suffix=$LIBSUFFIX \ -Dos.data.dir=%{_datadir}/ \ -Ddist.default.style=Lavender \ -Ddist.doc.path=%{_docdir}/%{name}-%{version}/ \ -Ddist.default.song=%{_datadir}/%{name}/%{name}.tg \ -Ddist.dst.path=%{buildroot}" %{ant} -f TuxGuitar/build.xml -v -d $ANT_FLAGS install # install jnis we built mkdir -p %{buildroot}%{_libdir}/%{name} cp -a TuxGuitar-*/jni/*.so %{buildroot}%{_libdir}/%{name}/ %if %{gcj_support} %{_bindir}/aot-compile-rpm %endif %clean %{__rm} -rf %{buildroot} %if %{gcj_support} %post %{update_gcjdb} %postun %{clean_gcjdb} %endif %files %defattr(-,root,root,-) %{_docdir}/%{name}-%{version} %{_libdir}/%{name} %{_bindir}/%{name} %{_datadir}/%{name} %{_datadir}/applications/%{name}.desktop %{_datadir}/icons/hicolor/*/apps/%{name}.png %{_datadir}/icons/hicolor/*/mimetypes/*.png %{_datadir}/mime/packages/%{name}.xml %if %{gcj_support} %{_libdir}/gcj/%{name} %endif %changelog * Wed Mar 24 2010 Jani Välimaa <wally@mandriva.org> 1.2-4mdv2010.1 + Revision: 527218 - define correct MOZILLA_FIVE_HOME path on run time, not on build time * Sat Feb 27 2010 Jani Välimaa <wally@mandriva.org> 1.2-3mdv2010.1 + Revision: 512475 - obsolete old javadoc package * Sat Feb 27 2010 Jani Välimaa <wally@mandriva.org> 1.2-2mdv2010.1 + Revision: 512385 - bump java requires * Thu Feb 25 2010 Jani Välimaa <wally@mandriva.org> 1.2-1mdv2010.1 + Revision: 510936 - rewrite .spec (based on .spec from Fedora) - use Fedora specific build script from upstream svn - disable certain plugins by default (Patch0, from upstream svn) + Funda Wang <fwang@mandriva.org> - new version 1.2 * Fri May 01 2009 Frederik Himpe <fhimpe@mandriva.org> 0:1.1-1mdv2010.0 + Revision: 370005 - update to new version 1.1 * Fri Apr 10 2009 Michael Scherer <misc@mandriva.org> 0:1.0-0.0.5mdv2009.1 + Revision: 365817 - update the Group tag, as signaled on irc * Wed Oct 01 2008 David Walluck <walluck@mandriva.org> 0:1.0-0.0.4mdv2009.0 + Revision: 290475 - fix startup by appending /usr/lib to java.library.path * Sun Aug 17 2008 David Walluck <walluck@mandriva.org> 0:1.0-0.0.3mdv2009.0 + Revision: 273022 - Provides/Obsoletes: %%{name}-alsa - fix build with eclipse-swt * Tue Jul 29 2008 David Walluck <walluck@mandriva.org> 0:1.0-0.0.1mdv2009.0 + Revision: 252909 - BuildRequires: fluidsynth-devel - 1.0 * Thu Feb 07 2008 David Walluck <walluck@mandriva.org> 0:0.9.1-12mdv2008.1 + Revision: 163816 - fix menu category + Olivier Blin <oblin@mandriva.com> - restore BuildRoot + Thierry Vignaud <tv@mandriva.org> - kill re-definition of %%buildroot on Pixel's request * Sun Dec 16 2007 Anssi Hannula <anssi@mandriva.org> 0:0.9.1-11mdv2008.1 + Revision: 121040 - buildrequire java-rpmbuild, i.e. build with icedtea on x86(_64) * Mon Nov 26 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-10mdv2008.1 + Revision: 113245 - rebuild to fix swt-gtk dependency * Tue Sep 18 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-9mdv2008.0 + Revision: 89370 - build with icedtea * Mon Sep 17 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-8mdv2008.0 + Revision: 88900 - fix itext in launch script * Sat Sep 15 2007 Anssi Hannula <anssi@mandriva.org> 0:0.9.1-7mdv2008.0 + Revision: 87218 - rebuild to filter out autorequires of GCJ AOT objects - remove unnecessary Requires(post) on java-gcj-compat * Sat Sep 01 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-6mdv2008.0 + Revision: 77734 - update for eclipse 3.3 - remove javax.print patch which is no longer needed - rename no-java-1.5 patch to something midi-related * Tue Apr 17 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-5mdv2008.0 + Revision: 14117 - use itext instead of itext2 * Sat Apr 07 2007 David Walluck <walluck@mandriva.org> 0.9.1-4mdv2007.1 + Revision: 151231 - run aoss from menu, not script * Fri Apr 06 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-3mdv2007.1 + Revision: 150786 - use aoss * Sat Mar 17 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-2mdv2007.1 + Revision: 145556 - really fix menu category - add menu category * Sun Mar 04 2007 David Walluck <walluck@mandriva.org> 0:0.9.1-1mdv2007.1 + Revision: 132045 - 0.9.1 - Import tuxguitar * Mon Sep 04 2006 David Walluck <walluck@mandriva.org> 0:0.8-2mdv2007.0 - add menu * Sat Aug 26 2006 David Walluck <walluck@mandriva.org> 0:0.8-1mdv2007.0 - 0.8 * Tue Jul 18 2006 David Walluck <david@jpackage.org> 0:0.7-1mdv2007.0 - 0.7 * Mon Jun 05 2006 David Walluck <david@jpackage.org> 0:0.4.1-2mdv2007.0 - rebuild for libcgj.so.7 - fix BuildRequires * Fri Feb 24 2006 David Walluck <david@jpackage.org> 0:0.4.1-1mdk - release