1
0
mirror of https://github.com/cookiengineer/audacity synced 2025-06-16 16:10:06 +02:00

16 Commits

Author SHA1 Message Date
Dmitry Vedenko
733cf89cff Adds curl to the list of system libraries
Fixes macOS build with system libcurl
2021-05-26 12:46:45 +03:00
Dmitry Vedenko
cf2054fac4 Updated the Docker image according with the code review 2021-05-24 06:53:53 -07:00
Dmitry Vedenko
8eb4654a9c Documentation is updated 2021-05-24 06:53:53 -07:00
Dmitry Vedenko
cd92807dc9 Fixes missing LF 2021-05-24 06:53:53 -07:00
Dmitry Vedenko
66a85bf97c Update the build documentation 2021-05-24 06:53:53 -07:00
Dmitry Vedenko
8aca9d02de Add the first Conan-based dependecies
add_conan_lib cmake function is defined, that allows to add a dependency using Conan with two possible system fallbacks:

1. pkg_check_modules is invoked, if `PGK_CONFIG ...` is present
2. find_package is invoked if `FIND_PACKAGE_OPTIONS` is present and `pkg_check_modules` has failed

If `ALWAYS_ALLOW_CONAN_FALLBACK` is present - `obey_system_dependencies` will be ignored for the package

Currently, the following dependencies are retrieved using Conan:

* zlib
* expat
* wxwidgets
* libmp3lame
* libid3tag
* libmad

The last three libraries are included in this commit, as they depend on zlib.
Properly pass **arch** and **os.version** to Conan
2021-05-24 06:53:53 -07:00
Dmitry Vedenko
576b7e66d2 Update min-macos to 10.9
Since XCode 10, Apple does not recommend building for macOS <10.9

Reason - 10.7 and 10.8 require libstdc++

We enforce libc++ 

```# Shouldn't cmake do this???
   string( APPEND CMAKE_CXX_FLAGS " -stdlib=libc++" )```

While this generally works, it makes the proper dependency management tricky.
 
Compiler message for the library support:

```
clang: warning: libstdc++ is deprecated; move to libc++ with a minimum deployment target of OS X 10.9 [-Wdeprecated]
    ld: library not found for -lstdc++
```
2021-05-24 06:53:53 -07:00
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
James Crook
313900e360
make install. 2021-03-19 20:18:29 +00:00
James Crook
de50f55f61 Update build instructions 2020-06-28 11:03:49 +01:00
Leland Lucius
5bd5b8af4c Update wx version in build instructions 2020-05-24 14:21:16 -05:00
James Crook
93544c7f72 Direct people building on Linux to our wiki
The updated build instructions using CMake are on wiki.
2020-04-26 11:04:18 +01:00
Mikhail Korbakov
e2ad0bbc2e We need libasound-dev to build on ubuntu 16.04 2018-11-04 17:56:00 +00:00
James Crook
5c5253e147
More to remove with -j4. 2018-09-29 19:49:27 +01:00
James Crook
9912fd6774
Remove -j4
The -j4 is a faster variation for multicore machines.
2018-09-29 19:43:45 +01:00
James Crook
83f1537e33 Update build instructions for 2.3.0 2018-09-15 22:22:14 +01:00