Open unbadfish opened 1 year ago
IMHO it would be a good idea to focus on using the CMake build system on all supported platforms. You'd gain in clarity and build efficiency (no more libtool, easy use of an out-of-source build directory, ...).
Thank you for raising this. We would love the CMake build documentation to be correct. I have been asking the CMake contributors to do this for quite some time now.
Related #662 #518 #486 #745
@RJVB we're not going to carry a required dependency on CMake. ./configure; make
is the default where available -- that's much more user-friendly.
Here is the doxygen source for the current instructions if anyone would like to improve it:
https://github.com/PortAudio/portaudio/blob/master/doc/src/tutorial/compile_cmake.dox
On Friday May 19 2023 16:33:28 Ross Bencina wrote:
@RJVB we're not going to carry a required dependency on CMake.
./configure; make
is the default where available -- that's much more user-friendly.
I disagree. The automake/autoconf build system has probably about as many dependencies as CMake (arguments which are largely moot because both systems will be available through the distribution), it's a dinosaur that's being dropped left and right and comes with significant runtime overhead (due to the libtool wrapper script). And that's not even mentioning the waste of resources to maintain 2 build systems.
User-friendly ... what are the odds that said users are developers who'd prefer to have a separate build tree (in or out of tree) and a build system defined in human-readable code that reconfigures itself automatically and efficiently when you tweak one of the build description files? And that, incidentally, is also integrated with a number of good IDEs.
The current document is TOO far away from clear. My practice below successfully install and use portaudio in my project, without using mingw-w64-x86_64-portaudio package provided by pacman.
src/
,include/
, etc.src/
,include/
, etc. after building, and should have nothing before compilebuild/
, andCMakeLists.txt
pa_devs.c
into{project_place}/
mingw-w64-x86_64-portaudio
:make
, and runmake install
{project_place}/CMakeLists.txt
add_definitions("-Wall -g")
to cmakelistI will close my issue as fixed
748