9 Saucedacity libraries and applied patches
Avery King edited this page 2021-12-03 21:16:59 -08:00

The following libraries listed are used in Saucedacity with the following applied patches. This information is taken from lib-src/audacity-patches.txt.

Note: it is likely that "submodulizing" these libraries will result in any previously applied Audacity patches being dropped. We cannot find these patches, meaning that we will have to use vanilla versions of these libraries (or "re-create" them where need be).

This page is a work in progress. There might be some errors

(lib)expat

Version: 2.2.9

Needs updating: yes

Patches: None

Status: N/A (added through Conan)

libflac

Version: 1.3.1

Needs updating: yes

** Patches**:

  • mac-asm-fixes.patch: Fixes build on macOS 10.4 (Intel) by creating an object format fro Mach-O.
    • We might be able to get rid of this due to its age, but we're unable to test this.
  • add-maintainer-mode.patch: Disable autotools rebuilds
  • bypass-constraint-problem.patch: Gets around problems with older GCC versions with Xcode.
    • This shouldn't be necessary anymore

Source (for submodule): https://github.com/xiph/flac

Status: In progress

  • Submodule added
  • All patches dropped (see above notice)
  • Fix required in order to use later versions (for 1.3.2+)

libid3tag

(Comes with libmad below)

Version: Unknown

Patches:

  • libid3tag-srcdir.patch: Adds srcdir handling

Other changes:

  • [-Wall foreign] added to AM_INIT_AUTOMAKE to avoid autoreconf failures
  • --no-verify removed from ltconfig to prevent config failures

Status: Not started

libmad

Version: 0.51.1 (beta)

Needs updating: No

Patches:

  • libmad-mp2-out-of-spec.patch: Import some forms of MP2 files that are theoretically out of spec but in practice work fine (msmeyer)
  • osx-universal-build.patch: Makes build work on OS X for universal binary by using compiler defined symbols for targets as well as hosts.
    • This should be dropped. This patch shouldn't be relevant anymore

Status: Not started

libnyquist

Version: r331 (r3.16+)

Needs updating: No

Patches: None.

libogg

Version: 1.3.1

Needs updating: Maybe? Can't find source.

Patches:

  • autotools.patch: Fixes all Autotools warnings. configure.in was renamed to configure.ac aafter applying the patch

  • AM_MAINTAINER_MODE has been called with "disable" in `configure.ac" to disable autotools rebuilds by default.

Status: Not started

libsndfile

Version: 1.0.29rc2+git4bdd741

Needs updating: Yes.

Patches: None / N/A

Status: In progress

  • Submodule added
  • Fix required in order to use later versions (for 1.0.30+)

libsoxr

Version: 0.1.1

Needs updating: Yes

Patches:

  • libsoxr/configure file: modified CMake params
  • add-make-check-support.patch: Add a check target for GNU Autotools integration
  • libsoxr-srcdir.patch: Adds srcdir handling

Status: Not yet started

libvamp

Version: 2.5

Needs updating: yes (latest version 2.9)

Patches:

  • fix-linkage-against-dl.patch: Fix linkage against dl for hostsdk library
  • fix-all-target.patch: Fix all target to not build disabled targets
  • libvamp-srcdir.patch: Adds srcdir handling

Status: Not yet started

libvorbis

Version: 1.3.3

Saucedacity Version: 1.3.7

Needs updating: Yes

Patches: autotools.patch (Fix all autotools warnings)

Status: Finished.

  • Updated to 1.3.7.
  • Needs testing, but so far so good.

lv2

The source tree has several other libraries merged into LV2.

Version: Varies (see lib-src/audacity-patches.txt for more info)

Needs updating: Maybe, haven't fully checked (see Version field above for more details)

Patches: N/A, multiple libraries are merged into LV2 in our source tree

Status: Not yet started

portaudio-v19

Version: commit 3ebfacc (made Fri Apr 26 16:48:28 2019)

Needs updating: maybe, but not a priority based on the snapshot date (further research is required, however)

Patches:

  • portmixer/portaudio.patch: Add features needed to make portmixer work
  • portaudio-srcdir.patch: Adds srcdir handling
  • wasapi-fix.patch: Fix for WASAPI hostapi that corrects incorrect reporting of stream open/running/closed state.
  • wasapi-loopback.patch: Add loopback devices to the WASAPI hostapi.
  • jack.patch: Add JACK support to Windows.
  • linkage.patch: Allows compilation as C++ with correct "C" linkage of one function
  • mmefix.patch: Bug 1969 - Windows: no monitored sound for 15 secs with software playthrough with default MME hos
  • vs2015.patch: Update for VS2015+
  • 16bit.patch: Bug 193 - Audacity can't record at > 16-bit under MME or Windows DirectSound
  • ringbuf.patch: pa_ringbuffer.c wasn't compiled by Travis, that broke the build

Status: Not yet started

portmidi

Version: SVN snapshot from 227

Needs updating: N/A

Patches: None

Status: Not yet started

portsmf

Version: SVN revision 227

Patches:

  • autotools.patch - Fix all autotools warnings
  • autotools-fix-make-dist.patch - Correct file lists to make dist target work.

Status: Not yet started

portmixer

Maintained by Audacity, not much told by audacity-patches.txt.

sbsms

Version: 2.2.0

Needs updating: maybe, can be updated to CMake build version (2.3.0?)

Patches: None(?)

Status: Not yet started

soundtouch

Version: 1.7.1

Needs updating: Yes, but see notes below

  • The latest version of SoundTouch is 2.3.1.
  • This is an entire major version forward. Quite some work might be required in order to update this library.

Patches:

  • autotools.patch - Fix all autotools warnings
  • AM_MAINTAINER_MODE([disable]) has been added to configure.ac to disable autotools rebuilds.

Status: Not yet started, likely will be deferred for lib-src rework

sqlite

Version: 3.32.3

Needs updating: Yes

Patches: N/A

Status: Not yet started

twolame

Version: 0.3.13

Needs updating: Yes

Patches:

  • fix-tests.patch - Terminate AM_TESTS_ENVIRONMENT by a semicolon
  • AM_MAINTAINER_MODE has been added to configure.ac to disable autotools rebuilds by default

Status: Not yet started