[MacPorts] #69787: gstreamer1-gst-plugins-good @ 1.24.1 -x11: Conflicting header file of dependencies mesa and gl-headers

MacPorts noreply at macports.org
Sat Apr 27 10:23:05 UTC 2024


#69787: gstreamer1-gst-plugins-good @ 1.24.1 -x11: Conflicting header file of
dependencies mesa and gl-headers
-------------------------------------------------+-------------------------
  Reporter:  FlyingSamson                        |      Owner:  (none)
      Type:  defect                              |     Status:  new
  Priority:  Normal                              |  Milestone:
 Component:  ports                               |    Version:  2.9.99
Resolution:                                      |   Keywords:
      Port:  gstreamer1-gst-plugins-good,        |
  gstreamer1-gst-plugins-base, gl-headers        |
-------------------------------------------------+-------------------------

Comment (by FlyingSamson):

 So, I tried to figure out how to get rid of the `mesa` dependency of
 `gstreamer1-gst-plugins-good +quartz -x11`.

 It seems the only path this is pulled in is `gstreamer1-gst-plugins-good`
 -> `gtk3` -> `libepoxy` -> `mesa` (as well as `xorg-util-macros` and
 `xorg-libX11`).

 I'm really no expert (not to say I'm a total noob) regarding everything
 regarding x11 vs quartz, but from my googling around I'm under the
 impression that GLX is specific to X11, yes?

 If so, may we simply put the part
 {{{
     # enable GLX support
     # without this any gtk3 +x11 app will fail on load as follows
     # dyld: Symbol not found: _epoxy_glXBindTexImageEXT
     #   Referenced from: /opt/local/lib/libgdk-3.0.dylib
     #   Expected in: /opt/local/lib/libepoxy.0.dylib
     #   in /opt/local/lib/libgdk-3.0.dylib
     configure.args-append \
                         -Dglx=yes
 }}}

 in the Portfile for `libepoxy` in a `if {[variant_isset x11]} {...}` and
 also move the requirement for the three ports `mesa`, `xorg-util-macros`,
 and `xorg-libX11` into that if statement, too?

 I also moved `gtk3`'s direct lib-dependency on `mesa` into an `if
 {[variant_isset x11]} {...}` statement.

 My build of `gstreamer1-gst-plugins-good` with these changes in place went
 through at least, but I cannot say if by disabling the GLX support I
 disabled some other functionality required by dependent ports.

 If you say that these changes seem sensible, I'd be happy to create a PR
 for `libepoxy` and `gtk3` to have one less dependency on `mesa` and
 friends with `-x11 +quartz` enabled.

-- 
Ticket URL: <https://trac.macports.org/ticket/69787#comment:15>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list