git: 6bf0135b415e - main - audio/audacity: Update to 3.1.0

From: Fernando Apesteguía <fernape_at_FreeBSD.org>
Date: Thu, 11 Nov 2021 14:22:18 UTC
The branch main has been updated by fernape:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6bf0135b415ee56a9e84ac82f80a7eb438fe497a

commit 6bf0135b415ee56a9e84ac82f80a7eb438fe497a
Author:     Jack <xxjack12xx@gmail.com>
AuthorDate: 2021-11-10 07:18:57 +0000
Commit:     Fernando Apesteguía <fernape@FreeBSD.org>
CommitDate: 2021-11-11 14:17:10 +0000

    audio/audacity: Update to 3.1.0
    
    ChangeLog: https://www.audacityteam.org/audacity-3-1-is-out-now/
    
    PR:     259565
    Reported by:    xxjack12xx@gmail.com (maintainer)
---
 audio/audacity/Makefile                            |   8 +-
 audio/audacity/distinfo                            |   6 +-
 .../files/patch-cmake-proxies_CMakeLists.txt       |  77 -------
 ...roxies_cmake-modules_AudacityDependencies.cmake | 227 ---------------------
 ...make-proxies_cmake-modules_Findlibmp3lame.cmake |  32 ---
 ...xies_cmake-modules_dependencies_wxwidgets.cmake |  14 --
 .../patch-cmake-proxies_libsoxr_CMakeLists.txt     |  10 +
 .../patch-lib-src_portmidi_porttime_ptlinux.c      |  42 ----
 .../files/patch-lib-src_portmixer_CMakeLists.txt   |  11 +
 audio/audacity/files/patch-src_AudioIO.cpp         |  34 ---
 audio/audacity/files/patch-src_CMakeLists.txt      |  11 +
 audio/audacity/files/patch-src_MIDIPlay.cpp        |  11 +
 audio/audacity/pkg-plist                           |  14 ++
 13 files changed, 64 insertions(+), 433 deletions(-)

diff --git a/audio/audacity/Makefile b/audio/audacity/Makefile
index c80de1d47163..8e774bd4d635 100644
--- a/audio/audacity/Makefile
+++ b/audio/audacity/Makefile
@@ -2,7 +2,7 @@
 
 PORTNAME=	audacity
 DISTVERSIONPREFIX=	Audacity-
-DISTVERSION=	3.0.5
+DISTVERSION=	3.1.0
 CATEGORIES=	audio
 
 MAINTAINER=	xxjack12xx@gmail.com
@@ -22,7 +22,7 @@ LIB_DEPENDS=	libasound.so:audio/alsa-lib \
 		libsqlite3.so:databases/sqlite3 \
 		libuuid.so:misc/e2fsprogs-libuuid
 
-USES=		cmake compiler:c++14-lang cpe desktop-file-utils gettext \
+USES=		cmake compiler:c++17-lang cpe desktop-file-utils gettext \
 		gnome libtool python:build pkgconfig shared-mime-info
 
 USE_GITHUB=	yes
@@ -43,14 +43,14 @@ CMAKE_ARGS=	-Daudacity_lib_preference:STRING=system \
 		-Daudacity_use_sqlite:STRING=system \
 		-Daudacity_use_wxwidgets:STRING=system \
 		-Daudacity_use_zlib:STRING=system
-CMAKE_ON=	audacity_obey_system_dependencies
+CMAKE_ON=	audacity_use_pa_oss audacity_obey_system_dependencies
 CMAKE_OFF=	audacity_has_networking audacity_has_updates_check \
 		audacity_use_pa_alsa audacity_use_pch
 
 OPTIONS_DEFINE=		DEBUG DOCS FFMPEG FLAC ID3TAG LADSPA LV2 MAD \
 			OGG SBSMS SOUNDTOUCH TWOLAME VAMP \
 			VORBIS VST
-OPTIONS_DEFAULT=	FFMPEG FLAC ID3TAG LV2 MAD OGG SBSMS \
+OPTIONS_DEFAULT=	FFMPEG FLAC ID3TAG LADSPA LV2 MAD OGG SBSMS \
 			SOUNDTOUCH TWOLAME VAMP VORBIS VST
 OPTIONS_EXCLUDE_i386=	SBSMS
 
diff --git a/audio/audacity/distinfo b/audio/audacity/distinfo
index c24f472d0d6c..e0b6cd9c5849 100644
--- a/audio/audacity/distinfo
+++ b/audio/audacity/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1633473095
-SHA256 (audacity-audacity-Audacity-3.0.5_GH0.tar.gz) = 4b94dcaf45545ebf0d9a44b71fbdc1251109100b465ff4d71860849b5ffcf525
-SIZE (audacity-audacity-Audacity-3.0.5_GH0.tar.gz) = 63066756
+TIMESTAMP = 1635645550
+SHA256 (audacity-audacity-Audacity-3.1.0_GH0.tar.gz) = f441fc6115277b407b7496e5009fd5066875ceccbe3a31635bbcbe5558d31828
+SIZE (audacity-audacity-Audacity-3.1.0_GH0.tar.gz) = 56424569
diff --git a/audio/audacity/files/patch-cmake-proxies_CMakeLists.txt b/audio/audacity/files/patch-cmake-proxies_CMakeLists.txt
deleted file mode 100644
index 61e936d9dfaa..000000000000
--- a/audio/audacity/files/patch-cmake-proxies_CMakeLists.txt
+++ /dev/null
@@ -1,77 +0,0 @@
---- cmake-proxies/CMakeLists.txt.orig	2021-08-18 10:21:37 UTC
-+++ cmake-proxies/CMakeLists.txt
-@@ -87,6 +87,7 @@ add_conan_lib(
-    REQUIRED
-    INTERFACE_NAME libmp3lame::libmp3lame
-    PKG_CONFIG "lame >= 3.100"
-+   ALLOW_FIND_PACKAGE
- )
- 
- add_conan_lib(
-@@ -105,24 +106,23 @@ add_conan_lib(
-    PKG_CONFIG "mad >= 0.15.1b"
- )
- 
--if( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
--   set( curl_ssl "darwinssl" )
--elseif( CMAKE_SYSTEM_NAME MATCHES "Windows" )
--   set( curl_ssl "schannel")
--else()
--   set ( curl_ssl "openssl" )
--endif ()
--
--add_conan_lib(
--   ThreadPool
--   threadpool/20140926
--   REQUIRED
--   ALWAYS_ALLOW_CONAN_FALLBACK
--)
--
- if( ${_OPT}has_networking )
-+   if( CMAKE_SYSTEM_NAME MATCHES "Darwin" )
-+      set( curl_ssl "darwinssl" )
-+   elseif( CMAKE_SYSTEM_NAME MATCHES "Windows" )
-+      set( curl_ssl "schannel")
-+   else()
-+      set ( curl_ssl "openssl" )
-+   endif ()
- 
-    add_conan_lib(
-+      ThreadPool
-+      threadpool/20140926
-+      REQUIRED
-+      ALWAYS_ALLOW_CONAN_FALLBACK
-+   )
-+
-+   add_conan_lib(
-       CURL
-       libcurl/7.75.0
-       REQUIRED
-@@ -148,11 +148,13 @@ if( NOT CMAKE_SYSTEM_NAME MATCHES "Darwin|Windows")
-    )
- endif()
- 
--add_conan_lib(
--   RapidJSON
--   rapidjson/1.1.0
--   REQUIRED
--)
-+if( ${_OPT}has_sentry_reporting )
-+   add_conan_lib(
-+      RapidJSON
-+      rapidjson/1.1.0
-+      REQUIRED
-+   )
-+endif()
- 
- set_conan_vars_to_parent()
- 
-@@ -161,7 +163,7 @@ set_conan_vars_to_parent()
- #       directory          option      symbol      req   chk   version
- addlib( libsndfile         sndfile     SNDFILE     YES   YES   "sndfile >= 1.0.28" )
- addlib( libsoxr            soxr        SOXR        YES   YES   "soxr >= 0.1.1" )
--addlib( portaudio-v19      portaudio   PORTAUDIO   YES   YES   "" )
-+addlib( portaudio-v19      portaudio   PORTAUDIO   YES   YES   "portaudio-2.0 >= 19" )
- addlib( sqlite             sqlite      SQLITE      YES   YES   "sqlite3 >= 3.32.0" )
- 
- # Optional libraries
diff --git a/audio/audacity/files/patch-cmake-proxies_cmake-modules_AudacityDependencies.cmake b/audio/audacity/files/patch-cmake-proxies_cmake-modules_AudacityDependencies.cmake
deleted file mode 100644
index aa56ade9b838..000000000000
--- a/audio/audacity/files/patch-cmake-proxies_cmake-modules_AudacityDependencies.cmake
+++ /dev/null
@@ -1,227 +0,0 @@
---- cmake-proxies/cmake-modules/AudacityDependencies.cmake.orig	2021-08-27 22:30:37 UTC
-+++ cmake-proxies/cmake-modules/AudacityDependencies.cmake
-@@ -1,11 +1,14 @@
- # Load Conan
--include( conan )
- 
--conan_add_remote(NAME audacity
--    URL https://artifactory.audacityteam.org/artifactory/api/conan/conan-local
--    VERIFY_SSL True
--)
-+if( ${_OPT}conan_enabled )
-+    include( conan )
- 
-+    conan_add_remote(NAME audacity
-+        URL https://artifactory.audacityteam.org/artifactory/api/conan/conan-local
-+        VERIFY_SSL True
-+    )
-+endif()
-+
- set( CONAN_BUILD_REQUIRES )
- set( CONAN_REQUIRES )
- set( CONAN_PACKAGE_OPTIONS )
-@@ -13,24 +16,30 @@ set( CONAN_ONLY_DEBUG_RELEASE )
- set( CONAN_CONFIG_OPTIONS )
- set( CONAN_RESOLVE_LIST )
- 
--# Add a Conan dependency
--# Example usage:
--# add_conan_lib( 
--#   wxWdidget 
--#   wxwidgets/3.1.3-audacity
--#   OPTION_NAME wxwidgets
--#   SYMBOL WXWIDGET
--#   REQUIRED 
--#   ALWAYS_ALLOW_CONAN_FALLBACK
--#   PKG_CONFIG "wxwidgets >= 3.1.3"
--#   FIND_PACKAGE_OPTIONS COMPONENTS adv base core html qa xml
--#   INTERFACE_NAME wxwidgets::wxwidgets
--#   HAS_ONLY_DEBUG_RELEASE
--#   CONAN_OPTIONS 
--#        wxwidgets:shared=True
--# )
-+#[[
-+Add a Conan dependency
- 
-+Example usage:
- 
-+add_conan_lib( 
-+  wxWdidget 
-+  wxwidgets/3.1.3-audacity
-+  OPTION_NAME wxwidgets
-+  SYMBOL WXWIDGET
-+  REQUIRED 
-+  ALWAYS_ALLOW_CONAN_FALLBACK
-+  PKG_CONFIG "wxwidgets >= 3.1.3"
-+  FIND_PACKAGE_OPTIONS COMPONENTS adv base core html qa xml
-+  INTERFACE_NAME wxwidgets::wxwidgets
-+  HAS_ONLY_DEBUG_RELEASE
-+  CONAN_OPTIONS 
-+       wxwidgets:shared=True
-+)
-+
-+PKG_CONFIG accepts a list of possible package configurations. 
-+add_conan_lib will iterate over it one by one until the library is found.
-+]]
-+
- function (add_conan_lib package conan_package_name )
-     # Extract the list of packages from the function args
-     list( SUBLIST ARGV 2 -1 options )
-@@ -54,6 +63,8 @@ function (add_conan_lib package conan_package_name )
-             set( list_mode on )
-             set( allow_find_package on )
-             set( current_var "find_package_options" )
-+        elseif ( opt STREQUAL "ALLOW_FIND_PACKAGE" )
-+            set ( allow_find_package on )
-         elseif ( opt STREQUAL "CONAN_OPTIONS" )
-             set( list_mode on )
-             set( current_var "conan_package_options" )
-@@ -93,14 +104,23 @@ function (add_conan_lib package conan_package_name )
- 
-     set( option_desc "local" )
- 
--    if( pkg_config_options OR allow_find_package )
-+    if( pkg_config_options OR allow_find_package OR NOT ${_OPT}conan_enabled )
-         set( sysopt "system" )
-         string( PREPEND option_desc "system (if available), " )
--        set( default "${${_OPT}lib_preference}" )
-+
-+        if( ${_OPT}conan_enabled )
-+            set( default "${${_OPT}lib_preference}" )
-+        else()
-+            set( default "system" )
-+        endif()
-     else()
-         set( default "local" )
-     endif()
- 
-+    if( ${_OPT}conan_enabled )
-+        set( localopt "local" )
-+    endif()
-+
-     if( NOT required )
-         set( reqopt "off" )
-         string( APPEND option_desc ", off" )
-@@ -109,7 +129,7 @@ function (add_conan_lib package conan_package_name )
-     cmd_option( ${option_name}
-                 "Use ${option_name_base} library [${option_desc}]"
-                 "${default}"
--                STRINGS ${sysopt} "local" ${reqopt}
-+                STRINGS ${sysopt} ${localopt} ${reqopt}
-     )
-     
-     # Early bail out
-@@ -129,26 +149,28 @@ function (add_conan_lib package conan_package_name )
-         return()
-     endif()
- 
--    if( ${option_name} STREQUAL "system" )
-+    if( ${option_name} STREQUAL "system" OR NOT ${_OPT}conan_enabled )
-         if( pkg_config_options )
--            pkg_check_modules( PKG_${package} ${pkg_config_options} )
-+            foreach(variant ${pkg_config_options})
-+                pkg_check_modules( PKG_${package} ${variant} )
- 
--            if( PKG_${package}_FOUND )
--                message( STATUS "Using '${package}' system library" )
--    
--                # Create the target interface library
--                add_library( ${interface_name} INTERFACE IMPORTED GLOBAL)
-+                if( PKG_${package}_FOUND )
-+                    message( STATUS "Using '${package}' system library" )
-         
--                # Retrieve the package information
--                get_package_interface( PKG_${package} )
--        
--                # And add it to our target
--                target_include_directories( ${interface_name} INTERFACE ${INCLUDES} )
--                target_link_libraries( ${interface_name} INTERFACE ${LIBRARIES} )
-+                    # Create the target interface library
-+                    add_library( ${interface_name} INTERFACE IMPORTED GLOBAL)
-+            
-+                    # Retrieve the package information
-+                    get_package_interface( PKG_${package} )
-+            
-+                    # And add it to our target
-+                    target_include_directories( ${interface_name} INTERFACE ${INCLUDES} )
-+                    target_link_libraries( ${interface_name} INTERFACE ${LIBRARIES} )
- 
--                message(STATUS "Added inteface ${interface_name} ${INCLUDES} ${LIBRARIES}")
--                return()
--            endif()
-+                    message(STATUS "Added inteface ${interface_name} ${INCLUDES} ${LIBRARIES}")
-+                    return()
-+                endif()
-+            endforeach()
-         endif()
- 
-         if( allow_find_package )
-@@ -160,7 +182,7 @@ function (add_conan_lib package conan_package_name )
-             endif()
-         endif()
- 
--        if( system_only )
-+        if( system_only OR NOT ${_OPT}conan_enabled )
-             message( FATAL_ERROR "Failed to find the system package ${package}" )
-         else()
-             set( ${option_name} "local" )
-@@ -237,34 +259,36 @@ function ( _conan_install build_type )
- endfunction()
- 
- macro( resolve_conan_dependencies )
--    message(STATUS 
--    "Executing Conan: \
--        REQUIRES ${CONAN_REQUIRES}
--        GENERATORS cmake_find_package_multi
--        BUILD_REQUIRES ${CONAN_BUILD_REQUIRES}
--        ${CONAN_CONFIG_OPTIONS}
--        OPTIONS ${CONAN_PACKAGE_OPTIONS}
--    ")
-+    if( ${_OPT}conan_enabled )
-+        message(STATUS 
-+        "Executing Conan: \
-+            REQUIRES ${CONAN_REQUIRES}
-+            GENERATORS cmake_find_package_multi
-+            BUILD_REQUIRES ${CONAN_BUILD_REQUIRES}
-+            ${CONAN_CONFIG_OPTIONS}
-+            OPTIONS ${CONAN_PACKAGE_OPTIONS}
-+        ")
- 
--    if(MSVC OR XCODE)
--        foreach(TYPE ${CMAKE_CONFIGURATION_TYPES})
--            _conan_install(${TYPE})
--        endforeach()
--    else()
--        _conan_install(${CMAKE_BUILD_TYPE})
--    endif()
-+        if(MSVC OR XCODE)
-+            foreach(TYPE ${CMAKE_CONFIGURATION_TYPES})
-+                _conan_install(${TYPE})
-+            endforeach()
-+        else()
-+            _conan_install(${CMAKE_BUILD_TYPE})
-+        endif()
- 
--    list( REMOVE_DUPLICATES CONAN_REQUIRES )
-+        list( REMOVE_DUPLICATES CONAN_REQUIRES )
- 
--    foreach( package ${CONAN_RESOLVE_LIST} )
--        message(STATUS "Resolving Conan library ${package}")
-+        foreach( package ${CONAN_RESOLVE_LIST} )
-+            message(STATUS "Resolving Conan library ${package}")
- 
--        find_package(${package} CONFIG)
-+            find_package(${package} CONFIG)
- 
--        if (NOT ${package}_FOUND)
--            message( FATAL_ERROR "Failed to find the conan package ${package}" )
--        endif()
--    endforeach()
-+            if (NOT ${package}_FOUND)
-+                message( FATAL_ERROR "Failed to find the conan package ${package}" )
-+            endif()
-+        endforeach()
-+    endif()
- 
-     file(GLOB dependency_helpers "${AUDACITY_MODULE_PATH}/dependencies/*.cmake")
- 
diff --git a/audio/audacity/files/patch-cmake-proxies_cmake-modules_Findlibmp3lame.cmake b/audio/audacity/files/patch-cmake-proxies_cmake-modules_Findlibmp3lame.cmake
deleted file mode 100644
index 04ba97036acb..000000000000
--- a/audio/audacity/files/patch-cmake-proxies_cmake-modules_Findlibmp3lame.cmake
+++ /dev/null
@@ -1,32 +0,0 @@
---- cmake-proxies/cmake-modules/Findlibmp3lame.cmake.orig	2021-08-27 22:30:58 UTC
-+++ cmake-proxies/cmake-modules/Findlibmp3lame.cmake
-@@ -0,0 +1,29 @@
-+#[[
-+A module to look for libmp3lame
-+]]
-+
-+if( NOT libmp3lame_FOUND )
-+   find_path( libmp3lame_INCLUDE_DIR lame/lame.h )
-+   find_library( libmp3lame_LIBRARIES NAMES mp3lame )
-+
-+   if( libmp3lame_INCLUDE_DIR AND libmp3lame_LIBRARIES )
-+      set( libmp3lame_FOUND Yes )
-+   endif()
-+
-+   if( libmp3lame_FOUND )
-+      if( NOT libmp3lame_FIND_QUIETLY )
-+         message( STATUS "Found lame: \n\tlibmp3lame_INCLUDE_DIR: ${libmp3lame_INCLUDE_DIR}\n\tlibmp3lame_LIBRARIES: ${libmp3lame_LIBRARIES}" )
-+      endif()
-+
-+      if( NOT TARGET libmp3lame::libmp3lame )
-+         add_library( libmp3lame::libmp3lame INTERFACE IMPORTED GLOBAL)
-+
-+         target_include_directories( libmp3lame::libmp3lame INTERFACE ${libmp3lame_INCLUDE_DIR} )
-+         target_link_libraries( libmp3lame::libmp3lame INTERFACE ${libmp3lame_LIBRARIES} )
-+      endif()
-+   else()
-+      if( libmp3lame_FIND_REQUIRED )
-+         message( FATAL_ERROR "Could not find libmp3lame")
-+      endif()
-+   endif()
-+endif()
diff --git a/audio/audacity/files/patch-cmake-proxies_cmake-modules_dependencies_wxwidgets.cmake b/audio/audacity/files/patch-cmake-proxies_cmake-modules_dependencies_wxwidgets.cmake
deleted file mode 100644
index 934cfad48eb6..000000000000
--- a/audio/audacity/files/patch-cmake-proxies_cmake-modules_dependencies_wxwidgets.cmake
+++ /dev/null
@@ -1,14 +0,0 @@
---- cmake-proxies/cmake-modules/dependencies/wxwidgets.cmake.orig	2021-08-27 06:00:39 UTC
-+++ cmake-proxies/cmake-modules/dependencies/wxwidgets.cmake
-@@ -1,4 +1,10 @@
--if( ${_OPT}use_wxwidgets STREQUAL "system" ) 
-+if( ${_OPT}use_wxwidgets STREQUAL "system" OR NOT ${_OPT}conan_enabled )
-+    # DV: find_package will be scoped, as FindwxWidgets.cmake is rather outdated.
-+    # Still - let's perform the sanity check first.
-+    if( NOT wxWidgets_FOUND )
-+        find_package( wxWidgets REQUIRED COMPONENTS adv base core html qa xml net )
-+    endif()
-+
-     if( NOT TARGET wxwidgets::wxwidgets )
-         add_library( wxwidgets::wxwidgets INTERFACE IMPORTED GLOBAL)
-     endif()
diff --git a/audio/audacity/files/patch-cmake-proxies_libsoxr_CMakeLists.txt b/audio/audacity/files/patch-cmake-proxies_libsoxr_CMakeLists.txt
new file mode 100644
index 000000000000..f2f862a88305
--- /dev/null
+++ b/audio/audacity/files/patch-cmake-proxies_libsoxr_CMakeLists.txt
@@ -0,0 +1,10 @@
+--- cmake-proxies/libsoxr/CMakeLists.txt.orig	2021-11-03 20:20:58 UTC
++++ cmake-proxies/libsoxr/CMakeLists.txt
+@@ -95,6 +95,4 @@ target_compile_definitions( ${TARGET} PRIVATE ${DEFINE
+ target_compile_options( ${TARGET} PRIVATE ${OPTIONS} )
+ target_include_directories( ${TARGET} PRIVATE ${INCLUDES} )
+ 
+-if( CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
+-   target_compile_options( ${TARGET} PRIVATE -fPIC )
+-endif()
++set_target_properties(${TARGET} PROPERTIES POSITION_INDEPENDENT_CODE On)
diff --git a/audio/audacity/files/patch-lib-src_portmidi_porttime_ptlinux.c b/audio/audacity/files/patch-lib-src_portmidi_porttime_ptlinux.c
deleted file mode 100644
index bb9884d5ece7..000000000000
--- a/audio/audacity/files/patch-lib-src_portmidi_porttime_ptlinux.c
+++ /dev/null
@@ -1,42 +0,0 @@
---- lib-src/portmidi/porttime/ptlinux.c.orig	2018-10-01 14:07:33 UTC
-+++ lib-src/portmidi/porttime/ptlinux.c
-@@ -31,14 +31,13 @@ CHANGE LOG
- #include "porttime.h"
- #include "sys/time.h"
- #include "sys/resource.h"
--#include "sys/timeb.h"
- #include "pthread.h"
- 
- #define TRUE 1
- #define FALSE 0
- 
- static int time_started_flag = FALSE;
--static struct timeb time_offset = {0, 0, 0, 0};
-+static struct timeval time_offset = {0};
- static pthread_t pt_thread_pid;
- static int pt_thread_created = FALSE;
- 
-@@ -79,7 +78,7 @@ static void *Pt_CallbackProc(void *p)
- PtError Pt_Start(int resolution, PtCallback *callback, void *userData)
- {
-     if (time_started_flag) return ptNoError;
--    ftime(&time_offset); /* need this set before process runs */
-+    gettimeofday(&time_offset, 0);
-     if (callback) {
-         int res;
-         pt_callback_parameters *parms = (pt_callback_parameters *) 
-@@ -121,10 +120,10 @@ int Pt_Started()
- PtTimestamp Pt_Time()
- {
-     long seconds, milliseconds;
--    struct timeb now;
--    ftime(&now);
--    seconds = now.time - time_offset.time;
--    milliseconds = now.millitm - time_offset.millitm;
-+    struct timeval now;
-+    gettimeofday(&now, 0);
-+    seconds = now.tv_sec - time_offset.tv_sec;
-+    milliseconds = (now.tv_usec / 1000) - (time_offset.tv_usec / 1000);
-     return seconds * 1000 + milliseconds;
- }
- 
diff --git a/audio/audacity/files/patch-lib-src_portmixer_CMakeLists.txt b/audio/audacity/files/patch-lib-src_portmixer_CMakeLists.txt
new file mode 100644
index 000000000000..aea2acd00b63
--- /dev/null
+++ b/audio/audacity/files/patch-lib-src_portmixer_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- lib-src/portmixer/CMakeLists.txt.orig	2021-11-03 20:22:02 UTC
++++ lib-src/portmixer/CMakeLists.txt
+@@ -130,7 +130,4 @@ target_sources( ${TARGET} PRIVATE ${SOURCES} )
+ target_compile_definitions( ${TARGET} PRIVATE ${DEFINES} )
+ target_include_directories( ${TARGET} PRIVATE ${INCLUDES} )
+ target_link_libraries( ${TARGET} PRIVATE ${LIBRARIES} )
+-
+-if( CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
+-   target_compile_options( ${TARGET} PRIVATE -fPIC )
+-endif()
++set_target_properties(${TARGET} PROPERTIES POSITION_INDEPENDENT_CODE On)
diff --git a/audio/audacity/files/patch-src_AudioIO.cpp b/audio/audacity/files/patch-src_AudioIO.cpp
deleted file mode 100644
index 7534cdee3a98..000000000000
--- a/audio/audacity/files/patch-src_AudioIO.cpp
+++ /dev/null
@@ -1,34 +0,0 @@
---- src/AudioIO.cpp.orig	2020-06-19 15:16:47 UTC
-+++ src/AudioIO.cpp
-@@ -490,7 +490,6 @@ time warp info and AudioIOListener and whether the pla
-    #define ROUND(x) (int) ((x)+0.5)
-    //#include <string.h>
- //   #include "../lib-src/portmidi/pm_common/portmidi.h"
--   #include "../lib-src/portaudio-v19/src/common/pa_util.h"
-    #include "NoteTrack.h"
- #endif
- 
-@@ -814,13 +813,22 @@ struct AudioIoCallback::ScrubState (private)
- // return the system time as a double
- static double streamStartTime = 0; // bias system time to small number
- 
-+// PaUtil_GetTime is an internal PortAudio function.  Unfortunately
-+// it's used twice in AudioIO.cpp.  It's a simple function so just
-+// provide the implementation here.
-+static double PaUtil_GetTime(void) {
-+   struct timespec tp;
-+   clock_gettime(CLOCK_REALTIME, &tp);
-+   return (double)(tp.tv_sec + tp.tv_nsec * 1e-9);
-+}
-+
- static double SystemTime(bool usingAlsa)
- {
- #ifdef __WXGTK__
-    if (usingAlsa) {
-       struct timespec now;
-       // CLOCK_MONOTONIC_RAW is unaffected by NTP or adj-time
--      clock_gettime(CLOCK_MONOTONIC_RAW, &now);
-+      clock_gettime(CLOCK_REALTIME, &now);
-       //return now.tv_sec + now.tv_nsec * 0.000000001;
-       return (now.tv_sec + now.tv_nsec * 0.000000001) - streamStartTime;
-    }
diff --git a/audio/audacity/files/patch-src_CMakeLists.txt b/audio/audacity/files/patch-src_CMakeLists.txt
new file mode 100644
index 000000000000..fcb46599dfa5
--- /dev/null
+++ b/audio/audacity/files/patch-src_CMakeLists.txt
@@ -0,0 +1,11 @@
+--- src/CMakeLists.txt.orig	2021-10-28 09:14:30 UTC
++++ src/CMakeLists.txt
+@@ -38,7 +38,7 @@ elseif( GIT_FOUND )
+ else()
+    # No Git installed and no version data is available.
+    # Generate an empty file and let AboutDialog do the rest
+-   file( TOUCH "${_PRVDIR}/RevisionIdent.h" )
++   file( WRITE "${_PRVDIR}/RevisionIdent.h" "\n" )
+ endif()
+ 
+ # Handle Audio Units option
diff --git a/audio/audacity/files/patch-src_MIDIPlay.cpp b/audio/audacity/files/patch-src_MIDIPlay.cpp
new file mode 100644
index 000000000000..4c6b68156c20
--- /dev/null
+++ b/audio/audacity/files/patch-src_MIDIPlay.cpp
@@ -0,0 +1,11 @@
+--- src/MIDIPlay.cpp.orig	2021-10-31 02:53:52 UTC
++++ src/MIDIPlay.cpp
+@@ -490,7 +490,7 @@ static double SystemTime(bool usingAlsa)
+    if (usingAlsa) {
+       struct timespec now;
+       // CLOCK_MONOTONIC_RAW is unaffected by NTP or adj-time
+-      clock_gettime(CLOCK_MONOTONIC_RAW, &now);
++      clock_gettime(CLOCK_REALTIME, &now);
+       //return now.tv_sec + now.tv_nsec * 0.000000001;
+       return (now.tv_sec + now.tv_nsec * 0.000000001) - streamStartTime;
+    }
diff --git a/audio/audacity/pkg-plist b/audio/audacity/pkg-plist
index f19977850dcd..ac957f71f05a 100644
--- a/audio/audacity/pkg-plist
+++ b/audio/audacity/pkg-plist
@@ -1,9 +1,23 @@
 audacity
 bin/audacity
+lib/audacity/lib-audio-devices.so
+lib/audacity/lib-basic-ui.so
+lib/audacity/lib-components.so
+lib/audacity/lib-exceptions.so
+lib/audacity/lib-ffmpeg-support.so
+lib/audacity/lib-files.so
+lib/audacity/lib-math.so
+lib/audacity/lib-preferences.so
+lib/audacity/lib-project-rate.so
+lib/audacity/lib-project.so
+lib/audacity/lib-registries.so
+lib/audacity/lib-screen-geometry.so
 lib/audacity/lib-string-utils.so
 lib/audacity/lib-strings.so
+lib/audacity/lib-theme.so
 lib/audacity/lib-utility.so
 lib/audacity/lib-uuid.so
+lib/audacity/lib-xml.so
 lib/audacity/modules/mod-script-pipe.so
 man/man1/audacity.1.gz
 share/applications/audacity.desktop