fastports

libglvnd 1.7.0

graphics/libglvnd

GL Vendor-Neutral Dispatch library

Category
graphics
Maintainer
x11@FreeBSD.org
WWW
https://gitlab.freedesktop.org/glvnd/libglvnd
License
APACHE20 MIT
USES
compiler:c++11-lib localbase meson pkgconfig xorg

Description

libglvnd is a vendor-neutral dispatch layer for arbitrating OpenGL API calls
between multiple vendors. It allows multiple drivers from different vendors to
coexist on the same filesystem, and determines which vendor to dispatch each
API call to at runtime.

Both GLX and EGL are supported, in any combination with OpenGL and OpenGL ES.

Dependencies

Commit History

may be incomplete — full history at freebsd-ports on GitHub

Commit Credits Log message
1.7.0
374676d029 files touched
Gleb Popov (arrowd)
graphics/libglvnd: Mark TESTING_UNSAFE
1.7.0
d5a5aa738f files touched
Daniel Engberg (diizzy)
graphics/libglvnd: Update to 1.7.0
Switch to upstream release archive

Changelog:
https://gitlab.freedesktop.org/glvnd/libglvnd/-/releases/v1.7.0

PR:		274465
Approved by:	x11 (manu)
1.6.0
c997d3a7cd files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: disable TLS on powerpc
libGLdispatch.so.0`___lldb_unnamed_symbol96:
->  0x51346dac <+4>:  .long  0x0005e290                ; unknown opcode
1.6.0
b03c787cbb files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: drop bfd and -O0 on powerpc64
Builds fine with 13.2-RELEASE.
1.6.0
f261e8169a files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: remove stale powerpc64le workaround
1.6.0
7d1faa7179 files touched
Felix Palmen (zirias)
bsd.sites.mk: Update all ports using USE_GITLAB
Replace GL_COMMIT by GL_TAGNAME in all ports. The new GL_TAGNAME is
backwards-compatible (accepting any commit hash as before), but also
understands an actual tag name. Moving to tag names where appropriate is
left to individual ports' maintainers.

Approved by:		portmgr (tcberner, mentor)
Differential Revision:	https://reviews.freebsd.org/D37077
1.6.0
97ab578fe9 files touched
Alexey Dokuchaev (danfe)
graphics/libglvnd: allow the port to build on RISC-V
Use the same treatment as on PowerPC:

  Program python3 found: YES (/usr/local/bin/python3.8)
  Program nm found: YES (/usr/bin/nm)
  Message: Host CPU family: riscv64
  Message: Host CPU: riscv64

  meson.build:82:4: ERROR: Problem encountered: No ASM
  available for freebsd (little endian)
1.6.0
608a2f1ea9 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: fix build on powerpc
meson.build:82:4: ERROR: Problem encountered: No ASM available for freebsd (big endian)
1.6.0
e673f5e8c2 files touched
Jan Beich (jbeich)
graphics/libglvnd: update to 1.6.0
Changes:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/releases/v1.6.0
PR:		267919
Reported by:	GitLab (notify releases), Repology
Exp-run by:	antoine
Approved by:	manu
1.5.0
7116472e60 files touched
Jan Beich (jbeich)
graphics/libglvnd: update to 1.5.0
Changes:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/releases/v1.5.0
PR:		267458
Reported by:	GitLab (notify releases), Repology
Exp-run by:	antoine
Approved by:	manu
1.4.0
fb16dfecae files touched
Stefan Eßer (se)
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.

This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.

Approved by:		portmgr (tcberner)
1.4.0
b7f05445c0 files touched
Stefan Eßer (se)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.

Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.

There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.

This commit implements such a proposal and moves one of the WWW: entries
of each pkg-descr file into the respective port's Makefile. A heuristic
attempts to identify the most relevant URL in case there is more than
one WWW: entry in some pkg-descr file. URLs that are not moved into the
Makefile are prefixed with "See also:" instead of "WWW:" in the pkg-descr
files in order to preserve them.

There are 1256 ports that had no WWW: entries in pkg-descr files. These
ports will not be touched in this commit.

The portlint port has been adjusted to expect a WWW entry in each port
Makefile, and to flag any remaining "WWW:" lines in pkg-descr files as
deprecated.

Approved by:		portmgr (tcberner)
1.4.0
239ba7a240 files touched
Robert Clausecker (fuz)
graphics/libglvnd: fix on armv6/armv7
The .thumb_func directive does not switch to thumb mode in clang's
integrated assembler.  This causes the code to be miscompiled in that
it is generated as ARM code but the symbols are tagged as thumb.  The
resulting library is unusable.  Every call into it crashes.

Fix this issue by applying an upstream patch set to have the entry
stubs be in ARM mode instead of Thumb mode.

See also:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/merge_requests/267
See also:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/issues/232
PR:		263845
1.4.0
a8e4b7a7e4 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: fix build on powerpc64
While the previous fix works on powerpc64le, it looks like on powerpc64
clang is misoptimizing the code, needing -O0:
cc -Isrc/util/libcJSON.a.p -Isrc/util -I../src/util -fvisibility=hidden -fno-color-diagnostics -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -O3 -DUSE_PPC64_ASM -DENABLE_EGL_X11 -DHAVE_TYPEOF -DGLDISPATCH_USE_TLS -DUSE_DISPATCH_ASM -DUSE_ATTRIBUTE_CONSTRUCTOR -DHAVE_PTHREAD_RWLOCK -DHAVE_SYNC_INTRINSICS -DHAVE_MINCORE -DHAVE_RTLD_NOLOAD -DHAVE_DIRENT_DTYPE -DGLDISPATCH_ENABLE_PATCHING -DEGL_NO_X11 -O2 -pipe -no-integrated-as -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -fPIC -MD -MQ src/util/libcJSON.a.p/cJSON.c.o -MF src/util/libcJSON.a.p/cJSON.c.o.d -o src/util/libcJSON.a.p/cJSON.c.o -c ../src/util/cJSON.c
/tmp/cJSON-528d5f.s: Assembler messages:
/tmp/cJSON-528d5f.s:327: Error: unrecognized opcode: `vxor'
/tmp/cJSON-528d5f.s:337: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:339: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:340: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:1507: Error: unrecognized opcode: `vxor'
/tmp/cJSON-528d5f.s:1515: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:1517: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:1519: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:1520: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:1937: Error: unrecognized opcode: `lvx'
/tmp/cJSON-528d5f.s:1940: Error: unrecognized opcode: `lvx'
/tmp/cJSON-528d5f.s:1942: Error: unrecognized opcode: `vspltb'
/tmp/cJSON-528d5f.s:1948: Error: unrecognized opcode: `lvx'
/tmp/cJSON-528d5f.s:1950: Error: unrecognized opcode: `lvx'
/tmp/cJSON-528d5f.s:1951: Error: unrecognized opcode: `lvsl'
/tmp/cJSON-528d5f.s:1952: Error: unrecognized opcode: `vperm'
/tmp/cJSON-528d5f.s:1953: Error: unrecognized opcode: `vcmpequb'
/tmp/cJSON-528d5f.s:1954: Error: unrecognized opcode: `vsel'
/tmp/cJSON-528d5f.s:1955: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:2314: Error: unrecognized opcode: `vxor'
/tmp/cJSON-528d5f.s:2321: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:2323: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:2325: Error: unrecognized opcode: `stvx'
/tmp/cJSON-528d5f.s:2327: Error: unrecognized opcode: `stvx'
cc: error: assembler command failed with exit code 1 (use -v to see invocation)
1.4.0
f377e31e55 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: move binutils dependency to powerpc64* block
While here, remove CXXFLAGS, only CFLAGS is necessary.

Reported by:	jbeich
1.4.0
9341f0aca4 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: reduce dependency on gcc for everyone on powerpc64* by using binutils
1.4.0
1c6c7a379b files touched
Jan Beich (jbeich)
graphics/libglvnd: update to 1.4.0
Changes:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/releases/v1.4.0
PR:		260538
Exp-run by:	antoine
Approved by:	manu
1.3.4
841c9c30cb files touched
Jan Beich (jbeich)
graphics/libglvnd: update to 1.3.4
- graphics/egl-wayland: drop libglvnd < 1.3.4 workaround
- x11-toolkits/wlroots: rebuild to enable EGL_EXT_device_persistent_id

Changes:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/compare/v1.3.3...v1.3.4
PR:		258269
Exp-run by:	antoine
Approved by:	zeising
1.3.3
402476799c files touched
Kevin Bowling (kbowling)
graphics/libglvnd: Update to 1.3.3
Changes https://gitlab.freedesktop.org/glvnd/libglvnd/-/compare/v1.3.2...v1.3.3

Reviewed by:	jbeich, manu
Tested by:	jbeich, kbowling
Approved by:	x11
Differential Revision:	https://reviews.freebsd.org/D30817
1.3.2
b44acc9409 files touched
Jan Beich (jbeich)
graphics/mesa-libs: enable libglvnd support
PR:		246767
Reviewed by:	kbowling
Tested by:	kbowling
Differential Revision:	https://reviews.freebsd.org/D25020
1.3.2
911f04257e files touched
Matthias Fechner (mfechner)
Regenerate all distfiles using gitlab as source.
This regeneration is required as the new gitlab version changed
the address and the directory the source files can be downloaded.

This commit also applies some small fixes to make sure all ports using
gitlab are buildable.

Reviewed by:	mat
Approved by:	portmgr
Differential Revision:	https://reviews.freebsd.org/D29628
1.3.2
cf118ccf87 files touched
Mathieu Arnold (mat)
One more small cleanup, forgotten yesterday. Reported by: lwhsu
1.3.2
305f148f48 files touched
Mathieu Arnold (mat)
Remove # $FreeBSD$ from Makefiles.
1.3.2
8832a0fb59 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: fix build on powerpc64le
Same issue as on powerpc64.
1.3.2
ad9d72d420 files touched
Jan Beich (jbeich)
graphics/libglvnd: update to 1.3.2
Changes:	https://gitlab.freedesktop.org/glvnd/libglvnd/-/compare/v1.3.1...v1.3.2
1.3.1
1f36073a78 files touched
Piotr Kubaj (pkubaj)
graphics/libglvnd: fix build on powerpc64 elfv2
Clang fails to build this port, use GCC for now.
1.3.1
854f7c090d files touched
Jan Beich (jbeich)
graphics/libglvnd: add new port
Submitted by:	Greg V <greg@unrelenting.technology>

libglvnd is a vendor-neutral dispatch layer for arbitrating OpenGL API calls
between multiple vendors. It allows multiple drivers from different vendors to
coexist on the same filesystem, and determines which vendor to dispatch each
API call to at runtime.

Both GLX and EGL are supported, in any combination with OpenGL and OpenGL ES.

https://gitlab.freedesktop.org/glvnd/libglvnd