1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-04-30 23:59:41 +02:00
audacity/cmake-proxies
Dmitry Vedenko 9c8185545d Adds an environment to check, how well Linux builds with system packages
A special mode `audacity_obey_system_dependencies` is added, so the build will fail if we could not build against a system package for some reason. 

The following packages are marked for the local build now:

* **wxWidgets**: Ubuntu lacks support for 3.1.3. We can't build against 3.0 branch.
* **portaudio**: there are issues, that prevent using a system version of portaudio.
* **sqlite3**: Ubuntu package is very dated; we care about the performance and stability.
* **nyquist**: Ubuntu has no package available.
* **vamp**: Ubuntu has no development package available.
* **portmixer**: Ubuntu has no package available.
* **sbsms**: Ubuntu package is very dated; we care about the performance and stability.

We use docker to create a clean build environment. Currently, `pkg-config` is used to locate the system libraries. There are few issues with `pkg-config` on Ubuntu:

* It does not work with `lame` and `portmidi`.
* The packaged files for `id3tag` and `mad` have wrong version.
We fix such cases by copying the 
into `/usr/local/lib`.
2021-05-24 06:53:53 -07:00
..
2020-02-12 01:05:51 -06:00
2020-05-26 13:36:07 -05:00
2020-02-23 03:57:31 -06:00
2021-02-01 10:12:06 -06:00
2020-09-23 22:47:19 -05:00
2020-05-26 13:36:07 -05:00
2018-04-01 09:23:11 +01:00
2020-02-19 10:53:50 -06:00

CMake requires that its CMakeList.txt files follow the directory structure
of the projects.  However, for Audacity this would cause collision with
existing CMakeList.txt files that e.g. expat and libsoxr already provide.

Our solution is to have this proxy directory for lib-src to hold our version of
the CMakeList.txt files.  We did try bundling several libraries under one
CMakeList.txt without using subdirectories.  However, we were then fighting 
CMake too much - and did not have a clean separation of information between sub 
projects.