]> git.pld-linux.org Git - packages/audacity.git/blobdiff - audacity.spec
update desktop database and icon cache
[packages/audacity.git] / audacity.spec
index ec21eb7ba3cb0c24e8588047317963e80922d7e4..c025bd6ce41fd79613eb038b6cfe728f6174a8b5 100644 (file)
 # TODO:
-#      internal portaudio crashes when only OSS is available on startup
-%bcond_with    libresample     # using libresample (default libsamplerate)
+# - internal portaudio crashes when only OSS is available on startup
+# - use system portaudio (>= 19, but relies on local changes)
+# - use system portSMF?
+# - use system libnyquist (if ever; currently it's a part of audacity project)
+#
+# Conditional build:
+%bcond_without ffmpeg          # build without ffmpeg support
+%bcond_without gtk3            # GTK+ 3.x instead of 2.x (not fully supported)
+%bcond_without mmx             # MMX instructions
+%bcond_without sse             # SSE instructions
+%bcond_without sse2            # SSE2 instructions
+#
+%ifnarch %{x8664} x32 pentium2 pentium3 pentium4 athlon
+%undefine      with_mmx
+%endif
+%ifnarch %{x8664} x32 pentium3 pentium4
+%undefine      with_sse
+%endif
+%ifnarch %{x8664} x32 pentium4
+%undefine      with_sse2
+%endif
+
 Summary:       Audacity - manipulate digital audio waveforms
-Summary(pl):   Audacity - narzêdzie do obróbki plików d¼wiêkowych
-Summary(ru):   Êðîññïëàòôîðìåííûé çâóêîâîé ðåäàêòîð
+Summary(pl.UTF-8):     Audacity - narzędzie do obróbki plików dźwiękowych
+Summary(ru.UTF-8):     Кроссплатформенный звуковой редактор
 Name:          audacity
-Version:       1.3.2
-Release:       2
-License:       GPL
-Vendor:                Dominic Mazzoni <dominic@minorninth.com>
+Version:       3.3.3
+Release:       3
+License:       GPL v2+
 Group:         X11/Applications/Sound
-Source0:       http://dl.sourceforge.net/audacity/%{name}-src-%{version}.tar.gz
-# Source0-md5: bf63673140254f1283dfd55b61ff2422
-Source1:       %{name}.desktop
-Source2:       %{name}-icon.png
-Patch0:                %{name}-not_require_lame-libs-devel.patch
-Patch1:                %{name}-wx28.patch
-Patch2:                %{name}-flac.patch
-Patch3:                %{name}-system-libs.patch
-Patch4:                %{name}-opt.patch
-URL:           http://audacity.sourceforge.net/
-BuildRequires: autoconf >= 2.50
-BuildRequires: automake
+Source0:       https://github.com/audacity/audacity/releases/download/Audacity-%{version}/%{name}-sources-%{version}.tar.gz
+# Source0-md5: c69f2091ef0b65022e19ccce62379ff2
+Source1:       https://github.com/audacity/audacity-manual/releases/download/v%{version}/%{name}-manual-%{version}.tar.gz
+# Source1-md5: cd0ad05077976c51889a13081910462e
+Patch0:                msgstr-format.patch
+URL:           http://audacityteam.org/
+BuildRequires: alsa-lib-devel
+BuildRequires: chrpath
+BuildRequires: cmake >= 3.15
 BuildRequires: expat-devel >= 1.95
-BuildRequires: fftw-devel >= 2.1.4
-BuildRequires: flac-devel >= 1.1.3
-BuildRequires: gettext-devel
+# libavcodec >= 51.53 libavformat >= 52.12 libavutil
+%{?with_ffmpeg:BuildRequires:  ffmpeg-devel >= 0.8.0}
+BuildRequires: flac-c++-devel >= 1.3.1
+BuildRequires: gettext-tools >= 0.18
+BuildRequires: glib2-devel
+%{!?with_gtk3:BuildRequires:   gtk+2-devel >= 2.0}
+%{?with_gtk3:BuildRequires:    gtk+3-devel >= 3.0}
+BuildRequires: lame-libs-devel
 BuildRequires: libid3tag-devel >= 0.15.0b-2
-BuildRequires: libjpeg-devel
-BuildRequires: libmad-devel >= 0.14.2b-4
-%{?with_libresample:BuildRequires:     libresample-devel >= 0.1.3}
-%{!?with_libresample:BuildRequires:    libsamplerate-devel >= 0.1.2}
+BuildRequires: libmpg123-devel
+BuildRequires: libogg-devel
+BuildRequires: libsbsms2-devel >= 2.2.0
 BuildRequires: libsndfile-devel >= 1.0.0
-BuildRequires: libstdc++-devel
-BuildRequires: libvorbis-devel >= 1:1.0
+BuildRequires: libstdc++-devel >= 6:9
+BuildRequires: libuuid-devel
+BuildRequires: libvorbis-devel >= 1:1.3
+BuildRequires: lilv-devel >= 0.24.6
+BuildRequires: lv2-devel >= 1.16.0
 BuildRequires: pkgconfig
-BuildRequires: soundtouch-devel >= 1.3.0
+BuildRequires: portaudio-devel >= 19
+BuildRequires: portmidi-devel
+BuildRequires: python3
+BuildRequires: rpmbuild(macros) >= 1.742
+BuildRequires: serd-devel >= 0.30.2
+BuildRequires: sord-devel >= 0.16.4
+BuildRequires: soundtouch-devel >= 1.7.1
+BuildRequires: soxr-devel >= 0.1.1
 BuildRequires: speex-devel
-BuildRequires: twolame-devel
+BuildRequires: sqlite3-devel >= 3.31.1
+BuildRequires: sratom-devel >= 0.6.4
+BuildRequires: suil-devel >= 0.10.6
+BuildRequires: tar >= 1:1.22
+BuildRequires: twolame-devel >= 0.3.13
+BuildRequires: udev-devel
+BuildRequires: unzip
+BuildRequires: vamp-devel >= 2.5
+BuildRequires: wavpack-devel
 BuildRequires: which
-BuildRequires: wxGTK2-unicode-devel >= 2.8.0
-BuildRequires: zip
+%{!?with_gtk3:BuildRequires:   wxGTK2-unicode-devel >= 3.1.3}
+%{?with_gtk3:BuildRequires:    wxGTK3-unicode-devel >= 3.1.3}
+BuildRequires: xz
+BuildRequires: zlib-devel
+Requires(post,postun): desktop-file-utils
+Requires(post,postun): gtk-update-icon-cache
+Requires(post,postun): shared-mime-info
+Requires:      flac-c++ >= 1.3.1
+Requires:      hicolor-icon-theme
+# dlopened
 Requires:      lame-libs
 Requires:      libid3tag >= 0.15.0b-2
-Requires(post,postun): shared-mime-info
+Requires:      libsbsms2 >= 2.2.0
+Requires:      libsndfile >= 1.0.0
+Requires:      libvorbis >= 1:1.3
+Requires:      lilv >= 0.24.6
+Requires:      soundtouch >= 1.7.1
+Requires:      soxr >= 0.1.1
+Requires:      sqlite3-libs >= 3.31.1
+Requires:      suil >= 0.10.6
+Requires:      twolame-libs >= 0.3.13
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -53,65 +107,114 @@ AU, IRCAM, MP3, and Ogg Vorbis. It supports all common editing
 operations such as Cut, Copy, and Paste, plus it will mix tracks and
 let you apply plug-in effects to any part of a sound.
 
-%description -l pl
-Audacity to program obs³uguj±cy ró¿ne formaty plików audio. Obs³uguje
-WAV, AIFF, AU, IRCAM, MP3, oraz Ogg Vorbis. Program ten umo¿liwia
-wykonywanie podstawowych czynnoci edycyjnych takich jak kasowanie,
-wstawianie i miksowanie ¶cie¿ki d¼wiêkowej. Umo¿liwia tak¿e
+%description -l pl.UTF-8
+Audacity to program obsługujący różne formaty plików audio. Obsługuje
+WAV, AIFF, AU, IRCAM, MP3, oraz Ogg Vorbis. Program ten umożliwia
+wykonywanie podstawowych czynności edycyjnych takich jak kasowanie,
+wstawianie i miksowanie ścieżki dźwiękowej. Umożliwia także
 wykonywanie dowolnych innych operacji poprzez system wtyczek.
 
-%description -l ru
-Audacity - ýòî çâóêîâîé ðåäàêòîð, ïîçâîëÿþùèé ðàáîòàòü ñ ôàéëàìè â
-ôîðìàòàõ WAV, AIFF, AU, IRCAM, MP3 è Ogg Vorbis. Â íåì ðåàëèçîâàíû âñå
-îñíîâíûå îïåðàöèè, òàêèå êàê óäàëåíèå, êîïèðîâàíèå, âñòàâêà,
-ìèêøèðîâàíèå òðåêîâ è ïðèìåíåíèå ýôôåêòîâ, îôîðìëåííûõ â âèäå
-ïëàãèíîâ, ê ëþáîé ÷àñòè çâóêîâîãî ôàéëà.
+%description -l ru.UTF-8
+Audacity - это звуковой редактор, позволяющий работать с файлами в
+форматах WAV, AIFF, AU, IRCAM, MP3 и Ogg Vorbis. В нем реализованы все
+основные операции, такие как удаление, копирование, вставка,
+микширование треков и применение эффектов, оформленных в виде
+плагинов, к любой части звукового файла.
 
 %prep
-%setup -q -n %{name}-src-%{version}-beta
+%setup -q -n %{name}-sources-%{version}
 %patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
+
+# Make sure we use the system versions.
+%{__rm} -r lib-src/{lv2,soundtouch,libsoxr,twolame,libvamp}/
 
 %build
-cd lib-src/portmixer
-%{__autoconf}
-cd ../..
-%{__aclocal}
-%{__autoconf}
-
-export WX_CONFIG="`which wx-gtk2-unicode-config`"
-%configure \
-%if %{with libresample}
-       --with-libresample=system \
+mkdir -p build
+cd build
+%cmake .. \
+       %{cmake_on_off mmx HAVE_MMX} \
+       %{cmake_on_off sse HAVE_SSE} \
+       %{cmake_on_off sse2 HAVE_SSE2} \
+       -Daudacity_conan_enabled=OFF \
+       -Daudacity_has_crashreports=OFF \
+       -Daudacity_has_updates_check=OFF \
+       -Daudacity_has_sentry_reporting=OFF \
+       -Daudacity_has_networking=OFF \
+       -Daudacity_has_vst3=OFF \
+       -Daudacity_lib_preference=system \
+       -Daudacity_obey_system_dependencies=ON \
+       -Daudacity_use_wxwidgets=system \
+       -Daudacity_use_sqlite=system \
+       -Daudacity_use_libsndfile=system \
+       -Daudacity_use_soxr=system \
+       -Daudacity_use_lame=system \
+       -Daudacity_use_twolame=system \
+       -Daudacity_use_libflac=system \
+       -Daudacity_use_ladspa=on \
+       -Daudacity_use_libvorbis=system \
+       -Daudacity_use_libid3tag=system \
+       -Daudacity_use_expat=system \
+       -Daudacity_use_soundtouch=system \
+       -Daudacity_use_vamp=system \
+       -Daudacity_use_lv2=system \
+       -Daudacity_use_portaudio=system \
+       -Daudacity_use_midi=system \
+       -Daudacity_use_libogg=system \
+       -Daudacity_use_portsmf=local \
+       -DwxWidgets_CONFIG_EXECUTABLE:FILEPATH=$(which wx-gtk%{?with_gtk3:3}%{!?with_gtk3:2}-unicode-config) \
+%if %{with ffmpeg}
+       -Daudacity_use_ffmpeg=loaded
 %else
-       --with-libresample=no \
-       --with-libsamplerate=system \
+       -Daudacity_use_ffmpeg=off
 %endif
-       --with-help \
-       --with-id3tag=system \
-       --with-libmad=system \
-       --with-libsndfile=system \
-       --with-libflac=system \
-       --with-vorbis=system
 
 %{__make}
 
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{%{_desktopdir},%{_pixmapsdir}}
 
+cd build
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT \
        INSTALL_PATH=$RPM_BUILD_ROOT
+cd ..
+
+# audacity needs to know where its libraries are...
+chrpath --replace %{_libdir}/%{name} $RPM_BUILD_ROOT/%{_bindir}/audacity
+
+# ..but the libraries don't need RPATH
+for lib in $RPM_BUILD_ROOT/%{_libdir}/%{name}/{,modules/}*.so ; do
+       chrpath --delete $lib
+done
+
+install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/help
+%{__tar} xf %{SOURCE1} -C $RPM_BUILD_ROOT%{_datadir}/%{name}/help
+
+# unify locale names
+%{__mv} $RPM_BUILD_ROOT%{_localedir}/{ca_ES@valencia,ca@valencia}
+%{__mv} $RPM_BUILD_ROOT%{_localedir}/{pt_PT,pt}
+%{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr_RS,sr}
+%{__mv} $RPM_BUILD_ROOT%{_localedir}/{sr_RS@latin,sr@latin}
+
+# remove unsupported locale
+%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/{co,eu_ES}
+
+%{__rm} $RPM_BUILD_ROOT%{_pixmapsdir}/audacity.xpm
+%{__rm} $RPM_BUILD_ROOT%{_pixmapsdir}/audacity16.xpm
+%{__rm} $RPM_BUILD_ROOT%{_pixmapsdir}/audacity32.xpm
+%{__rm} $RPM_BUILD_ROOT%{_pixmapsdir}/gnome-mime-application-x-audacity-project.xpm
+
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}/README.md
+%{__rm} $RPM_BUILD_ROOT%{_docdir}/%{name}/LICENSE.txt
+%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/%{name}
 
-install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
+install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{16x16,22x22,24x24,32x32,48x48}/apps
+%{__mv} $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{16x16,16x16/apps}/%{name}.png
+%{__mv} $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{22x22,22x22/apps}/%{name}.png
+%{__mv} $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{24x24,24x24/apps}/%{name}.png
+%{__mv} $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{32x32,32x32/apps}/%{name}.png
+%{__mv} $RPM_BUILD_ROOT%{_iconsdir}/hicolor/{48x48,48x48/apps}/%{name}.png
 
-mv -f $RPM_BUILD_ROOT%{_datadir}/locale/{zh,zh_CN}
-rm -rf $RPM_BUILD_ROOT%{_docdir}/%{name}/
 
 %find_lang %{name}
 
@@ -120,16 +223,29 @@ rm -rf $RPM_BUILD_ROOT
 
 %post
 %update_mime_database
+%update_desktop_database_post
+%update_icon_cache hicolor
 
 %postun
 %update_mime_database
+%update_desktop_database_postun
+%update_icon_cache hicolor
 
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc README.txt
+%doc README.md LICENSE.txt
 %attr(755,root,root) %{_bindir}/audacity
-%{_datadir}/%{name}
-%{_mandir}/man1/*.1*
-%{_desktopdir}/*.desktop
-%{_pixmapsdir}/*
+%dir %{_libdir}/%{name}
+%attr(755,root,root) %{_libdir}/%{name}/lib-*.so
+%dir %{_libdir}/%{name}/modules
+%attr(755,root,root) %{_libdir}/%{name}/modules/mod-script-pipe.so
+%dir %{_datadir}/%{name}
+%{_datadir}/%{name}/help
+%{_datadir}/%{name}/nyquist
+%{_datadir}/%{name}/plug-ins
+%{_datadir}/%{name}/EffectsMenuDefaults.xml
+%{_mandir}/man1/audacity.1*
+%{_desktopdir}/audacity.desktop
+%{_metainfodir}/audacity.appdata.xml
 %{_datadir}/mime/packages/audacity.xml
+%{_iconsdir}/hicolor/*/apps/*.*
This page took 0.070639 seconds and 4 git commands to generate.