Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

autotools setup only allows building with one job at a time when building cpp bindings #540

Open
dvzrv opened this issue Apr 6, 2021 · 2 comments
Labels
bindings-cpp C++ bindings in /bindings/cpp build-autoconf Autoconf build system P3 Priority: Normal

Comments

@dvzrv
Copy link

dvzrv commented Apr 6, 2021

Describe the bug
When building 19.7.0 as a package for Arch Linux I used the autotools setup and noticed, that the build fails with multiple jobs (our build system automatically sets the jobs for make according to a global MAKEFLAGS (in my case it's -j24).

The build only fails if the C++ bindings are built (i.e. using ./configure --enable-cxx). This issue is also present with 19.6.0.

To be able to build I have to pin the number of jobs to one (i.e. -j1).

To Reproduce
Steps to reproduce the behavior. Include code if applicable.

  cd "${pkgname}-${pkgver}"
  (
  cd bindings/cpp
  autoreconf -fiv
  )
  autoreconf -fiv

  ./configure --prefix=/usr \
              --enable-cxx
  make

Expected behavior
The build works with multiple jobs (e.g. facilitating as many CPU cores as there are available).

Actual behavior
The build fails and does not give a specific error message as to why:
Build log:
portaudio-19.7.0-build.log

Desktop (please complete the following information):

  • OS: Arch Linux
  • OS Version: n/a
  • PortAudio version: 19.7.0
  • If Windows or Linux, which Host API (e.g. WASAPI): n/a

Additional context
Being able to build in parallel (with multiple jobs) enables for faster builds.
Concurrency issues in the build usually point at e.g. the same files being used by multiple (sub)targets.

archlinux-github pushed a commit to archlinux/svntogit-packages that referenced this issue Apr 6, 2021
Switch to new github upstream for url and sources.
Run autoreconf -fiv in prepare().
Open upstream ticket about breaking build on multiple jobs:
PortAudio/portaudio#540

git-svn-id: file:///srv/repos/svn-packages/svn@411666 eb2447ed-0c53-47e4-bac8-5bc4a241df78
archlinux-github pushed a commit to archlinux/svntogit-packages that referenced this issue Apr 6, 2021
Switch to new github upstream for url and sources.
Run autoreconf -fiv in prepare().
Open upstream ticket about breaking build on multiple jobs:
PortAudio/portaudio#540

git-svn-id: file:///srv/repos/svn-packages/svn@411666 eb2447ed-0c53-47e4-bac8-5bc4a241df78
@RossBencina
Copy link
Collaborator

We're going to move C++ bindings to their own repo #548

@dvzrv
Copy link
Author

dvzrv commented Apr 15, 2021

@RossBencina cool! Please feel free to move the issues relevant for them to that repository then (unless the move fixes the build system related issues). Thanks! :)

@RossBencina RossBencina added bindings-cpp C++ bindings in /bindings/cpp build-autoconf Autoconf build system P3 Priority: Normal labels Mar 10, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bindings-cpp C++ bindings in /bindings/cpp build-autoconf Autoconf build system P3 Priority: Normal
Development

No branches or pull requests

2 participants