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

Enable optional SDK mode (install files required to build apps with apulse) #93

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

bircoph
Copy link

@bircoph bircoph commented Sep 23, 2018

Hi!

These patches provide an optional SDK mode which allows to use apulse as PulseAudio replacement to build and run applications without PA installed. I'm well aware that apulse was not designed to be a drop-in replacement of PA, but for applications it already supports this mode will allow to compile and use such applications without building and installing PA. This is especially important for users building software form source, e.g. Gentoo. Of course in this mode PA and apulse can't be installed at the same time.

In this mode:

  • PA headers are installed
  • pkg-config files are generated and installed
  • shared libraries are installed to the standard libdir (/usr/lib{,32,64}) depending on a distro and an arch.
  • apulse wrapper is disabled, since libraries are in their standard paths now.

It can be enabled with -DINSTALL_SDK and is disabled by default.

Install PA headers on demand to build apps without pulseaudio
installed.
Add pkg-config files generation suitable for apulse.
Use LIBDIR for APULSEPATH generation.
In SDK mode apulse is not parallel installable with PulseAudio, but
is a semi drop-in replacement for it, so install to libdir for
higher compatibility (not every PA client uses pkg-config).
1. APULSE_SEARCH_PATHS:
  - set after APULSEPATH;
  - add CMAKE_INSTALL_PREFIX.
2. Do not install apulse man page when wrapper is not installed.
@i-rinat
Copy link
Owner

i-rinat commented Oct 12, 2018

Sorry for a huge delay. I tried to think about such SDK mode multiple times, but could not persuade myself that it's a good decision. Still think that's not.

I'm not going to merge it.

@Oleh-Kravchenko
Copy link

Oleh-Kravchenko commented Apr 21, 2021

@bircoph,
SDK mode breaks input audio in Slack:

[04/21/21, 13:39:49:709] info: [FREE-WILLY-AV] (T053GDZ6J) Chime audio video session started 
[04/21/21, 13:39:49:714] info: [DEVICES] (T053GDZ6J) No audio input device found 
[04/21/21, 13:39:49:714] info: [DEVICES] (T053GDZ6J) Selected audio output device id: Default, deviceId: default, deviceLabel: Default 

@bircoph
Copy link
Author

bircoph commented Apr 21, 2021

SDK mode breaks input audio in Slack:

More details please, including full build logs of both apps.
WTF is slack? Does it work for you without SDK?

SDK is needed to build applications without pulseaudio (headers, devel — varies on the distribution). It should be no difference for pre-built applications.

@Oleh-Kravchenko
Copy link

Oleh-Kravchenko commented Apr 22, 2021

@bircoph,
Please use this command to learn more about slack:

emerge -s net-im/slack

Yes, it works for me without SDK.

It should be no difference for pre-built applications.

But there is.

@bircoph
Copy link
Author

bircoph commented Apr 30, 2021

@bircoph,
Please use this command to learn more about slack:

emerge -s net-im/slack

This is proprietary software, I can't fix it and will not install it due to license restrictions.

Yes, it works for me without SDK.

Patches are welcome.

@Oleh-Kravchenko
Copy link

Oleh-Kravchenko commented May 14, 2021

@bircoph,
Please use this command to learn more about slack:

emerge -s net-im/slack

This is proprietary software, I can't fix it and will not install it due to license restrictions.

And you shouldn't :)

Yes, it works for me without SDK.

Patches are welcome.

Here where you should appear with the fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants