Page MenuHomeFreeBSD

Make libglvnd a LIB_DEPEND in various usages

Authored by kbowling on Aug 8 2021, 8:20 PM.



There are still reports of people with old systems running into issues on pkg upgrade. I think libglvnd must be a LIB_DEPEND in the main branch now to help with dependency solving.

Diff Detail

Lint Skipped
Unit Tests Skipped

Event Timeline

kbowling created this revision.

I forgot to add USES+=gl, but even with that the LIB_DEPENDS wasn't working as expected. Convert to explicit LIB_DEPENDS.

Looks OK (except inline nits):

  • www/qt5-webengine and all of its dependencies still build fine
  • x11/alacritty + emulators/yuzu-qt5 still install/run fine

Sort by port origin instead of the library name for consistency with current style here and my other ports. I don't agree with everything portlint -C, portfmt or portclippy suggest.


Why += instead of =? .include appears at the end of this Makefile which itself isn't sourced/included unlike mesa-dri/Makefile.common.

14 ↗(On Diff #93498)

Neither an OpenGL provider nor requires libOpenGL at runtime. Disabling dlopen via CONFIGURE_ARGS=--disable-runtime-linking exposes in poudriere testport output but not libOpenGL, suggesting only headers are used. Try the following smoke test:

$ pkg install s2tc
$ pkg delete -f libglvnd
$ pkg info -l s2tc | sed -n '/bin/p; /lib\//p' | xargs strings | grep GL.\*so
$ fetch
$ s2tc_compress -i earth.tga -o -t DXT5
$ file Microsoft DirectDraw Surface (DDS): 512 x 512, compressed using DXT5
This revision is now accepted and ready to land.Aug 11 2021, 12:30 AM
This revision now requires review to proceed.Aug 11 2021, 2:22 AM

On landing maybe bump PORTREVISION in the modified ports to make upgrades more predictable (e.g., for portmaster users) and discover fallout early (if any but unlikely).

This revision is now accepted and ready to land.Aug 11 2021, 2:28 PM