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 796947 - meson: review build options in gst-plugins-base
meson: review build options in gst-plugins-base
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other All
: Normal enhancement
: 1.15.1
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2018-08-12 12:50 UTC by Tim-Philipp Müller
Modified: 2018-08-18 11:43 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Tim-Philipp Müller 2018-08-12 12:50:34 UTC
These are left, just putting them here for now:

> --disable-external   Disable building of plug-ins with external deps

Drop for now. Sufficiently handled by the meson switch to disable all auto options by default and selectively enable what's desired. Can add it back once we have some kind of feature group thing in Meson. It's only for convenience anyway.

> --disable-gl         Disable gl elements: gl

This is about the plugin. Can easily be added I think. Should we rename the plugin subdir and option to "opengl" perhaps? Do we also want a switch to disable the entire OpenGL support in GStreamer (i.e. gst-libs/gst/gl) ? Should it be the same switch or a different one?

> --enable-png         Enable libpng support [default=auto]
> --enable-jpeg        Enable libjpeg support [default=auto]

These are used by the OpenGL plugin only. Depends on decisions above. Trivial to do in any case.

> --disable-zlib       Disable zlib support for ID3 parsing in libgsttag

Trivial to add this, but maybe the code should just be ported to g_zlib_decompressor() and the switch/zlib dep dropped.

> --with-default-audiosink  specify default audio sink
> --with-default-audiosrc   specify default audio source
> --with-default-videosink  specify default video sink
> --with-default-videosrc   specify default video source
> --with-default-visualizer specify default visualizer

videosrc, audiosrc, visualizer are not even used as far as I can tell. I think we should just drop these and see if anyone actually use them. Currently the two sinks just default to auto*sink.

> --with-jpeg-mmx, path to MMX'ified JPEG library

Not sure if this still makes sense? I think we should just depend on / recommend libjpeg-turbo and pick up our libjpeg via the pkg-config file.
Comment 1 Nirbheek Chauhan 2018-08-12 12:55:54 UTC
(In reply to Tim-Philipp Müller from comment #0)
> > --disable-zlib       Disable zlib support for ID3 parsing in libgsttag
> 
> Trivial to add this, but maybe the code should just be ported to
> g_zlib_decompressor() and the switch/zlib dep dropped.
> 

I didn't add this on purpose, because zlib is an unconditional dependency of glib, so it will always be present. Is there a reason why someone would want to disable this explicitly?


> > --with-jpeg-mmx, path to MMX'ified JPEG library
> 
> Not sure if this still makes sense? I think we should just depend on /
> recommend libjpeg-turbo and pick up our libjpeg via the pkg-config file.

Yeah, I think this is not useful anymore.
Comment 2 Matthew Waters (ystreet00) 2018-08-13 04:34:18 UTC
(In reply to Tim-Philipp Müller from comment #0)
> > --disable-gl         Disable gl elements: gl
> 
> This is about the plugin. Can easily be added I think. Should we rename the
> plugin subdir and option to "opengl" perhaps? Do we also want a switch to
> disable the entire OpenGL support in GStreamer (i.e. gst-libs/gst/gl) ?
> Should it be the same switch or a different one?

If it makes it eaiser we can rename the element subdir to opengl.  Unless there's a real need to disable the library and the elements separately, I'd put them under the same option.
Comment 3 Tim-Philipp Müller 2018-08-13 08:42:44 UTC
If we use the same option for both there's no need to rename. I think I'm leaning in that direction too (one option for both, if someone needs to tweak it separately I'm sure they'll let us know).
Comment 4 Tim-Philipp Müller 2018-08-16 10:14:04 UTC
gl + jpeg done:

commit cec90050b068bacfee883a38d4ccf477c646f98d
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Thu Aug 16 11:08:38 2018 +0100

    meson: gl: find libjpeg via pkg-config
    
    This effectively (but optionally) requires libjpeg-turbo which
    ships with a .pc file and is what pretty much everyone these days
    uses anyway for libjpeg, so shouldn't be a problem hopefully.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=796947

commit 73828a1a5cdd9951bc95d9b6cbe477ba558ef133
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Thu Aug 16 10:58:47 2018 +0100

    meson: move gmodule check to top-level
    
    It's also needed by the generic/states test and the variable
    is currently checked as part of the opengl lib tests so wouldn't
    be available if opengl was disabled.

commit 4ec1ba433d43e1c6cca5c16b9de7e332f08c7bb4
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Thu Aug 16 10:28:48 2018 +0100

    meson: add option for opengl and the misc optional gl plugin deps
    
    Finer control over the opengl integration library dependencies
    is already implemented via the gl_api, gl_platform, and gl_winsys
    options.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=796947

commit 8829a8707ab931d0c00a4d0482c27f014bcd65e5
Author: Tim-Philipp Müller <tim@centricular.com>
Date:   Thu Aug 16 10:13:39 2018 +0100

    meson: options: move gl options into separate section
Comment 5 Tim-Philipp Müller 2018-08-16 10:14:31 UTC
This leaves zlib for libgsttag.
Comment 6 Tim-Philipp Müller 2018-08-18 11:43:52 UTC
I will ignore the zlib thing for now and leave it as autodetect like it is for autotools. It's a hard dep of glib anyway.

Not porting it to the glib API because I can't find any sample files to test this with.