Bug 233220

Summary: multimedia/gstreamer1-plugins: fails to build if mesa-libs + wayland are installed
Product: Ports & Packages Reporter: Jan Beich <jbeich>
Component: Individual Port(s)Assignee: freebsd-multimedia (Nobody) <multimedia>
Status: Closed FIXED    
Severity: Affects Only Me CC: kiri, tijl, w.schwarzenfeld
Priority: --- Flags: bugzilla: maintainer-feedback? (multimedia)
Version: Latest   
Hardware: Any   
OS: Any   
Bug Depends on:    
Bug Blocks: 227509    
Attachments:
Description Flags
v0
none
v1 none

Description Jan Beich freebsd_committer freebsd_triage 2018-11-14 12:42:41 UTC
https://lists.freebsd.org/pipermail/freebsd-ports/2018-November/114787.html
can filtered into the following steps:

$ cd multimedia/gstreamer1-plugins
$ echo "BUILD_DEPENDS+=mesa-libs>0:graphics/mesa-libs" >>Makefile.local
$ echo "BUILD_DEPENDS+=wayland:graphics/wayland # before bug 227509" >>Makefile.local
$ make
[...]
gstglwindow_wayland_egl.c:28:10: fatal error: 'linux/input.h' file not found
#include <linux/input.h>
         ^~~~~~~~~~~~~~~
1 error generated.

poudriere log: https://ptpb.pw/kiOI
Comment 1 Jan Beich freebsd_committer freebsd_triage 2018-11-14 12:52:56 UTC
Created attachment 199236 [details]
v0

Add wayland to BASE_GST_ALL_PLUGINS and back out ports r483908. BASE_GST_ALL_PLUGINS=foo and FOO_CONFIGURE_ENABLE=foo cannot be used at the same time:

$ cd graphics/gstreamer1-plugins-gl
$ make -V CONFIGURE_ARGS:M\*wayland\* WITH=WAYLAND
--enable-wayland --disable-wayland
Comment 2 Jan Beich freebsd_committer freebsd_triage 2018-11-14 12:58:33 UTC
Comment on attachment 199236 [details]
v0

Oops, incomplete revert.
Comment 3 Jan Beich freebsd_committer freebsd_triage 2018-11-14 13:00:05 UTC
Comment on attachment 199236 [details]
v0

Nevermind. I've used "git revert", so forgetting something is unlikely.
Comment 4 Walter Schwarzenfeld 2018-11-14 13:06:49 UTC
Why not add multimedia/v4l_compat?
Comment 5 Jan Beich freebsd_committer freebsd_triage 2018-11-14 13:19:28 UTC
Created attachment 199238 [details]
v1

Looks like gl being built outside of its port is the actual issue:

===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/egl/gstegl.h
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/egl/gsteglimage.h
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/egl/gstgldisplay_egl.h
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/egl/gstglmemoryegl.h
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/gl-prelude.h
Error: Orphaned: include/gstreamer-%%VERSION%%/gst/gl/gl.h
[...]
Error: Orphaned: lib/girepository-%%VERSION%%/GstGL-%%VERSION%%.typelib
Error: Orphaned: lib/gstreamer-%%VERSION%%/include/gst/gl/gstglconfig.h
Error: Orphaned: lib/libgstgl-%%VERSION%%.so
Error: Orphaned: lib/libgstgl-%%VERSION%%.so.0
Error: Orphaned: lib/libgstgl-%%VERSION%%.so.%%SOVERSION%%
Error: Orphaned: libdata/pkgconfig/gstreamer-gl-%%VERSION%%.pc
Error: Orphaned: share/gir-%%VERSION%%/GstGL-%%VERSION%%.gir

gst-libs/gst/Makefile.am:
if USE_OPENGL
GL_DIR = gl
endif
if USE_GLES2
GL_DIR = gl
endif

(In reply to w.schwarzenfeld from comment #4)
> Why not add multimedia/v4l_compat?

gstglwindow_wayland_egl.c is part of gl plugin which should be built only in graphics/gstreamer1-plugins-gl, not in multimedia/gstreamer1-plugins.
Comment 6 Tijl Coosemans freebsd_committer freebsd_triage 2018-11-14 13:43:10 UTC
(In reply to Jan Beich from comment #5)
Version 1.14 moved some gl stuff from bad to base and I think that in gstreamer1-plugins/Makefile.common all three --disable-gles2, --disable-egl, and --disable-glx should be moved from BAD_GST_NON_PLUGINS to a new BASE_GST_NON_PLUGINS and the latter added to CONFIGURE_ARGS for DIST==base similar to BAD_GST_NON_PLUGINS.
Comment 7 commit-hook freebsd_committer freebsd_triage 2018-11-19 20:25:28 UTC
A commit references this bug:

Author: tijl
Date: Mon Nov 19 20:25:22 UTC 2018
New revision: 485360
URL: https://svnweb.freebsd.org/changeset/ports/485360

Log:
  In gstreamer 1.14 the gl plugin moved from bad to base distribution.  Move
  related configure args.

  PR:		233220

Changes:
  head/multimedia/gstreamer1-plugins/Makefile.common