Bug 254598 - audio/audacity: Update to 3.0.0
Summary: audio/audacity: Update to 3.0.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Yuri Victorovich
URL: https://www.audacityteam.org/audacity...
Depends on:
Reported: 2021-03-27 09:01 UTC by Jack
Modified: 2021-04-18 04:07 UTC (History)
4 users (show)

See Also:
xxjack12xx: maintainer-feedback+

Patch to upgrade audacity from 2.4.2 to 3.0.0 (13.68 KB, text/plain)
2021-03-27 09:01 UTC, Jack
no flags Details
Patch to upgrade audacity to 3.0.0 (13.64 KB, patch)
2021-03-27 09:08 UTC, Jack
xxjack12xx: maintainer-approval+
Details | Diff
Patch using release tar to upgrade audacity to 3.0.0 (13.36 KB, patch)
2021-03-27 23:26 UTC, Jack
no flags Details | Diff
Upgrade audacity to 3.0.0 (14.79 KB, patch)
2021-04-13 06:12 UTC, Jack
xxjack12xx: maintainer-approval+
Details | Diff
Upgrade to audacity 3.0.0 (16.45 KB, patch)
2021-04-14 22:37 UTC, Jack
xxjack12xx: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Jack 2021-03-27 09:01:38 UTC
Created attachment 223631 [details]
Patch to upgrade audacity from 2.4.2 to 3.0.0

Upgrade audacity from 2.4.2 to 3.0.0
Comment 1 Jack 2021-03-27 09:08:46 UTC
Created attachment 223632 [details]
Patch to upgrade audacity to 3.0.0
Comment 2 daniel.engberg.lists 2021-03-27 12:09:49 UTC

Why is it moved to audio/audacity3 ?
Any reason why upstream source archive isn't used?

Best regards,
Comment 3 Neel Chauhan freebsd_committer 2021-03-27 21:25:48 UTC
(In reply to daniel.engberg.lists from comment #2)

If we fetch from GitHub, we usually use the hash or Git tag, considering the URL you gave was in fact a GitHub URL.
Comment 4 Jack 2021-03-27 21:33:35 UTC
(In reply to daniel.engberg.lists from comment #2)
It's just a diff, you can patch -p1 within audacity to apply the changes to audacity instead of audacity3
Comment 5 Neel Chauhan freebsd_committer 2021-03-27 21:46:33 UTC
I guess we can.
Comment 6 daniel.engberg.lists 2021-03-27 21:49:24 UTC
(In reply to Neel Chauhan from comment #3)
I'm asking because of two reasons

Porter's Handbook:
"If the distribution file comes from a specific commit or tag on GitHub for which there is no officially released file"....
Where it's hosted in that regard is irrelevant

~13Mbyte vs ~60Mbyte is quite a difference
Comment 7 Neel Chauhan freebsd_committer 2021-03-27 21:51:57 UTC
(In reply to daniel.engberg.lists from comment #6)
Thanks! If the maintainer isn't willing to write a new parch, I will use the tarball you listed.
Comment 8 Jack 2021-03-27 22:03:24 UTC
I'm fine with using the smaller tar if everything compiles fine. Should I make a new patch after testing it or will you be able to use the smaller tar without a new patch?
Comment 9 Neel Chauhan freebsd_committer 2021-03-27 22:33:09 UTC
You should.
Comment 10 Jack 2021-03-27 22:48:23 UTC
Ok I will test and create a new patch.
Comment 11 Jack 2021-03-27 23:26:10 UTC
Created attachment 223652 [details]
Patch using release tar to upgrade audacity to 3.0.0

Here's the new patch not using the USE_GITHUB knob
Comment 12 Neel Chauhan freebsd_committer 2021-03-27 23:50:59 UTC
I am unable to build this via poudriere.

FAILED: src/CMakeFiles/Audacity.dir/import/Import.cpp.o 
/usr/bin/c++ -DAudacity_EXPORTS -DBUILDING_AUDACITY -DCMAKE -DHAVE_LRINT -DHAVE_LRINTF -DHAVE_MLOCK -DWXINTL_NO_GETTEXT_MACRO -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D__WXGTK__ -Isrc/private -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/include -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/src -I/usr/local/lib/wx/include/gtk3-unicode-3.1 -I/usr/local/include/wx-3.1 -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/lib-src/lame -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/lib-src/portsmf/include -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/lib-src/libnyquist -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/lib-src/portmixer/include -I/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/lib-src/libsbsms/include -isystem /usr/local/include -isystem /usr/local/include/opus -isystem /usr/local/include/soundtouch -isystem /usr/local/include/glib-2.0 -isystem /usr/local/lib/glib-2.0/include -isystem /usr/local/include/gtk-3.0 -isystem /usr/local/include/pango-1.0 -isystem /usr/local/include/fribidi -isystem /usr/local/include/cairo -isystem /usr/local/include/pixman-1 -isystem /usr/local/include/freetype2 -isystem /usr/local/include/libdrm -isystem /usr/local/include/libpng16 -isystem /usr/local/include/harfbuzz -isystem /usr/local/include/gdk-pixbuf-2.0 -isystem /usr/local/include/gio-unix-2.0 -isystem /usr/local/include/libepoll-shim -isystem /usr/local/include/atk-1.0 -isystem /usr/local/include/at-spi2-atk/2.0 -isystem /usr/local/include/dbus-1.0 -isystem /usr/local/lib/dbus-1.0/include -isystem /usr/local/include/at-spi-2.0 -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -Wno-underaligned-exception-object -Werror=return-type -Werror=dangling-else -Werror=return-stack-address -D_THREAD_SAFE -pthread -std=gnu++14 -MD -MT src/CMakeFiles/Audacity.dir/import/Import.cpp.o -MF src/CMakeFiles/Audacity.dir/import/Import.cpp.o.d -o src/CMakeFiles/Audacity.dir/import/Import.cpp.o -c /wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/src/import/Import.cpp
/wrkdirs/usr/ports/audio/audacity/work/audacity-minsrc-3.0.0/src/import/Import.cpp:806:20: error: use of undeclared identifier 'FFmpegLibsInst'
1 error generated.
ninja: build stopped: subcommand failed.
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

make: stopped in /usr/ports/audio/audacity
build of audio/audacity | audacity-3.0.0 ended at Sat Mar 27 16:47:01 PDT 2021
build time: 00:03:01
!!! build failure encountered !!!

Full log: http://misc.neelc.org/audacity-3.0.0.log (I can't post it here since it's bigger than 1000 KB)
Comment 13 Jack 2021-03-28 00:18:08 UTC
(In reply to Neel Chauhan from comment #12)
Does the USE_GITHUB patch build? I'm building on FreeBSD 13 and that built fine.
Comment 14 Jack 2021-03-28 04:45:43 UTC
Also just discovered that the sqlite3 port needs to have DBPAGE enabled which isn't the default for it. How can we ensure that's enabled?
Comment 15 daniel.engberg.lists 2021-03-28 11:12:54 UTC
(In reply to Neel Chauhan from comment #12)
Assuming that it pulls in ffmpeg as a dep I think you might need this https://github.com/audacity/audacity/pull/741

Regarding DBPAGE there's no framework for detecting options being set as far as I know. From what I can tell it seems like it's enabled by default by upstream? L371 in Makefile.in (sqlite3)
Comment 16 Jack 2021-03-29 07:17:36 UTC
(In reply to daniel.engberg.lists from comment #15)
But the sqlite3 port's default doesn't have DBPAGE enabled by default.

I'll check into the ffmpeg.
Comment 17 Jack 2021-04-12 04:48:35 UTC
(In reply to Neel Chauhan from comment #12)
It looks like ffmpeg is required in 3.0.0, emailed upstream to see if we need to add a hard dependency on ffmpeg or if we can get around it.
Comment 18 daniel.engberg.lists 2021-04-12 08:45:00 UTC
If that's the case, please drop redundant libraries
Comment 19 Jack 2021-04-13 05:06:24 UTC
It looks like the ffmpeg issue will be fixed in 3.0.2. I'll create a patch to make it work in 3.0.0 for now.
Comment 20 Jack 2021-04-13 06:12:07 UTC
Created attachment 224073 [details]
Upgrade audacity to 3.0.0

New patch includes upstream fixes for disabled ffmpeg compilation error.
Comment 21 Jack 2021-04-14 22:37:50 UTC
Created attachment 224120 [details]
Upgrade to audacity 3.0.0

Updated patch removing uneeded patches.
Comment 22 Yuri Victorovich freebsd_committer 2021-04-18 04:07:06 UTC
Committed with some changes.

Thank you for the update.
Comment 23 commit-hook freebsd_committer 2021-04-18 04:07:32 UTC
A commit in branch main references this bug:

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

commit a2c5d69385fe0d8c5a666d570f5b464ca302d37d
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2021-04-18 04:02:53 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2021-04-18 04:06:08 +0000

    audio/audacity: Update 2.4.2 -> 3.0.0

    I also changed the default of LADSPA to OFF and LV2 to ON because LV2 is a new generation of LADSPA.

    PR:             254598
    Submitted by:   xxjack12xx@gmail.com (maintainer)

 audio/audacity/Makefile                            | 26 +++++-----
 audio/audacity/distinfo                            |  6 +--
 .../files/patch-cmake-proxies_CMakeLists.txt       |  4 +-
 ...ch-cmake-proxies_wxWidgets_CMakeLists.txt (new) | 20 ++++++++
 .../patch-lib-src_libnyquist_nyquist_cmt_cext.h    |  2 +-
 ...yquist_nyquist_nyqstk_include_FileRead.h (gone) | 10 ----
 ...-lib-src_libnyquist_nyquist_xlisp_xlfio.c (new) | 12 +++++
 .../patch-lib-src_libnyquist_nyquist_xlisp_xlisp.h |  6 +--
 .../files/patch-lib-src_portsmf_allegro.h (gone)   | 10 ----
 audio/audacity/files/patch-src_AudioIO.cpp         |  4 +-
 audio/audacity/files/patch-src_FFmpeg.h (gone)     | 29 -----------
 .../files/patch-src_ProjectSerializer.cpp (new)    | 60 ++++++++++++++++++++++
 .../files/patch-src_import_Import.cpp (new)        | 16 ++++++
 .../files/patch-src_widgets_FileConfig.cpp (new)   | 11 ++++
 .../files/patch-src_widgets_Grid.cpp (new)         | 11 ++++
 audio/audacity/pkg-plist                           |  5 +-
 16 files changed, 157 insertions(+), 75 deletions(-)