it seems that commit 4ea4c5a0acd0a16b08aa9d29490fb9ef6fda27d5 makes parole not build under Debian kFreeBSD (Debian userland with FreeBSD kernel). Actually looking at the patch, it looks wrong to me anyway.
As as far as I understand it, the point is that, under Linux, it might be possible to automatically installed the missing codecs (how?), which it's not on FreeBSD.
Problem is that nothing is done to handle cases other than Linux and FreeBSD, which means on all those other systems, the functions calls won't provide that argument at all (and I guess that's the case here).
I'm not sure how the automatic install can work on Linux (especially distributions) but I think the #else defined(__freebsd__) should be changed to just a #else?
That's a fair point. If there is no other alternatives, it might as well be #else.
The Plugins installer is done with native GStreamer code. Please see
"When GStreamer applications initiate plugin installation via gst_install_plugins_async() or gst_install_plugins_sync(), a pre-defined helper application will be called.
The exact path of the helper application to be called is set at compile time, usually by the ./configure script based on the install prefix. For a normal package build into the /usr prefix, this will usually default to /usr/libexec/gst-install-plugins-helper or /usr/lib/gst-install-plugins-helper.
Vendors/distros who want to support GStreamer plugin installation should either provide such a helper script/application or use the ./configure option --with-install-plugins-helper=/path/to/installer to make GStreamer call an installer of their own directly.
It is strongly recommended that vendors provide a small helper application as interlocutor to the real installer though, even more so if command line argument munging is required to transform the command line arguments passed by GStreamer to the helper application into arguments that are understood by the real installer.
The helper application path defined at compile time can be overriden at runtime by setting the GST_INSTALL_PLUGINS_HELPER environment variable. This can be useful for testing/debugging purposes."
Hmh, so what was the point to disable that under FreeBSD?
To me, it it'd make more sense to let this as a compile option, so people systems (/distros) where gstreamer is able to easy install would enable it, and other wouldn't (I guess that's also an information which could be provided by libgstreamer itself, but that might not be that easy).
According to the reporter of this bug, this functionality is unavailable in FreeBSD. I do not use BSD, so I am unable to confirm.
I've changed it to else. We can whitelist for platforms that are known to support this feature in gstreamer.
I'd suppose this is fixed. If you come up with a better solution/patch for FreeBSD we'd be happy to get it!