SHA256
1
0
forked from pool/audacity

Accepting request 1188974 from home:kill_it:branches:multimedia:apps

- Update to 3.6.1
  This is a hotfix release. It fixes the following bugs:
  * #6889 Fixed a crash when exporting multichannel audio.
  * #6882 Fixed a crash when pasting mono clips into stereo tracks.
  * #4763 (Accessibility) Made more values available when using the
           plain UI of plugins. (Thanks, David Bailes!)
  * #6855 Prevented incompatible versions from opening projects
          created in 3.6.x.
  * #6892 Fixed the dark theme sometimes having white corners in buttons.

OBS-URL: https://build.opensuse.org/request/show/1188974
OBS-URL: https://build.opensuse.org/package/show/multimedia:apps/audacity?expand=0&rev=224
This commit is contained in:
Takashi Iwai 2024-07-23 08:39:03 +00:00 committed by Git OBS Bridge
commit 0640adec67
17 changed files with 2901 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
.osc

3
Audacity-3.5.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:71dd1e1a8d58f4345abb3664d2446d3ba09c95d9c81b9e2a58d1a818ba793a23
size 57387401

3
Audacity-3.6.0.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:131b6de96078d7f95f47754420e836b1dc75bb3d5ec2697f39395c2cb68df606
size 61369825

3
Audacity-3.6.1.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d3af8c8068cdc3072fb583d5062aa75f4b25846da342bd30df40bfb5ede83cc5
size 61369168

26
_constraints Normal file
View File

@ -0,0 +1,26 @@
<constraints>
<overwrite>
<conditions>
<arch>x86_64</arch>
<arch>aarch64</arch>
<arch>ppc64</arch>
<arch>ppc64le</arch>
</conditions>
<hardware>
<physicalmemory>
<size unit="G">8</size>
</physicalmemory>
</hardware>
</overwrite>
<overwrite>
<conditions>
<arch>riscv64</arch>
</conditions>
<hardware>
<memory>
<size unit="G">14</size>
</memory>
</hardware>
</overwrite>
</constraints>

14
_service Normal file
View File

@ -0,0 +1,14 @@
<services>
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/steinbergmedia/vst3sdk/</param>
<param name="revision">v3.7.11_build_10</param>
<param name="version">3.7.11_build_10</param>
<param name="exclude">doc</param>
<param name="filename">vst3sdk</param>
</service>
<service name="recompress" mode="disabled">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">https://github.com/steinbergmedia/vst3sdk/</param>
<param name="changesrevision">358b72ee61bc67fb4592b0d492e0c6a1211ebf11</param></service></servicedata>

33
audacity-license-nyquist Normal file
View File

@ -0,0 +1,33 @@
There are a number of files under the nyquist subdirectory, which
carry a non-commercial license :
lib-src/libnyquist/nyquist/xlisp/xlcont.c
lib-src/libnyquist/nyquist/xlisp/xldbug.c
lib-src/libnyquist/nyquist/xlisp/xldmem.c
lib-src/libnyquist/nyquist/xlisp/xleval.c
lib-src/libnyquist/nyquist/xlisp/xlfio.c
lib-src/libnyquist/nyquist/xlisp/xlftab.c
lib-src/libnyquist/nyquist/xlisp/xlimage.c
lib-src/libnyquist/nyquist/xlisp/xlinit.c
lib-src/libnyquist/nyquist/xlisp/xlio.c
lib-src/libnyquist/nyquist/xlisp/xlisp.c
lib-src/libnyquist/nyquist/xlisp/xlisp.h
lib-src/libnyquist/nyquist/xlisp/xlmath.c
lib-src/libnyquist/nyquist/xlisp/xlobj.c
lib-src/libnyquist/nyquist/xlisp/xlprin.c
lib-src/libnyquist/nyquist/xlisp/xlread.c
lib-src/libnyquist/nyquist/xlisp/xlstr.c
lib-src/libnyquist/nyquist/xlisp/xlsys.c
To clarify this licensing here is the response from David:
"The copyright notices in the source code are intended to suggest that
non-commercial users need not contact me for permission. It is granted
in the source code comments. Originally, commercial users needed
a license and in some cases paid a fee. Now, commercial use is governed
by a BSD-like license as you've mentioned. I guess I should at least
update my copies of the source files to say that but I have no control
over what is floating around the net.
David Betz"

View File

@ -0,0 +1,24 @@
diff --git a/src/AboutDialog.cpp b/src/AboutDialog.cpp
index 2f42df1..2147892 100644
--- a/src/AboutDialog.cpp
+++ b/src/AboutDialog.cpp
@@ -66,7 +66,7 @@ hold information about one contributor to Audacity.
#endif
#ifdef REV_LONG
-#define REV_IDENT wxString( "[[https://github.com/audacity/audacity/commit/" )+ REV_LONG + "|" + wxString( REV_LONG ).Left(6) + "]] of " + REV_TIME
+#define REV_IDENT wxString( "Official openSUSE Build" )+ REV_LONG + "|" + wxString( REV_LONG ).Left(6) + "]] of " + REV_TIME
#else
#define REV_IDENT (XO("No revision identifier was provided").Translation())
#endif
@@ -536,8 +536,8 @@ void AboutDialog::PopulateInformationPage( ShuttleGui & S )
<< XO("The Build")
<< wxT("</h3>\n<table>"); // start build info table
- // Current date
- AddBuildinfoRow(&informationStr, XO("Program build date:"), __TDATE__);
+ /*/ Current date
+ AddBuildinfoRow(&informationStr, XO("Program build date:"), __TDATE__);*/
AddBuildinfoRow(&informationStr, XO("Commit Id:"), REV_IDENT );
auto buildType =

View File

@ -0,0 +1,42 @@
diff --git a/lib-src/libnyquist/nyquist/cmupv/src/cmupv.c b/lib-src/libnyquist/nyquist/cmupv/src/cmupv.c
index 8c1c7b5a8..e05c28dd9 100644
--- a/lib-src/libnyquist/nyquist/cmupv/src/cmupv.c
+++ b/lib-src/libnyquist/nyquist/cmupv/src/cmupv.c
@@ -600,6 +600,7 @@ double pv_get_effective_pos(Phase_vocoder x)
return -(pv->ratio * pv->fftsize / 2.0);
} // I can't think of any other case.
assert(FALSE);
+ return(0);
}
diff --git a/lib-src/libnyquist/nyquist/xlisp/xlbfun.c b/lib-src/libnyquist/nyquist/xlisp/xlbfun.c
index 37ab60479..f434a674d 100644
--- a/lib-src/libnyquist/nyquist/xlisp/xlbfun.c
+++ b/lib-src/libnyquist/nyquist/xlisp/xlbfun.c
@@ -603,7 +603,10 @@ LVAL xcleanup(void)
{
xllastarg();
xlcleanup();
- /* compiler might (wrongly) complain there is no return value */
+ /* this point will never be reached because xlcleanup() does a
+ longjmp(). The return is added to avoid false positive
+ error messages from static analyzers and compilers */
+ return (NIL);
}
/* xtoplevel - special form 'top-level' */
diff --git a/lib-src/portsmf/allegro.cpp b/lib-src/portsmf/allegro.cpp
index a87117e38..d4717855a 100644
--- a/lib-src/portsmf/allegro.cpp
+++ b/lib-src/portsmf/allegro.cpp
@@ -2905,6 +2905,9 @@ Alg_event_ptr &Alg_seq::operator[](int i)
tr++;
}
assert(false); // out of bounds
+ Alg_event_ptr ab_track;
+ return ab_track; // Fix false positive error: control reaches end of non-void function [-Werror=return-type]
+ // Ignores the assert A gcc bug?
}
#pragma warning(default: 4715)

2
audacity-rpmlintrc Normal file
View File

@ -0,0 +1,2 @@
addFilter("lib-theme.* branding-requires-unversioned")
addFilter("lib-theme-resources.* branding-requires-specific-flavor")

2444
audacity.changes Normal file

File diff suppressed because it is too large Load Diff

219
audacity.spec Normal file
View File

@ -0,0 +1,219 @@
#
# spec file for package audacity
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%if 0%{?sle_version} == 150300 && 0%{?is_opensuse}
# Disable VST3 for Leap 15.3 due an old cmake
%bcond_with vst
%else
%bcond_without vst
%endif
Name: audacity
Version: 3.6.1
Release: 0
Summary: A Multi Track Digital Audio Editor
License: CC-BY-3.0 AND GPL-2.0-or-later AND GPL-3.0-only
Group: Productivity/Multimedia/Sound/Utilities
URL: http://audacityteam.org/
Source: https://github.com/audacity/audacity/archive/Audacity-%{version}.tar.gz
Source1: audacity-license-nyquist
Source2: audacity-rpmlintrc
Source3: vst3sdk-3.7.11_build_10.tar.xz
# PATCH-FIX-OPENSUSE audacity-no_buildstamp.patch davejplater@gmail.com -- Remove the buildstamp.
Patch0: audacity-no_buildstamp.patch
# PATCH-FIX-UPSTREAM audacity-no_return_in_nonvoid.patch - Fix false positive errors Two new gcc10 ones ignoring assert
Patch1: audacity-no_return_in_nonvoid.patch
# PATCH-FIX-OPENSUSE vst-system-path.patch - search fo vsts in /usr/lib64 in x86_64 and ARM system
Patch3: lib64-plugins-default-path.patch
BuildRequires: cmake >= 3.16
BuildRequires: desktop-file-utils
%if 0%{?suse_version} <= 1600
BuildRequires: gcc12
BuildRequires: gcc12-c++
%else
BuildRequires: gcc
BuildRequires: gcc-c++
%endif
#!BuildIgnore: gstreamer-0_10-plugins-base
BuildRequires: hicolor-icon-theme
BuildRequires: libmp3lame-devel
BuildRequires: portmidi-devel
BuildRequires: wxWidgets-3_2-nostl-devel
BuildRequires: pkgconfig(RapidJSON)
BuildRequires: pkgconfig(alsa)
BuildRequires: pkgconfig(expat)
BuildRequires: pkgconfig(flac) >= 1.3.1
BuildRequires: pkgconfig(flac++)
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(gtkmm-3.0)
BuildRequires: pkgconfig(id3tag)
BuildRequires: pkgconfig(id3tag)
BuildRequires: pkgconfig(jack)
BuildRequires: pkgconfig(libavcodec) >= 51.53
BuildRequires: pkgconfig(libavformat) >= 52.12
BuildRequires: pkgconfig(libavutil)
BuildRequires: pkgconfig(libjpeg)
BuildRequires: pkgconfig(libmpg123)
BuildRequires: pkgconfig(lilv-0) >= 0.24.6
BuildRequires: pkgconfig(lv2) >= 1.16.0
BuildRequires: pkgconfig(mad)
BuildRequires: pkgconfig(ogg)
BuildRequires: pkgconfig(opus)
BuildRequires: pkgconfig(opusfile)
BuildRequires: pkgconfig(portaudio-2.0)
BuildRequires: pkgconfig(serd-0) >= 0.30.2
BuildRequires: pkgconfig(shared-mime-info)
BuildRequires: pkgconfig(sndfile)
BuildRequires: pkgconfig(sord-0) >= 0.16.4
BuildRequires: pkgconfig(soundtouch)
BuildRequires: pkgconfig(soxr)
BuildRequires: pkgconfig(sqlite3)
BuildRequires: pkgconfig(sratom-0) >= 0.6.4
BuildRequires: pkgconfig(suil-0) >= 0.10.6
BuildRequires: pkgconfig(twolame)
BuildRequires: pkgconfig(uuid)
BuildRequires: pkgconfig(vamp-hostsdk)
BuildRequires: pkgconfig(vorbis)
BuildRequires: pkgconfig(vorbisenc)
BuildRequires: pkgconfig(vorbisfile)
BuildRequires: pkgconfig(wavpack)
BuildRequires: pkgconfig(xcb-cursor)
BuildRequires: pkgconfig(xcb-keysyms)
BuildRequires: pkgconfig(xcb-util)
BuildRequires: pkgconfig(xkbcommon-x11)
BuildRequires: pkgconfig(zlib)
# WARNING lilv-0 >= 0.24.6;lv2 >= 1.16.0;serd-0 >= 0.30.2;sord-0 >= 0.16.4;sratom-0 >= 0.6.4;suil-0 >= 0.10.6
# check these versions after every update otherwise audacity builds libsuil itself.
# 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
# Nothing provides libavutil without a suffix
Requires: ffmpeg
Requires: libmp3lame0
Provides: %{name}-plugins = %{version}
Obsoletes: %{name}-plugins <= 2.4.2
# pipewire-libjack-0_3 replaces jack and when audacity loads it
# causes a sigsev See https://bugzilla.suse.com/show_bug.cgi?id=1191585
#Conflicts: pipewire-libjack-0_3
#Doesn't build for 32 bit anymore
#error All sample block data is little endian...big endian not yet supported
ExcludeArch: i586 s390x
%description
Audacity is a program that manipulates digital audio wave forms.
In addition to multitrack recording capabilities with effects, it
imports and exports many sound file formats, including WAV, AIFF,
AU, IRCAM, MP, and Ogg Vorbis. Wave data larger than the available
physical memory size can be edited.
%lang_package
%prep
%setup -q -n %{name}-Audacity-%{version}
%patch -P 0 -p1
%patch -P 1 -p1
%ifarch x86_64 aarch64
%patch -P 3 -p1
%endif
cp -f %{SOURCE1} LICENSE_NYQUIST.txt
# Make sure we use the system versions.
rm -rf lib-src/{expat,libvamp,libsoxr,ffmpeg,lame}/
#Included in src/AboutDialog.cpp but not supplied
touch include/RevisionIdent.h
%if %{with vst}
tar xf %{SOURCE3} --strip-components=1 --one-top-level=vst3sdk
%endif
%build
%if 0%{?suse_version} <= 1600
export CC=gcc-12
export CXX=g++-12
%endif
if ! test -e %{_libdir}/pkgconfig/lame.pc
then
export PKG_CONFIG_PATH="`echo $PWD`:%{_libdir}/pkgconfig"
fi
export CFLAGS="%{optflags} -fno-strict-aliasing -ggdb $(wx-config --cflags)"
%cmake \
-DAUDACITY_REV_TIME=$(date -u -d "@${SOURCE_DATE_EPOCH}" "+%Y-%m-%dT%H:%M:%SZ") \
-DAUDACITY_REV_LONG=STRING:%{version} \
-DAUDACITY_BUILD_LEVEL=2 \
-DCMAKE_MODULE_LINKER_FLAGS:STRING="$(wx-config --libs)" \
-DCMAKE_SHARED_LINKER_FLAGS:STRING="$(wx-config --libs)" \
-Daudacity_conan_enabled=Off \
-Daudacity_has_networking:BOOL=Off \
-Daudacity_lib_preference:STRING=system \
-Duse_lame:STRING=system \
%if %{without vst}
-Daudacity_has_vst3=off \
%endif
-Daudacity_use_ffmpeg:STRING=loaded \
-DVST3_DEFAULT_INSTALL_PATH=%{_libdir}/vst3/
# Workaround for an old cmake in Leap 15.3
%if 0%{?sle_version} == 150300 && 0%{?is_opensuse}
export LD_LIBRARY_PATH=%{_builddir}/%{name}-Audacity-%{version}/build/utils/
%endif
%cmake_build
%install
%cmake_install
# E-mail wrote to feedback@audacityteam.org.
mkdir -p %{buildroot}%{_datadir}/icons/hicolor/48x48/mimetypes/
mv -f %{buildroot}%{_datadir}/pixmaps/gnome-mime-application-x-audacity-project.xpm \
%{buildroot}%{_datadir}/icons/hicolor/48x48/mimetypes/application-x-audacity-project.xpm
rm -rf %{buildroot}%{_datadir}/pixmaps/
rm -rf %{buildroot}%{_datadir}/doc
%find_lang %{name}
%post
ldconfig %{_libdir}/%{name}
%end
%postun
ldconfig %{_libdir}/%{name}
%end
%files
%defattr(-,root,root)
%doc README.md
%license LICENSE.txt LICENSE_NYQUIST.txt
%{_bindir}/%{name}
%{_libdir}/%{name}
%{_libdir}/%{name}/modules/mod-script-pipe.so
%{_datadir}/%{name}/
%{_datadir}/applications/%{name}.desktop
%{_datadir}/icons/hicolor/*
%{_datadir}/mime/packages/%{name}.xml
%{_mandir}/man?/%{name}.?%{?ext_man}
%dir %{_datadir}/metainfo/
%{_datadir}/metainfo/%{name}.appdata.xml
%files lang -f %{name}.lang
%defattr(-,root,root)
%changelog

View File

@ -0,0 +1,48 @@
diff -ur audacity-Audacity-3.4.0.orig/cmake-proxies/lv2/CMakeLists.txt audacity-Audacity-3.4.0/cmake-proxies/lv2/CMakeLists.txt
--- audacity-Audacity-3.4.0.orig/cmake-proxies/lv2/CMakeLists.txt 2023-11-02 04:14:25.000000000 -0700
+++ audacity-Audacity-3.4.0/cmake-proxies/lv2/CMakeLists.txt 2023-11-05 16:29:31.976019263 -0800
@@ -217,7 +217,7 @@
elseif( UNIX )
set( LILV_PATH_SEP ":" )
set( LILV_DIR_SEP "/" )
- set( LILV_DEFAULT_LV2_PATH "~/.lv2:/usr/lib/lv2:/usr/local/lib/lv2" )
+ set( LILV_DEFAULT_LV2_PATH "~/.lv2:/usr/lib64/lv2:/usr/local/lib/lv2" )
set( SUIL_MODULE_DIR "" )
set( SUIL_DIR_SEP "" )
diff -ur audacity-Audacity-3.4.0.orig/libraries/lib-vst/VSTEffectsModule.cpp audacity-Audacity-3.4.0/libraries/lib-vst/VSTEffectsModule.cpp
--- audacity-Audacity-3.4.0.orig/libraries/lib-vst/VSTEffectsModule.cpp 2023-11-02 04:14:25.000000000 -0700
+++ audacity-Audacity-3.4.0/libraries/lib-vst/VSTEffectsModule.cpp 2023-11-05 16:28:29.117199672 -0800
@@ -238,7 +238,7 @@
pathList.push_back(wxT(LIBDIR) wxT("/vst"));
// These are the defaults used by other hosts
- pathList.push_back(wxT("/usr/lib/vst"));
+ pathList.push_back(wxT("/usr/lib64/vst"));
pathList.push_back(wxT("/usr/local/lib/vst"));
pathList.push_back(wxGetHomeDir() + wxFILE_SEP_PATH + wxT(".vst"));
}
diff -ur audacity-Audacity-3.4.0.orig/libraries/lib-vst3/module_linux.cpp audacity-Audacity-3.4.0/libraries/lib-vst3/module_linux.cpp
--- audacity-Audacity-3.4.0.orig/libraries/lib-vst3/module_linux.cpp 2023-11-02 04:14:25.000000000 -0700
+++ audacity-Audacity-3.4.0/libraries/lib-vst3/module_linux.cpp 2023-11-05 16:27:31.894953308 -0800
@@ -278,7 +278,7 @@
* Application : /$APPFOLDER/vst3/
*/
- const auto systemPaths = {"/usr/lib/vst3/", "/usr/local/lib/vst3/"};
+ const auto systemPaths = {"/usr/lib64/vst3/", "/usr/local/lib/vst3/"};
PathList list;
if (auto homeDir = getenv ("HOME"))
diff -ur audacity-Audacity-3.4.0.orig/libraries/lib-vst3/VST3EffectsModule.cpp audacity-Audacity-3.4.0/libraries/lib-vst3/VST3EffectsModule.cpp
--- audacity-Audacity-3.4.0.orig/libraries/lib-vst3/VST3EffectsModule.cpp 2023-11-02 04:14:25.000000000 -0700
+++ audacity-Audacity-3.4.0/libraries/lib-vst3/VST3EffectsModule.cpp 2023-11-05 16:27:31.894953308 -0800
@@ -169,7 +169,7 @@
pathList.push_back("/Network/Library/Audio/Plug-ins/VST3/");
#elif __WXGTK__
pathList.push_back(wxGetHomeDir() + "/.vst3/");
- pathList.push_back("/usr/lib/vst3/");
+ pathList.push_back("/usr/lib64/vst3/");
pathList.push_back("/usr/local/lib/vst3/");
#endif

View File

@ -0,0 +1,9 @@
diff --git a/modules/mod-script-pipe/CMakeLists.txt b/modules/mod-script-pipe/CMakeLists.txt
index 5ee1862..feeb7b8 100644
--- a/modules/mod-script-pipe/CMakeLists.txt
+++ b/modules/mod-script-pipe/CMakeLists.txt
@@ -1,3 +1,4 @@
+set(CMAKE_SKIP_BUILD_RPATH ON)
set( SOURCES
PipeServer.cpp
ScripterCallback.cpp

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fb6927f90ba1ee5a7c63b39e8a0035dad366df8c3dae9d241f29d5819a1d04da
size 14795276