After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 630736 - Don't depend on Pulseaudio in "public" headers
Don't depend on Pulseaudio in "public" headers
Status: RESOLVED FIXED
Product: gnome-media
Classification: Deprecated
Component: gnome-volume-control
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome media maintainers
gnome media maintainers
Depends on: 629455
Blocks:
 
 
Reported: 2010-09-27 14:36 UTC by Bastien Nocera
Modified: 2010-10-19 14:58 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Don't depend on Pulseaudio in "public" headers (21.53 KB, patch)
2010-09-27 14:36 UTC, Bastien Nocera
none Details | Review
Don't depend on Pulseaudio in "public" headers (30.91 KB, patch)
2010-10-18 17:56 UTC, Bastien Nocera
committed Details | Review

Description Bastien Nocera 2010-09-27 14:36:12 UTC
For bug 629455 in gnome-shell
Comment 1 Bastien Nocera 2010-09-27 14:36:15 UTC
Created attachment 171211 [details] [review]
Don't depend on Pulseaudio in "public" headers

This makes it possible to copy portions of the gnome-volume-control
sources code and introspect it without requiring an introspected
PulseAudio dependency.
Comment 2 Marc-Andre Lureau 2010-09-27 14:52:34 UTC
Review of attachment 171211 [details] [review]:

ugh.. Can we have something more explicit and less intrusive? Adding one fake header instead of "#ifdef foopulseaudiofoo" in different files? It could also be a bit easier to maintain fake declarations in only one file.

#ifdef WITH_INTROSPECTION
# include "pulseaudio-fake.h"
#else
# include <pulse/pulseaudio.h>
#endif
Comment 3 Bastien Nocera 2010-10-18 17:56:42 UTC
Created attachment 172632 [details] [review]
Don't depend on Pulseaudio in "public" headers

This makes it possible to copy portions of the gnome-volume-control
sources code and introspect it without requiring an introspected
PulseAudio dependency.
Comment 4 Bastien Nocera 2010-10-18 17:57:56 UTC
(In reply to comment #2)
> Review of attachment 171211 [details] [review]:
> 
> ugh.. Can we have something more explicit and less intrusive? Adding one fake
> header instead of "#ifdef foopulseaudiofoo" in different files? It could also
> be a bit easier to maintain fake declarations in only one file.
> 
> #ifdef WITH_INTROSPECTION
> # include "pulseaudio-fake.h"
> #else
> # include <pulse/pulseaudio.h>
> #endif

It's not quite as straight-forward as that. You still need to include the real pulseaudio headers for the library to compile and work.

The latest is a bit cleaner, and doesn't depend on a weirdly named implementation #define.
Comment 5 Bastien Nocera 2010-10-18 18:03:36 UTC
Note for self, mention Giovanni's help with adding the necessary introspection annotations in the commit log.
Comment 6 Bastien Nocera 2010-10-19 14:58:07 UTC
Attachment 172632 [details] pushed as 8ad93e5 - Don't depend on Pulseaudio in "public" headers