diff --git a/0001-Bug2436-Cross-project-paste-should-duplicate-block-f.patch b/0001-Bug2436-Cross-project-paste-should-duplicate-block-f.patch deleted file mode 100644 index 236ef12..0000000 --- a/0001-Bug2436-Cross-project-paste-should-duplicate-block-f.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 242b7fd7b7a7e4a720706a8bb6cf1d4a17099e2e Mon Sep 17 00:00:00 2001 -From: Paul Licameli -Date: Mon, 18 May 2020 07:53:01 -0400 -Subject: [PATCH] Bug2436: Cross-project paste should duplicate block files... - -... to avoid data loss! - -Bug caused by commit c2feee6 ---- - src/DirManager.cpp | 2 +- - src/WaveTrack.cpp | 4 +++- - src/WaveTrack.h | 3 ++- - src/menus/EditMenus.cpp | 7 +++++-- - 4 files changed, 11 insertions(+), 5 deletions(-) - -diff --git a/src/DirManager.cpp b/src/DirManager.cpp -index 71922a395..5278ce916 100644 ---- a/src/DirManager.cpp -+++ b/src/DirManager.cpp -@@ -400,7 +400,7 @@ DirManager::DirManager() - srand(time(NULL)); - - // Set up local temp subdir -- // Previously, Audacity just named project temp directories "project0", -+ // Previously, Audacity just na med project temp directories "project0", - // "project1" and so on. But with the advent of recovery code, we need a - // unique name even after a crash. So we create a random project index - // and make sure it is not used already. This will not pose any performance -diff --git a/src/WaveTrack.cpp b/src/WaveTrack.cpp -index 9feded420..b4ef344a3 100644 ---- a/src/WaveTrack.cpp -+++ b/src/WaveTrack.cpp -@@ -530,10 +530,12 @@ void WaveTrack::Trim (double t0, double t1) - - - --WaveTrack::Holder WaveTrack::EmptyCopy() const -+WaveTrack::Holder WaveTrack::EmptyCopy( -+ const std::shared_ptr &pDirManager ) const - { - auto result = std::make_shared( mDirManager, mFormat, mRate ); - result->Init(*this); -+ result->mDirManager = pDirManager ? pDirManager : mDirManager; - return result; - } - -diff --git a/src/WaveTrack.h b/src/WaveTrack.h -index c99f249d8..e870434aa 100644 ---- a/src/WaveTrack.h -+++ b/src/WaveTrack.h -@@ -160,7 +160,8 @@ private: - - // Make another track copying format, rate, color, etc. but containing no - // clips -- Holder EmptyCopy() const; -+ Holder EmptyCopy( -+ const std::shared_ptr &pDirManager = {} ) const; - - // If forClipboard is true, - // and there is no clip at the end time of the selection, then the result -diff --git a/src/menus/EditMenus.cpp b/src/menus/EditMenus.cpp -index 6a4b550e3..6e14f4f7d 100644 ---- a/src/menus/EditMenus.cpp -+++ b/src/menus/EditMenus.cpp -@@ -2,6 +2,7 @@ - #include "../AdornedRulerPanel.h" - #include "../Clipboard.h" - #include "../CommonCommandFlags.h" -+#include "../DirManager.h" - #include "../LabelTrack.h" - #include "../Menus.h" - #include "../NoteTrack.h" -@@ -75,6 +76,7 @@ bool DoPasteText(AudacityProject &project) - bool DoPasteNothingSelected(AudacityProject &project) - { - auto &tracks = TrackList::Get( project ); -+ auto &dirManager = DirManager::Get( project ); - auto &trackFactory = TrackFactory::Get( project ); - auto &selectedRegion = ViewInfo::Get( project ).selectedRegion; - auto &window = ProjectWindow::Get( project ); -@@ -101,7 +103,7 @@ bool DoPasteNothingSelected(AudacityProject &project) - // Cause duplication of block files on disk, when copy is - // between projects - locker.emplace(wc); -- uNewTrack = wc->EmptyCopy(); -+ uNewTrack = wc->EmptyCopy( dirManager.shared_from_this() ); - pNewTrack = uNewTrack.get(); - }, - #ifdef USE_MIDI -@@ -379,6 +381,7 @@ void OnPaste(const CommandContext &context) - { - auto &project = context.project; - auto &tracks = TrackList::Get( project ); -+ auto &dirManager = DirManager::Get( project ); - auto &trackFactory = TrackFactory::Get( project ); - auto &selectedRegion = ViewInfo::Get( project ).selectedRegion; - const auto &settings = ProjectSettings::Get( project ); -@@ -596,7 +599,7 @@ void OnPaste(const CommandContext &context) - wt->ClearAndPaste(t0, t1, wc, true, true); - } - else { -- auto tmp = wt->EmptyCopy(); -+ auto tmp = wt->EmptyCopy( dirManager.shared_from_this() ); - tmp->InsertSilence( 0.0, - // MJS: Is this correct? - clipboard.Duration() ); --- -2.16.4 - diff --git a/Audacity-2.4.0.tar.gz b/Audacity-2.4.0.tar.gz deleted file mode 100644 index f8b2392..0000000 --- a/Audacity-2.4.0.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:5d1c096d7b04ff8d5dbca3dca5b9d9f8e62093b5ea6e57ae5f821ae3132dc88f -size 63934879 diff --git a/Audacity-2.4.1.tar.gz b/Audacity-2.4.1.tar.gz new file mode 100644 index 0000000..b29c6df --- /dev/null +++ b/Audacity-2.4.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50240f07471373a7e5c2df65cc26eeeaaced9a0850ad1f95cb795f171ea3009f +size 63935461 diff --git a/audacity-misc-errors.patch b/audacity-misc-errors.patch index 1618efc..7797195 100644 --- a/audacity-misc-errors.patch +++ b/audacity-misc-errors.patch @@ -23,10 +23,10 @@ I: Program uses operation a <= b <= c, which is not well defined. E: audacity mathmeaning SplashDialog.cpp:148 -Index: audacity-Audacity-2.3.3/lib-src/portmidi/pm_linux/finddefault.c +Index: audacity-Audacity-2.4.1/lib-src/portmidi/pm_linux/finddefault.c =================================================================== ---- audacity-Audacity-2.3.3.orig/lib-src/portmidi/pm_linux/finddefault.c 2019-11-15 13:14:55.000000000 +0200 -+++ audacity-Audacity-2.3.3/lib-src/portmidi/pm_linux/finddefault.c 2020-02-02 15:41:26.235929851 +0200 +--- audacity-Audacity-2.4.1.orig/lib-src/portmidi/pm_linux/finddefault.c 2020-05-19 11:43:53.000000000 +0200 ++++ audacity-Audacity-2.4.1/lib-src/portmidi/pm_linux/finddefault.c 2020-06-08 11:50:49.379072582 +0200 @@ -5,6 +5,8 @@ #include #include @@ -36,10 +36,10 @@ Index: audacity-Audacity-2.3.3/lib-src/portmidi/pm_linux/finddefault.c #include "portmidi.h" #define STRING_MAX 256 -Index: audacity-Audacity-2.3.3/include/audacity/EffectAutomationParameters.h +Index: audacity-Audacity-2.4.1/include/audacity/EffectAutomationParameters.h =================================================================== ---- audacity-Audacity-2.3.3.orig/include/audacity/EffectAutomationParameters.h 2019-11-15 13:14:55.000000000 +0200 -+++ audacity-Audacity-2.3.3/include/audacity/EffectAutomationParameters.h 2020-02-02 15:41:26.235929851 +0200 +--- audacity-Audacity-2.4.1.orig/include/audacity/EffectAutomationParameters.h 2020-05-19 11:43:53.000000000 +0200 ++++ audacity-Audacity-2.4.1/include/audacity/EffectAutomationParameters.h 2020-06-08 11:50:49.379072582 +0200 @@ -135,7 +135,7 @@ public: bool ReadFloat(const wxString & key, float *pf) const diff --git a/audacity.changes b/audacity.changes index d220e46..a5eae41 100644 --- a/audacity.changes +++ b/audacity.changes @@ -1,3 +1,30 @@ +------------------------------------------------------------------- +Mon Jun 8 09:37:32 UTC 2020 - Dave Plater + +- Update to release 2.4.1 and remove: + 0001-Bug2436-Cross-project-paste-should-duplicate-block-f.patch +- Now needs wxWidgets >=3.1.1 to build. +- Upstream changes: + * A new Time Toolbar showing current record/playback time has been + split from the Selection Toolbar. It can be resized large. + * Presets for more effects can be imported and exported. + * A new Multi-View mode for tracks. In this mode both + spectrogram and waveform views are shown at the same time. + * Opus available as a new audio export format on Windows and Linux. + * Easier to convert labels between point labels and range labels. + * New Loudness Normalization effect. + * New RMS measurement analyzer. + * New Noise Gate effect. + * New Spectral Delete effect. + * 2237 - Equalization effects have no Import or Export for curves + * 2261 - Graphic EQ sliders have no frequency labels + * 2265 - Track heights are reset to default on project re-opening + * 2303 - Playback does not start at the saved cursor position on + reopening a saved project. + * 2314 - Zoom in fail when playing + See also: + https://wiki.audacityteam.org/wiki/New_features_in_Audacity_2.4.1 + ------------------------------------------------------------------- Mon May 18 11:11:10 UTC 2020 - Dave Plater diff --git a/audacity.spec b/audacity.spec index cd4f891..ba09190 100644 --- a/audacity.spec +++ b/audacity.spec @@ -16,10 +16,8 @@ # -%bcond_without mad - Name: audacity -Version: 2.4.0 +Version: 2.4.1 Release: 0 Summary: A Multi Track Digital Audio Editor License: GPL-2.0-or-later @@ -36,23 +34,15 @@ Patch1: audacity-flacversion.patch Patch2: audacity-misc-errors.patch # PATCH-FIX-UPSTREAM audacity-no_return_in_nonvoid.patch Patch3: audacity-no_return_in_nonvoid.patch -Patch4: 0001-Bug2436-Cross-project-paste-should-duplicate-block-f.patch BuildRequires: autoconf BuildRequires: automake BuildRequires: cmake BuildRequires: desktop-file-utils -#Audacity only builds with gcc >= 4.9 -# WARNING: Anything built against wxWidgets with gcc >= 5 needs widgets built with relax-abi.diff and gcc >= 5 -%if 0%{?suse_version} == 1315 -BuildRequires: cpp7 -BuildRequires: gcc7 -BuildRequires: gcc7-c++ -%else BuildRequires: gcc-c++ -%endif #!BuildIgnore: gstreamer-0_10-plugins-base BuildRequires: hicolor-icon-theme -BuildRequires: wxWidgets-3_0-nostl-devel +BuildRequires: libmp3lame-devel +BuildRequires: wxWidgets-3_2-nostl-devel BuildRequires: pkgconfig(alsa) BuildRequires: pkgconfig(expat) BuildRequires: pkgconfig(flac) >= 1.3.1 @@ -64,21 +54,18 @@ BuildRequires: pkgconfig(libavformat) >= 52.12 BuildRequires: pkgconfig(libavutil) BuildRequires: pkgconfig(lilv-0) >= 0.16 BuildRequires: pkgconfig(lv2) +BuildRequires: pkgconfig(mad) BuildRequires: pkgconfig(ogg) BuildRequires: pkgconfig(shared-mime-info) BuildRequires: pkgconfig(sndfile) BuildRequires: pkgconfig(soundtouch) BuildRequires: pkgconfig(soxr) BuildRequires: pkgconfig(suil-0) >= 0.8.2 +BuildRequires: pkgconfig(twolame) BuildRequires: pkgconfig(vamp-hostsdk) BuildRequires: pkgconfig(vorbis) BuildRequires: pkgconfig(vorbisenc) BuildRequires: pkgconfig(vorbisfile) -%if %{with mad} -BuildRequires: libmp3lame-devel -BuildRequires: pkgconfig(mad) -BuildRequires: pkgconfig(twolame) -%endif # This would require to patch our portaudio package with "PortMixer"... an extra API that never got integrated in PortAudio. #BuildRequires: portaudio-devel Recommends: %{name}-lang @@ -113,20 +100,12 @@ This package contains extra plugins for audacity. cp -f %{SOURCE1} LICENSE_NYQUIST.txt # Make sure we use the system versions. rm -rf lib-src/{expat,libvamp,libsoxr,ffmpeg}/ -%if %{with mad} rm -rf lib-src/lame -%endif %build -%if 0%{suse_version} == 1315 -# WARNING: Do not alter, only for Leap. -export CC="%{_bindir}/gcc-7" -export CXX="%{_bindir}/g++-7" -export CPP="%{_bindir}/cpp-7" -%endif - export CFLAGS="%{optflags} -fno-strict-aliasing" export CXXFLAGS="$CFLAGS -std=gnu++11" +%if 1 == 1 aclocal -I m4 autoconf %configure \ @@ -137,15 +116,13 @@ autoconf --disable-dynamic-loading \ %endif --with-ffmpeg=system \ -%if %{with mad} --with-libmad=system \ --with-libtwolame=system \ --with-lame=system \ -%else - --without-libmad \ - --without-libtwolame \ -%endif --docdir=%{_docdir}/%{name}/ +%else +%cmake +%endif make %{?_smp_mflags} @@ -160,21 +137,10 @@ rm -rf %{buildroot}%{_datadir}/pixmaps/ rm %{buildroot}%{_docdir}/%{name}/LICENSE.txt %find_lang %{name} -%post -%desktop_database_post -%icon_theme_cache_post -%mime_database_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%mime_database_postun - %files plugins %license LICENSE.txt %dir %{_libdir}/%{name} -%{_libdir}/%{name}/libsuil_x11.so -%{_libdir}/%{name}/libsuil_x11_in_gtk2.so +%{_libdir}/%{name}/libsuil*.so %files %defattr(-,root,root)