audacity: update to 3.2.3 (#7752)

* audacity: update to 3.2.3

* audacity: fix crash on exit

* audacity: revert to relative rpath

* audacity: enable build

* audacity: build for secondary architecture
This commit is contained in:
davidkaroly
2023-01-20 18:33:10 +01:00
committed by GitHub
parent 23d98b3ae6
commit faaa75e66a
2 changed files with 96 additions and 33 deletions

View File

@@ -8,18 +8,18 @@ COPYRIGHT="1999-2022 by Audacity Team"
LICENSE="GNU GPL v2"
REVISION="1"
SOURCE_URI="https://github.com/audacity/audacity/archive/refs/tags/Audacity-$portVersion.tar.gz"
CHECKSUM_SHA256="290bd3023380ec3c737c3653e55f8afb2ad8f208a4a4d30bcb7662f0e5f4824b"
CHECKSUM_SHA256="79d441a6ff0d6084449d56b4883febe70c7d0d265e9c7fb9b1173b707b382ae5"
SOURCE_DIR="audacity-Audacity-$portVersion"
PATCHES="audacity-$portVersion.patchset"
ADDITIONAL_FILES="audacity.rdef.in"
ARCHITECTURES="?all !x86_gcc2"
SECONDARY_ARCHITECTURES="?x86"
ARCHITECTURES="all !x86_gcc2"
SECONDARY_ARCHITECTURES="x86"
PROVIDES="
audacity$secondaryArchSuffix = $portVersion
app:Audacity$secondaryArchSuffix = $portVersion
cmd:audacity$secondaryArchSuffix
app:Audacity = $portVersion
cmd:audacity
"
REQUIRES="
haiku$secondaryArchSuffix
@@ -94,7 +94,7 @@ BUILD_PREREQUIRES="
"
defineDebugInfoPackage audacity$secondaryArchSuffix \
$binDir/audacity$secondaryArchSuffix
$prefix/bin/audacity
BUILD()
{
@@ -114,8 +114,12 @@ INSTALL()
{
cmake --install build
if [ $effectiveTargetArchitecture = x86 ]; then
mv $binDir/* $prefix/bin/
fi
mkdir -p $appsDir
ln -s $binDir/audacity $appsDir/Audacity
ln -s $prefix/bin/audacity $appsDir/Audacity
local APP_SIGNATURE="application/x-vnd.audacity"
local MAJOR="`echo "$portVersion" | cut -d. -f1`"

View File

@@ -1,4 +1,4 @@
From e0f1c5542030ef5786dc41a9c6fe548b4095267d Mon Sep 17 00:00:00 2001
From 0c200809386739d974dbc6cd827c48008098046e Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Mon, 7 Nov 2022 14:27:23 +0100
Subject: nyquist: fix build on Haiku
@@ -34,7 +34,7 @@ index 3134849..8fd29ea 100644
2.37.3
From 1502ab195f721e2dc8f7b7842d29e392f3e36138 Mon Sep 17 00:00:00 2001
From 60c1ebe5032aaa78d27376499a2f12b2a1c9618c Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Mon, 7 Nov 2022 14:17:48 +0100
Subject: portmixer: fix build on Haiku
@@ -93,7 +93,7 @@ index 978f27b..eb44dce 100644
2.37.3
From e6629c49ead64d438a51aa72c0516d73a84fe163 Mon Sep 17 00:00:00 2001
From 4a66dc43c8969cb10d548356e5574c95c7b8b923 Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Mon, 7 Nov 2022 15:09:44 +0100
Subject: MIDIPlay: fix build on Haiku
@@ -116,7 +116,7 @@ index 620bb85..e1ee067 100644
2.37.3
From 00a1318d5b73df86dc698b3304ce5fa4ed471e61 Mon Sep 17 00:00:00 2001
From 25288800bf158b58cbae5ec0b33bf4366ccc783c Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Mon, 7 Nov 2022 15:06:14 +0100
Subject: fix GTK include paths and libs
@@ -140,30 +140,34 @@ index 4b35e89..e5a909c 100644
2.37.3
From 44acc2ec71900e62de075ce3683dae4cb82d2ad7 Mon Sep 17 00:00:00 2001
From 8dd717ad0ff233057c907e411c15ab1c4511bd15 Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Mon, 7 Nov 2022 14:33:10 +0100
Subject: adjust install rules for Haiku
Subject: Adjust install rules for Haiku
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9c1c7ba..032419e 100644
index 74db77d..326cd79 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -411,7 +411,7 @@ set( _EXEDIR "${_DEST}" )
# Setup RPATH handling
set( CMAKE_BUILD_RPATH "${_DEST}/${_PKGLIB}" )
set( CMAKE_BUILD_WITH_INSTALL_RPATH FALSE )
-set( CMAKE_INSTALL_RPATH "$ORIGIN/../${_PKGLIB}" )
+set( CMAKE_INSTALL_RPATH "${_PKGLIB}" )
set( CMAKE_INSTALL_RPATH_USE_LINK_PATH FALSE )
@@ -400,7 +400,11 @@ endif()
# Adjust them for the Mac
set( _DEST "${_DESTDIR}" )
set( INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" )
-set( _LIBDIR "${CMAKE_INSTALL_LIBDIR}" )
+if( CMAKE_SYSTEM_NAME MATCHES "Haiku" )
+ set( _LIBDIR "lib" )
+else()
+ set( _LIBDIR "${CMAKE_INSTALL_LIBDIR}" )
+endif()
set( _DATADIR "${CMAKE_INSTALL_DATADIR}" )
set( _PKGLIB "${_LIBDIR}/audacity" )
set( _PKGDATA "${_DATADIR}/audacity/" )
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 154da2d..903a2d1 100644
index a71cacd..129c33e 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1445,6 +1445,8 @@ elseif( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
@@ -1449,6 +1449,8 @@ elseif( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
POST_BUILD
)
endif()
@@ -172,7 +176,7 @@ index 154da2d..903a2d1 100644
else()
set_target_properties(
${TARGET}
@@ -1648,8 +1650,10 @@ else()
@@ -1652,8 +1654,10 @@ else()
install( CODE "set( _LIBDIR \"${_LIBDIR}\")" )
install( SCRIPT "${CMAKE_SOURCE_DIR}/scripts/build/linux/fix_rpath.cmake" )
@@ -189,7 +193,7 @@ index 154da2d..903a2d1 100644
2.37.3
From e353d83412cdeef4929d3cbb33f22a4d237a1f35 Mon Sep 17 00:00:00 2001
From 5662e1fc869c2cb3214aac4a956f869834636621 Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Thu, 17 Nov 2022 20:54:07 +0100
Subject: Adapt shm to Haiku
@@ -197,10 +201,10 @@ Subject: Adapt shm to Haiku
This implementation is based on the haikuports patch for postgresql and qt5/qt6
diff --git a/src/AudacityApp.cpp b/src/AudacityApp.cpp
index 98c4a4d..0e879bd 100644
index 4472ca0..b7fda96 100644
--- a/src/AudacityApp.cpp
+++ b/src/AudacityApp.cpp
@@ -1932,7 +1932,69 @@ bool AudacityApp::CreateSingleInstanceChecker(const wxString &dir)
@@ -1939,7 +1939,69 @@ bool AudacityApp::CreateSingleInstanceChecker(const wxString &dir)
#include <sys/ipc.h>
#include <sys/sem.h>
@@ -274,14 +278,14 @@ index 98c4a4d..0e879bd 100644
2.37.3
From 1540f41be31b359dd69413f6503ec5efacf85d57 Mon Sep 17 00:00:00 2001
From baffd3260661dd5ad9868f5bba2b7abc404ae8a2 Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Fri, 9 Dec 2022 16:36:39 +0100
Subject: Haiku: initialize XDG vars
diff --git a/src/AudacityApp.cpp b/src/AudacityApp.cpp
index 0e879bd..842ea72 100644
index b7fda96..aee17cd 100644
--- a/src/AudacityApp.cpp
+++ b/src/AudacityApp.cpp
@@ -58,6 +58,12 @@ It handles initialization and termination by subclassing wxApp.
@@ -297,7 +301,7 @@ index 0e879bd..842ea72 100644
// chmod, lstat, geteuid
#ifdef __UNIX__
#include <sys/types.h>
@@ -825,6 +831,30 @@ int main(int argc, char *argv[])
@@ -832,6 +838,30 @@ int main(int argc, char *argv[])
IMPLEMENT_APP_NO_MAIN(AudacityApp)
IMPLEMENT_WX_THEME_SUPPORT
@@ -328,7 +332,7 @@ index 0e879bd..842ea72 100644
int main(int argc, char *argv[])
{
wxDISABLE_DEBUG_SUPPORT();
@@ -837,6 +867,10 @@ int main(int argc, char *argv[])
@@ -844,6 +874,10 @@ int main(int argc, char *argv[])
stdout = freopen("/dev/null", "w", stdout);
stderr = freopen("/dev/null", "w", stderr);
@@ -343,7 +347,7 @@ index 0e879bd..842ea72 100644
2.37.3
From f4a7fefcafb4ade00ff91c28d726655e7c491ad7 Mon Sep 17 00:00:00 2001
From efcc756cdf3df7001c2f7ec93b182838837610dd Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Sat, 17 Dec 2022 23:26:49 +0100
Subject: adjust paths for Haiku
@@ -407,3 +411,58 @@ index 6cd5775..9078693 100644
--
2.37.3
From c08959b0c803ef2c9129064c7dbec88a16932525 Mon Sep 17 00:00:00 2001
From: David Karoly <david.karoly@outlook.com>
Date: Sun, 18 Dec 2022 22:39:34 +0100
Subject: shutdown hook for locales. fix crash on exit
diff --git a/libraries/lib-strings/Languages.cpp b/libraries/lib-strings/Languages.cpp
index 9078693..9249c66 100644
--- a/libraries/lib-strings/Languages.cpp
+++ b/libraries/lib-strings/Languages.cpp
@@ -321,6 +321,11 @@ void GetLanguages( FilePaths pathList,
static std::unique_ptr<wxLocale> sLocale;
static wxString sLocaleName;
+void UnsetLocale(void)
+{
+ sLocale.reset();
+}
+
wxString SetLang( const FilePaths &pathList, const wxString & lang )
{
wxString result = lang;
diff --git a/libraries/lib-strings/Languages.h b/libraries/lib-strings/Languages.h
index c6707ee..f545484 100644
--- a/libraries/lib-strings/Languages.h
+++ b/libraries/lib-strings/Languages.h
@@ -43,6 +43,9 @@ wxString GetSystemLanguageCode(const FilePaths &pathList);
STRINGS_API
wxString SetLang( const FilePaths &audacityPathList, const wxString & lang );
+STRINGS_API
+void UnsetLocale(void);
+
/*! @return the last language code that was set */
STRINGS_API
wxString GetLang();
diff --git a/src/AudacityApp.cpp b/src/AudacityApp.cpp
index aee17cd..0c5c4d8 100644
--- a/src/AudacityApp.cpp
+++ b/src/AudacityApp.cpp
@@ -878,7 +878,9 @@ int main(int argc, char *argv[])
initialize_xdg_paths();
#endif
- return wxEntry(argc, argv);
+ int res = wxEntry(argc, argv);
+ Languages::UnsetLocale();
+ return res;
}
#else
--
2.37.3