%global cvs_version 20101108cvs Name: tritonus Summary: Java Sound API Implementation URL: http://www.tritonus.org/ Group: System Environment/Libraries Version: 0.3.7 Release: 0.7.%{cvs_version}%{?dist} License: LGPLv2+ Source0: %{name}-%{version}-%{cvs_version}.tar.bz2 Source9: %{name}-snapshot.sh # Remove lame and ioctl bits: Patch0: %{name}-configure.in.diff # Make trinotus compile against the latest version of these libraries: Patch1: %{name}-src-lib-fluidsynth.Makefile.in.diff Patch2: %{name}-no-jlayer.patch Patch3: %{name}-src-lib-alsa-constants_check.h.diff Patch4: %{name}-removed-code.diff # Fix alsa midi crash RHBZ #510063 # http://sourceforge.net/tracker/?func=detail&aid=2818404&group_id=1390&atid=201390 Patch5: %{name}-src-lib-alsa-cast.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRequires: alsa-lib-devel BuildRequires: ant BuildRequires: ant-commons-net BuildRequires: cdparanoia-devel BuildRequires: esound-devel BuildRequires: fluidsynth-devel BuildRequires: java-devel >= 1.6 BuildRequires: jorbis BuildRequires: jpackage-utils BuildRequires: libtool BuildRequires: libvorbis-devel BuildRequires: libvorbis-devel Requires: java >= 1.6 Requires: jpackage-utils Requires: jorbis Provides: %{name}-shared = %{version}-%{release} # Packages merged into the tritonus package Provides: tritonus-core = %{version}-%{release} Provides: tritonus-aos = %{version}-%{release} Provides: tritonus-javasequencer = %{version}-%{release} Provides: tritonus-misc = %{version}-%{release} Provides: tritonus-alsa = %{version}-%{release} Provides: tritonus-dsp = %{version}-%{release} Provides: tritonus-gsm = %{version}-%{release} Provides: tritonus-jorbis = %{version}-%{release} Provides: tritonus-pvorbis = %{version}-%{release} Provides: tritonus-vorbis = %{version}-%{release} Obsoletes: tritonus-core < %{version}-%{release} Obsoletes: tritonus-aos < %{version}-%{release} Obsoletes: tritonus-javasequencer < %{version}-%{release} Obsoletes: tritonus-misc < %{version}-%{release} Obsoletes: tritonus-alsa < %{version}-%{release} Obsoletes: tritonus-dsp < %{version}-%{release} Obsoletes: tritonus-gsm < %{version}-%{release} Obsoletes: tritonus-jorbis < %{version}-%{release} Obsoletes: tritonus-pvorbis < %{version}-%{release} Obsoletes: tritonus-vorbis < %{version}-%{release} %description Tritonus is an implementation of the Java Sound API. This package contains common files and shared classes required by all other Tritonus plug-ins plus support for aos, javasequencer, alsa, dsp, gsm, jorbis, pvorbis and vorbis. %package cdda Summary: A plug-in for Java that enables you to digitally read audio CD's Group: System Environment/Libraries Requires: %{name}-shared = %{version}-%{release} %description cdda A plug-in for Java that enables you to digitally read audio CD's. %package esd Summary: An implementation of javax.sound.sampled.Mixer based on libesd Group: System Environment/Libraries Requires: %{name}-shared = %{version}-%{release} %description esd An implementation of javax.sound.sampled.Mixer based on libesd. It provides (most of) the capabilities Esound provides to Java Sound. Especially, you can use this mixer to get full-duplex support for Java Sound on Linux. %package fluidsynth Summary: Plug-in for fluidsynth Group: System Environment/Libraries Requires: %{name}-shared = %{version}-%{release} %description fluidsynth A tritonus plug-in for fluidsynth. %package gsm Summary: GSM codec License: GPLv2+ Group: System Environment/Libraries Requires: %{name}-shared = %{version}-%{release} %description gsm For examples of using the GSM codec, refer to the Java Sound Resources examples GSMEncoder, AudioDecoder and DecodingAudioPlayer: http://www.jsresources.org/ http://www.jsresources.org/examples/GSMEncoder.html http://www.jsresources.org/examples/AudioDecoder.html http://www.jsresources.org/examples/DecodingAudioPlayer.html %package javadoc Summary: Javadocs for %{name} Group: Documentation Requires: %{name} = %{version}-%{release} Requires: jpackage-utils %description javadoc This package contains the API documentation for %{name}. %prep %setup -q %patch0 -p1 -b .lameandioctl %patch1 -p0 -b .oldapi %patch2 -p1 %patch3 -p0 -b .oldapi %patch4 -p1 -b .oldapi %patch5 -p1 -b .cast # Fix encoding issues for file in doc/{compression.txt,TODO-matthias.txt,tritonusfaq.sgml}; do iconv -f iso-8859-1 -t utf8 $file > $file.tmp touch -r $file $file.tmp mv -f $file.tmp $file done # Remove classpath from manifest sed -i '/Class-Path/d' build-common.xml # Fix libdir issues sed -i 's|/usr/lib|%{_libdir}|g' `find . -name Makefile.in` # Fedora doesn't like usage of System.loadLibrary sed -i 's|System.loadLibrary("\(.*\)")|System.load("%{_libdir}/%{name}/lib\1.so")|' `grep -rl loadLibrary *` # Fix compiler flags sed -i -e 's|-Werror||g' \ -e 's|-Wl,-rpath,/home/matthias/java/tritonus/src/lib/common||g' \ `find . -name Makefile.in` # Prevent a rebuild in %%install sed -i 's|install: all|install:|' Makefile.in autoreconf -fi %build export CFLAGS="$RPM_OPT_FLAGS -fPIC -I%{_includedir}/cdda" export CPPFLAGS="$RPM_OPT_FLAGS -fPIC -I%{_includedir}/cdda" export CXXFLAGS="$RPM_OPT_FLAGS -fPIC -I%{_includedir}/cdda" %configure export CLASSPATH=`build-classpath commons-net` %ant -v -f build-dtd.xml # I don't know why these lines stop the building of tritonus: sed -i -e '/timestampgranularity/d' -e '/serverlanguagecodeconfig/d' project.dtd export CLASSPATH=`build-classpath jogg jorbis` %ant make %{?_smp_mflags} JAVADIR=%{_jvmdir}/java # javadoc doesn't want to process these two files: rm -f src/classes/org/tritonus/debug/AJDebug* %javadoc -d javadoc -public `find ./ -name '*.java'` %install rm -rf %{buildroot} make install \ LIBS="" \ JAVAEXTPATH=%{buildroot}%{_libdir}/%{name} \ JAVAEXTLIBPATH=%{buildroot}%{_libdir}/%{name} \ DESTDIR=%{buildroot} # jars install -dm 755 %{buildroot}%{_libdir}/%{name} install -pm 644 dist/*.jar %{buildroot}%{_libdir}/%{name} pushd %{buildroot}%{_libdir}/%{name} for jar in *-%{version}*; do ln -sf ${jar} `echo $jar| sed "s|-%{version}||g"` done popd # javadoc install -dm 755 %{buildroot}%{_javadocdir}/%{name} cp -pr javadoc/* %{buildroot}%{_javadocdir}/%{name} # No need to have symlinks for JNI files pushd %{buildroot}%{_libdir}/%{name} for sofile in *.so; do mv $sofile.1.0 $sofile rm -f $sofile.* done popd %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) %doc LGPL NEWS README doc/kaffe* doc/midi* doc/*TODO* doc/*proposal* %dir %{_libdir}/%{name}/ %{_libdir}/%{name}/%{name}_share*.jar %doc doc/%{name}faq.sgml %{_libdir}/%{name}/%{name}_core*.jar %doc doc/AudioOutput* %{_libdir}/%{name}/%{name}_aos*.jar %{_libdir}/%{name}/%{name}_javasequencer*.jar %{_libdir}/%{name}/%{name}_remaining*.jar %doc doc/ALSA* doc/Alsa* doc/bindists/alsa/readme.txt %{_libdir}/%{name}/%{name}_alsa*.jar %{_libdir}/%{name}/lib%{name}alsa.so %{_libdir}/%{name}/%{name}_dsp*.jar %doc doc/compression* %{_libdir}/%{name}/%{name}_jorbis*.jar %{_libdir}/%{name}/%{name}_pvorbis*.jar %doc doc/bindists/vorbis/readme.txt %{_libdir}/%{name}/%{name}_vorbis*.jar %{_libdir}/%{name}/lib%{name}vorbis.so %{_libdir}/%{name}/%{name}_src*.jar %files cdda %defattr(-,root,root,-) %doc doc/cdda.txt doc/bindists/cdda/readme.txt %{_libdir}/%{name}/%{name}_cdda*.jar %{_libdir}/%{name}/lib%{name}cdparanoia.so %files esd %defattr(-,root,root,-) %doc doc/bindists/esd/readme.txt %{_libdir}/%{name}/%{name}_esd*.jar %{_libdir}/%{name}/lib%{name}esd.so %files fluidsynth %defattr(-,root,root,-) %doc doc/fluidsynth* %{_libdir}/%{name}/%{name}_fluidsynth*.jar %{_libdir}/%{name}/lib%{name}fluid.so %files javadoc %defattr(-,root,root,-) %{_javadocdir}/%{name} %files gsm %defattr(-,root,root,-) %doc doc/compression* %{_libdir}/%{name}/%{name}_gsm*.jar %changelog * Thu Nov 23 2010 Lukas Zapletal - 0.3.7-0.7.20101108cvs - spec review by Hans de Goede - fixing some spec cosmetic issues * Thu Nov 11 2010 Lukas Zapletal - 0.3.7-0.6.20101108cvs - removing tritonus-src-lib-alsa-Makefile.in.diff - merging core, aos, javasequencer, misc, alsa, dsp, gsm, jorbis, pvorbis and vorbis into the main package * Sun Jul 26 2009 Fedora Release Engineering - 0.3.7-0.5.20090419cvs - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Wed Jul 08 2009 Orcan Ogetbil - 0.3.7-0.4.20090419cvs - Fix alsa midi crash RHBZ #510063 - No more rebuilding in %%install * Fri May 29 2009 Orcan Ogetbil - 0.3.7-0.3.20090419cvs - Add disttag * Thu May 07 2009 Orcan Ogetbil - 0.3.7-0.2.20090419cvs - Fix duplicate files issue * Sun Apr 19 2009 Orcan Ogetbil - 0.3.7-0.1.20090419cvs - prepare the package for Fedora * Thu Oct 16 2008 Alexander Kurtakov 0.3.7-0.0.cvs20080107.1mdv2009.1 + Revision: 294485 - remove unneeded req - really fix file list - br libtool - fix file list - import tritonus