The default is to use the system one if found. If the
WXWIN environment variable is set and points to a valid
wxWidgets tree, that will be used. Otherwise, it will
search the platform specific locations.
You can use a local library instead with:
cmake -Duse_system_wxwigets=no ...
In this case it will look for the WXWIN environment variable
and use that or it will download the Audacity specific wxWidgets
source. In both cases, wxWidgets will be built as part of the
Audacity project.
It's still has some work, but it successfully builds on
all 3 main platforms. Some of the outstanding items
include:
Install target testing (mostly important for Linux)
CMakeList clean up and comments
Debug and Release build verification
Audit of compile/link options
Need a Mac signed and notarized build
(and probably more)
The same story as libexpat's one--native CMakeLists.txt does its job better
than the proxy. Also it seems to be able to otionally build with ASIO support
on Windows. And it successfully builds on linux, freebsd and osx.
It appeared to be usable on Windows but still wasn't flexible. I've
updated it with commands based on the autotools configs and now
filedialog can be built on linux, macos and freebsd using cmake.
cmake-proxies/expat/CMakeLists.txt seems to make more problems than it
solves. But the native one appears doing its job well on multiple
platforms. Tested on Windows, OSX, Linux and FreeBSD.
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Author: Vitaliy Kirsanov <krokoziabla@yandex-team.ru>
# Date: Thu Mar 14 19:03:29 2019 +0300
#
# On branch tmp
# Your branch is up to date with 'my/tmp'.
#
# Changes to be committed:
# modified: cmake-proxies/CMakeLists.txt
# deleted: cmake-proxies/expat/CMakeLists.txt
# modified: lib-src/expat/CMakeLists.txt
#
# Changes not staged for commit:
# modified: lib-src/expat/CMakeLists.txt
#
Previously lib-src that we controlled had their cmake files with them. This is clearer.
Also added place holders for help and locale.
Also enabled libvorbis and soundtouch and disabled portburn.
https://github.com/sakra/cotire
Currently we only use it for precompiled headers for Audacity src.
There is a 'unity' build, but it needs work by us to fix it for duplicate
definition.
These now all appear in the MSVC project.
Currently only FileDialog, Nyquist, mod-script-pipe compile and link, and Audacity compiles.
Still to set include directories and flags for most of the libs.