And added a python version that will be used on all platforms
when a suitable msgfmt isn't installed. (As long as python
is installed.)
Extracted all the Audacity specific functions from main cmake
list and moved them to their own module.
Rearrange the main cmake module a bit and misc. cleanup.
Visual Studio NuGet package handling was redone to correct a
chicken and egg situation. (See the nuget_package() function
in audacity/CMakeLists.txt.
Due to the change in NuGet handling, was finally able to make
the Audacity target dependent on several other targets. This
ensures the destination directory is populated correctly.
Library handling for system packages reworked to ensure the
correct libraries are used and to "workaround" an issue where
the libraries weren't being included in the link command...no
idea why. New way is better anyway.
Don't allow a system library for SBSMS since it seems we have
a unique (Audacity-only???) version.
Don't define wxDEBUG_LEVEL. It's not needed and causes duplicate
symbol warnings.
A couple of small changes to config files to remove libmad and
libsndfile warnings.
Do not include serdi.c and sordi.c in the LV2 build.
Fix handling of static Lame and linked FFmpeg libs.
Use cmake file() instead of gcc/awk to extract version information
from Audacity.h for the Mac Info.plist.
Use "cmake -E tar" to zip artifacts in github action.
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)