mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-02 16:49:41 +02:00
When doing the final link of Audacity executable on Cygwin, many errors like this one were printed on the console: ld: ../lib/audacity/libportmidi.a(portmidi.c.o):portmidi.c:(.text+0x3f): undefined reference to `pm_alloc' This happened because some files were missing since Cygwin name was not included together with other unix platforms.
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. We don't need the proxies for our own 'lib_src' such as mod-script-pipe and FileDialog, where we 'own' the CMakeList.txt file.