Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 700052 - x11-base/xorg-server-1.20.5[libglvnd] - In file included from glamor_core.c:36: /usr/include/X11/Xlib.h:222:2: error: conflicting types for ‘GC’
Summary: x11-base/xorg-server-1.20.5[libglvnd] - In file included from glamor_core.c:3...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-11-13 22:01 UTC by Dennis Schridde
Modified: 2020-03-09 12:21 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,972.64 KB, text/plain)
2019-11-13 22:03 UTC, Dennis Schridde
Details
build.log (with 642c1f83b9ed2452ceb20457a4423a8f52a7a8c4) (build.log,964.66 KB, text/x-log)
2019-11-18 19:23 UTC, Dennis Schridde
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Schridde 2019-11-13 22:01:04 UTC
In file included from /usr/include/EGL/eglplatform.h:122,                                                                               
                 from /usr/include/epoxy/egl_generated.h:11,
                 from /usr/include/epoxy/egl.h:46,                  
                 from glamor_priv.h:43,
                 from glamor_core.c:36:
/usr/include/X11/Xlib.h:222:2: error: conflicting types for ‘GC’
  222 | *GC;
      |  ^~                                                         
In file included from glamor.h:34,
                 from glamor_priv.h:32,
                 from glamor_core.c:36:
../include/gcstruct.h:282:3: note: previous declaration of ‘GC’ was here
  282 | } GC;
      |   ^~                                                        
make[1]: *** [Makefile:767: glamor_core.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from /usr/include/EGL/eglplatform.h:122,
                 from /usr/include/epoxy/egl_generated.h:11,
                 from /usr/include/epoxy/egl.h:46,
                 from glamor_priv.h:43,
                 from glamor_copy.c:23:
/usr/include/X11/Xlib.h:222:2: error: conflicting types for ‘GC’
  222 | *GC;
      |  ^~                                                         
In file included from glamor.h:34,
                 from glamor_priv.h:32,
                 from glamor_copy.c:23:
../include/gcstruct.h:282:3: note: previous declaration of ‘GC’ was here
  282 | } GC;
      |   ^~                                                        
In file included from /usr/include/EGL/eglplatform.h:122,
                 from /usr/include/epoxy/egl_generated.h:11,
                 from /usr/include/epoxy/egl.h:46,
                 from glamor_priv.h:43,
                 from glamor.c:37:
/usr/include/X11/Xlib.h:222:2: error: conflicting types for ‘GC’
  222 | *GC;
      |  ^~                                                         
In file included from glamor.h:34,
                 from glamor_priv.h:32,
                 from glamor.c:37:
../include/gcstruct.h:282:3: note: previous declaration of ‘GC’ was here
  282 | } GC;
      |   ^~                                                        
make[1]: *** [Makefile:767: glamor_copy.lo] Error 1
make[1]: *** [Makefile:767: glamor.lo] Error 1
make[1]: Leaving directory '/tmp/portage/x11-base/xorg-server-1.20.5/work/xorg-server-1.20.5/glamor'


Reproducible: Always




Portage 2.3.79 (python 2.7.13-final-42, default/linux/amd64/17.1/desktop/plasma/systemd, gcc-9.2.0, glibc-2.30-r2, 5.3.8-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.3.8-gentoo-x86_64-AMD_Ryzen_5_2400G_with_Radeon_Vega_Graphics-with-gentoo-2.6
KiB Mem:    14134904 total,   2836552 free
KiB Swap:   16776188 total,  16721916 free
Timestamp of repository gentoo: Wed, 13 Nov 2019 19:45:01 +0000
Head commit of repository gentoo: e900fc713c2ef37a9c70ccef0f9d574a707fdb45
Head commit of repository flatpak-overlay: dba2292fa92fbe7f51a437ff89d27cbab6105b67

Head commit of repository local: bd0d7b2f5ff4338e2ed8f4e0d3d69277862cd102

sh bash 5.0_p11
ld GNU gold (Gentoo 2.32 p2 2.32.0) 1.16
ccache version 3.7.5 [disabled]
app-shells/bash:          5.0_p11::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.30.0::gentoo
dev-lang/python:          2.7.17::gentoo, 3.5.7::gentoo, 3.6.9::gentoo, 3.7.5-r1::gentoo, 3.8.0::gentoo
dev-util/ccache:          3.7.5::gentoo
dev-util/cmake:           3.16.0_rc3::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/sandbox:         2.18::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.11.6-r3::gentoo, 1.13.4-r2::gentoo, 1.16.1-r2::gentoo
sys-devel/binutils:       2.32-r1::gentoo, 2.33.1::gentoo
sys-devel/gcc:            9.2.0-r2::gentoo
sys-devel/gcc-config:     2.1::gentoo
sys-devel/libtool:        2.4.6-r5::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 5.3-r1::gentoo (virtual/os-headers)
sys-libs/glibc:           2.30-r2::gentoo
Repositories:

gentoo
    location: /var/cache/portage/gentoo
    sync-type: rsync
    sync-uri: rsync://rsync.de.gentoo.org/gentoo-portage
    priority: -1000
    sync-rsync-extra-opts: 
    sync-rsync-verify-jobs: 1
    sync-rsync-verify-max-age: 24
    sync-rsync-verify-metamanifest: yes

flatpak-overlay
    location: /var/db/repos/flatpak-overlay
    sync-type: git
    sync-uri: https://github.com/fosero/flatpak-overlay.git
    masters: gentoo

local
    location: /var/cache/portage/local
    sync-type: git
    sync-uri: https://github.com/devurandom/gentoo-overlay.git
    masters: gentoo
    priority: 1000

ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-pipe -O2 -march=znver1"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/grs/systems.conf /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.6/conf"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.3/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-pipe -O2 -march=znver1"
DISTDIR="/var/cache/portage/distfiles"
EMERGE_DEFAULT_OPTS="--keep-going --nospinner --verbose-conflicts"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildsyspkg cgroup compressdebug config-protect-if-modified distlocks ebuild-locks fakeroot fixlafiles ipc-sandbox merge-sync mount-sandbox multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/ http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-j6 -l4"
PKGDIR="/var/cache/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/tmp"
USE="7z 7zip X a52 aac aacplus aacs acl acpi activities aio alsa amd64 appindicator appstream archive audit avahi ayatana bash-completion bdplus berkdb blake2 bluetooth bluray branding brotli bs2b btrfs bzip2 cairo caps cdda cddb cdio cdr celt chromaprint cjk clang cli clipboard color-management colord conntrack crypt cups cxx d3d9 dav1d dbus declarative device-mapper dirac djvu dri drm dts dvb dvd dvdr ed25519 editorconfig egl elf emboss encode epub exif fam faudio fax fbcon ffmpeg fftw filecaps firefox firewalld fish-completion fits flac fontconfig fontforge fortran fribidi gamepad gbm gdal gdbm geoclue geolocation gif git gmp gnupg google googledrive gpg gps graphicsmagick gstreamer gtk gtk3 gzip harfbuzz hdf5 heif http2 ibus iconv icu idn imlib inotify introspection ipv6 jemalloc jpeg jpeg2k json kde kipi kms kwallet ladspa latex lcms ldap libatomic libglvnd libidn2 libinput libnotify libproxy libsecret libsoxr libtirpc libvirt lm-sensors lrz lv2 lvm lz4 lzma lzo mad mariadb markdown mbim mercurial mjpeg mng mobi modemmanager modplug mp3 mp4 mpeg mplayer mpris mtp multilib mysql ncurses netlink networkmanager nls nptl office ofx ogg openal opencl opencv openexr opengl openh264 openmax openmp opus pam pango pcap pch pcre pcre2 pdf pgo phonon pixman plasma pm-utils png policykit postscript ppds prison pulseaudio python qml qrcode qt5 raw rdp readline redfish samba sasl scanner schroedinger screencast sctp sdl sdl2 seccomp semantic-desktop share smartcard snappy sparse speech speex spell ssl startup-notification steamruntime stemmer svg systemd systemtap tbb tcpd teamd telepathy tga theora threads thunderbolt tiff timezone tmux truetype tslib udev udisks unicode unwind upnp upnp-av upower usb utempter v4l v4l2 vaapi vdpau vkd3d vorbis vpx vulkan wasm wavpack wayland webchannel webengine webkit webp widgets wmf wps x264 x265 xattr xcb xcomposite xinerama xkb xml xmp xrandr xscreensaver xv xvid xwayland xz yaml zeroconf zeromq zimg zlib zstd" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="hda-intel" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3" ELIBC="glibc" ENLIGHTENMENT_MODULES="*" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="joystick libinput" KERNEL="linux" L10N="de de-DE en en-GB ar fa tr ja ko zh zh-CN zh-TW" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="nlpsolver scripting-javascript wiki-publisher" LIRC_DEVICES="devinput" LLVM_TARGETS="AMDGPU BPF RISCV WebAssembly" LUA_TARGET="lua5-2" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6 pypy pypy3" QEMU_SOFTMMU_TARGETS="riscv32 riscv64 x86_64" QEMU_USER_TARGETS="riscv32 riscv64" RUBY_TARGETS="ruby24 ruby25" USERLAND="GNU" VIDEO_CARDS="amdgpu virgl" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

x11-base/xorg-server-1.20.5::gentoo was built with the following:
USE="glamor ipv6 libglvnd systemd udev unwind wayland xorg xvfb -debug -dmx -doc (-elogind) -kdrive -libressl -minimal (-selinux) -static-libs -suid -xcsecurity -xephyr -xnest" ABI_X86="(64)"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildsyspkg cgroup compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,-z,lazy"


x11-libs/libX11-1.6.9::gentoo was built with the following:
USE="ipv6 -doc -static-libs -test" ABI_X86="32 (64) (-x32)"
CFLAGS="-pipe -O2 -march=znver1 -g"
CXXFLAGS="-pipe -O2 -march=znver1 -g"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildsyspkg cgroup compressdebug config-protect-if-modified distlocks ebuild-locks fakeroot fixlafiles ipc-sandbox merge-sync mount-sandbox multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
Comment 1 Dennis Schridde 2019-11-13 22:03:10 UTC
Created attachment 596032 [details]
build.log
Comment 2 Dan Goodliffe 2019-11-17 16:54:48 UTC
This only showed up for me when I enabled libglvnd (masked USE flag) I have an nVidia card and thought I'd test it. This is the only problem I've run into.
Comment 3 Matt Turner gentoo-dev 2019-11-18 05:30:14 UTC
This is fixed upstream by commit 741bd73429e337071f49509ddcc5fb392e20b0f6 and on the server-1.20-branch by commit 642c1f83b9ed2452ceb20457a4423a8f52a7a8c4.
Comment 4 Dennis Schridde 2019-11-18 19:23:21 UTC
Created attachment 596710 [details]
build.log (with 642c1f83b9ed2452ceb20457a4423a8f52a7a8c4)

(In reply to Matt Turner from comment #3)
> This is fixed upstream by commit 741bd73429e337071f49509ddcc5fb392e20b0f6
> and on the server-1.20-branch by commit
> 642c1f83b9ed2452ceb20457a4423a8f52a7a8c4.

Does not fix the issue for me, but at least appears to reduce the number of conflicts.
Comment 5 Dan Goodliffe 2019-11-18 19:32:36 UTC
Seconded. I've just applied all the commits from xorg-server-1.20.5 up to 642c1f83b (excluding those already applied) and got the same result.
Comment 6 Matt Turner gentoo-dev 2019-11-18 22:55:15 UTC
Thanks for testing guys. I'll investigate.
Comment 7 Matt Turner gentoo-dev 2019-11-19 21:01:55 UTC
Oh, I see. We also need

commit 51233cc52cbcbe25f8461830913c06f5b5bc9508
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu Oct 17 11:51:37 2019 -0400

    egl: Sync with Khronos
    
        commit de3a5e867d906a04a5c37ee0d89e7f01d3598eb9
        Author: Ken Russell <kbrussel@alum.mit.edu>
        Date:   Sat Oct 12 05:44:43 2019 -0700
    
            Reserve enums 0x34A0..0x34AF for ANGLE project. (#93)
    
    Closes: https://gitlab.freedesktop.org/glvnd/libglvnd/issues/193

from upstream libglvnd. That's not in 1.2.0.
Comment 8 Dan Goodliffe 2019-11-19 23:10:39 UTC
Thanks.

Applied that patch to libglvnd, installed fine.

Got a link error on my first rebuild of xorg-server (note that I am still applying all the patches from 1.20.5 to the previously mentioned fix):
libtool: link: x86_64-pc-linux-gnu-gcc -I../../glamor -I../../dri3 -DHAVE_DIX_CONFIG_H -I/usr/include/libdrm -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Wlogical-op -Wimplicit -Wnonnull -Winit-self -Wmain -Wmissing-braces -Wsequence-point -Wreturn-type -Wtrigraphs -Warray-bounds -Wwrite-strings -Waddress -Wint-to-pointer-cast -Wpointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -D_DEFAULT_SOURCE -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/libdrm -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/X11/dri -I../../include -I../../include -I../../Xext -I../../composite -I../../damageext -I../../xfixes -I../../Xi -I../../mi -I../../miext/sync -I../../miext/shadow -I../../miext/damage -I../../render -I../../randr -I../../fb -I../../dbe -I../../present -fvisibility=hidden -O3 -march=native -pipe -fno-stack-protector -pthread -Wl,-O1 -O3 -march=native -pipe -Wl,-z -Wl,lazy -o Xwayland Xwayland-xwayland.o Xwayland-xwayland-input.o Xwayland-xwayland-cursor.o Xwayland-xwayland-shm.o Xwayland-xwayland-output.o Xwayland-xwayland-cvt.o Xwayland-xwayland-vidmode.o Xwayland-stubs.o Xwayland-miinitext.o Xwayland-xwayland-glamor.o Xwayland-xwayland-glamor-gbm.o Xwayland-xwayland-present.o Xwayland-xwayland-glamor-xv.o Xwayland-drm-protocol.o Xwayland-relative-pointer-unstable-v1-protocol.o Xwayland-pointer-constraints-unstable-v1-protocol.o Xwayland-tablet-unstable-v2-protocol.o Xwayland-xwayland-keyboard-grab-unstable-v1-protocol.o Xwayland-xdg-output-unstable-v1-protocol.o Xwayland-linux-dmabuf-unstable-v1-protocol.o -Wl,--export-dynamic  -Wl,--as-needed ../../glamor/.libs/libglamor.a ../../fb/.libs/libfb.a ../../xfixes/.libs/libxfixes.a ../../mi/.libs/libmi.a ../../Xext/.libs/libXext.a ../../dbe/.libs/libdbe.a ../../record/.libs/librecord.a ../../glx/.libs/libglx.a ../../randr/.libs/librandr.a ../../render/.libs/librender.a ../../damageext/.libs/libdamageext.a ../../dri3/.libs/libdri3.a ../../present/.libs/libpresent.a ../../miext/sync/.libs/libsync.a ../../miext/damage/.libs/libdamage.a ../../miext/shadow/.libs/libshadow.a ../../Xi/.libs/libXi.a ../../xkb/.libs/libxkb.a ../../xkb/.libs/libxkbstubs.a ../../composite/.libs/libcomposite.a ../../dix/.libs/libmain.a ../../dix/.libs/libdix.a ../../os/.libs/libos.a -lcrypto -ldl ../../glx/.libs/libglxvnd.a -lwayland-client -ldrm ../../Xext/.libs/libXvidmode.a -lpixman-1 -lXfont2 -lXau -lsystemd -lxshmfence -lXdmcp -lepoxy -lgbm -lEGL -lGL -lm -lbsd -pthread
/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/libGL.so: undefined reference to `_glapi_tls_Current'

Didn't dig into that one, instead I just disabled wayland and xorg-server installed fine. Not sure how well it all works mind, I'm not sat at that particular computer right now.
Comment 9 Dan Goodliffe 2019-11-20 08:43:50 UTC
Excellent, thanks Matt. That's all working. For reference, I have the following patches applied (because the original fix doesn't apply directly to 1.20.5)

/etc/portage/patches/media-libs/libglvnd/:
51233cc52cbcbe25f8461830913c06f5b5bc9508.patch

/etc/portage/patches/x11-base/xorg-server/:
0001-xwayland-Avoid-a-crash-on-pointer-enter-with-a-grab.patch
0002-xwayland-Check-status-in-GBM-pixmap-creation.patch
0003-glamor-Make-pixmap-exportable-from-gbm_bo_from_pixma.patch
0004-xwayland-Reset-scheduled-frames-after-hiding-tablet-.patch
0005-Revert-present-scmd-Check-that-the-flip-and-screen-p.patch
0006-Xi-Use-current-device-active-grab-to-deliver-touch-e.patch
0007-dri2-Sync-i965_pci_ids.h-from-mesa.patch
0008-xwayland-Update-screen-pixmap-on-output-resize.patch
0009-xwayland-Expand-the-RANDR-screen-size-limits.patch
0010-xwayland-Do-not-free-a-NULL-GBM-bo.patch
0011-xsync-Add-resource-inside-of-SyncCreate-export-SyncC.patch
0012-GLX-Add-a-per-client-vendor-mapping.patch
0013-GLX-Use-the-sending-client-for-looking-up-XID-s.patch
0014-GLX-Add-a-function-to-change-a-clients-vendor-list.patch
0015-GLX-Set-GlxServerExports-major-minor-Version.patch
0016-miext-sync-Fix-needless-ABI-change.patch
0017-glx-Fix-previous-context-validation-in-xorgGlxMakeCu.patch
0018-xwayland-Separate-DamagePtr-into-separate-window-dat.patch
0019-xwayland-Refactor-surface-creation-into-a-separate-f.patch
0020-xwayland-Handle-the-case-of-windows-being-realized-b.patch
0021-xf86-Disable-unused-crtc-functions-when-a-lease-is-r.patch
0022-miext-sync-Make-struct-_SyncObject-initialized-fully.patch
0023-Fix-crash-on-XkbSetMap.patch
0024-Fix-crash-on-XkbSetMap.patch
0028-dix-Assert-noPanoramiXExtension-is-false-in-Panorami.patch
0029-configure-Set-libdrm-flags-correctly-if-only-XORG-is.patch
0030-modesetting-Fix-broken-manpage-in-autoconf-build.patch
0032-meson-Fix-another-reference-to-gl-9.2.0.patch
0033-meson-Apparently-1.2-is-1.2.0.patch
0034-glamor-xwayland-Define-EGL_NO_X11.patch
0035-randr-Fix-RRCrtcDetachScanoutPixmap-segfault-during-.patch
0036-modesetting-Fix-ms_covering_crtc-segfault-with-non-m.patch
0037-modesetting-Fix-ms_covering_crtc-segfault-with-non-x.patch
0038-modesetting-Implement-ms_covering_randr_crtc-for-ms_.patch
0039-xfree86-Call-ScreenInit-for-protocol-screens-before-.patch

KDE compositor still stuck in XRender despite me selecting OpenGL3.1, so I can now go hunting for a different smoking gun...
Comment 10 Dennis Schridde 2019-11-20 23:12:00 UTC
(In reply to Matt Turner from comment #7)
> Oh, I see. We also need
> 
> commit 51233cc52cbcbe25f8461830913c06f5b5bc9508
> Author: Adam Jackson <ajax@redhat.com>
> Date:   Thu Oct 17 11:51:37 2019 -0400
> 
>     egl: Sync with Khronos
>     
>         commit de3a5e867d906a04a5c37ee0d89e7f01d3598eb9
>         Author: Ken Russell <kbrussel@alum.mit.edu>
>         Date:   Sat Oct 12 05:44:43 2019 -0700
>     
>             Reserve enums 0x34A0..0x34AF for ANGLE project. (#93)
>     
>     Closes: https://gitlab.freedesktop.org/glvnd/libglvnd/issues/193
> 
> from upstream libglvnd. That's not in 1.2.0.

Thanks, works!
Comment 11 Larry the Git Cow gentoo-dev 2019-11-23 00:21:30 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c38af1852d41380a9758c092ffb0df8362dec256

commit c38af1852d41380a9758c092ffb0df8362dec256
Author:     Matt Turner <mattst88@gentoo.org>
AuthorDate: 2019-11-23 00:12:49 +0000
Commit:     Matt Turner <mattst88@gentoo.org>
CommitDate: 2019-11-23 00:20:59 +0000

    x11-base/xorg-server: Version bump to 1.20.6
    
    Closes: https://bugs.gentoo.org/689768
    Closes: https://bugs.gentoo.org/700052
    Closes: https://bugs.gentoo.org/700120
    Closes: https://bugs.gentoo.org/700838
    Signed-off-by: Matt Turner <mattst88@gentoo.org>

 x11-base/xorg-server/Manifest                  |   1 +
 x11-base/xorg-server/xorg-server-1.20.6.ebuild | 232 +++++++++++++++++++++++++
 2 files changed, 233 insertions(+)
Comment 12 Brian McKee 2020-03-08 06:36:55 UTC
Did this bug return on 1.20.7? And also with Cairo-1.16.0-r3?
Comment 13 Bjoern Olausson 2020-03-08 14:50:17 UTC
(In reply to Brian McKee from comment #12)
> Did this bug return on 1.20.7? And also with Cairo-1.16.0-r3?

Not sure if it is related, but the error seems to be the same:

libtool: link: x86_64-pc-linux-gnu-gcc -DHAVE_DIX_CONFIG_H -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Wredundant-decls -Wlogical-op -Wimplicit -Wnonnull -Winit-self -Wmain -Wmissing-braces -Wsequence-point -Wreturn-type -Wtrigraphs -Warray-bounds -Wwrite-strings -Waddress -Wint-to-pointer-cast -Wpointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -D_DEFAULT_SOURCE -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/include/libdrm -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/X11/dri -I../../include -I../../include -I../../Xext -I../../composite -I../../damageext -I../../xfixes -I../../Xi -I../../mi -I../../miext/sync -I../../miext/shadow -I../../miext/damage -I../../render -I../../randr -I../../fb -I../../dbe -I../../present -fvisibility=hidden -march=native -O2 -pipe -DGLAMOR_HAS_EGL_QUERY_DRIVER -pthread -Wl,-O1 -Wl,-z -Wl,lazy -o Xvfb InitInput.o InitOutput.o miinitext.o -Wl,--export-dynamic  -Wl,--as-needed ../../fb/.libs/libfb.a ../../xfixes/.libs/libxfixes.a ../../Xext/.libs/libXext.a ../../dbe/.libs/libdbe.a ../../record/.libs/librecord.a ../../glx/.libs/libglx.a ../../glx/.libs/libglxvnd.a ../../randr/.libs/librandr.a ../../render/.libs/librender.a ../../damageext/.libs/libdamageext.a ../../dri3/.libs/libdri3.a ../../present/.libs/libpresent.a ../../miext/sync/.libs/libsync.a ../../miext/damage/.libs/libdamage.a ../../miext/shadow/.libs/libshadow.a ../../Xi/.libs/libXi.a ../../xkb/.libs/libxkb.a ../../xkb/.libs/libxkbstubs.a ../../composite/.libs/libcomposite.a ../../dix/.libs/libmain.a ../../dix/.libs/libdix.a ../../mi/.libs/libmi.a ../../os/.libs/libos.a -lcrypto -ldl ../../Xi/.libs/libXistubs.a -lGL -lpixman-1 -lXfont2 -lXau -lxshmfence -lXdmcp -lm -lbsd -pthread

/usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/libGL.so: undefined reference to `_glapi_tls_Current'

collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:696: Xvfb] Error 1
make[3]: Leaving directory '/var/tmp/portage/x11-base/xorg-server-1.20.7/work/xorg-server-1.20.7/hw/vfb'
make[2]: *** [Makefile:762: all-recursive] Error 1
make[2]: Leaving directory '/var/tmp/portage/x11-base/xorg-server-1.20.7/work/xorg-server-1.20.7/hw/vfb'
make[1]: *** [Makefile:615: all-recursive] Error 1
make[1]: Leaving directory '/var/tmp/portage/x11-base/xorg-server-1.20.7/work/xorg-server-1.20.7/hw'
make: *** [Makefile:816: all-recursive] Error 1
Comment 14 Brian McKee 2020-03-08 18:59:25 UTC
Is it possible that libglvnd-1.3.1 has reintroduced this problem. I can't get one of my machines to build. I can't try libglvnd-1.2.x or 1.3.0 because the ebuilds have been removed.
Comment 15 Matt Turner gentoo-dev 2020-03-08 19:05:59 UTC
(In reply to Bjoern Olausson from comment #13)
> Not sure if it is related, but the error seems to be the same:
> ...
> /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/
> ld: /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/libGL.so:
> undefined reference to `_glapi_tls_Current'

This looks like bug 711780
Comment 16 Matt Turner gentoo-dev 2020-03-08 19:08:32 UTC
(In reply to Brian McKee from comment #14)
> Is it possible that libglvnd-1.3.1 has reintroduced this problem. I can't
> get one of my machines to build. I can't try libglvnd-1.2.x or 1.3.0 because
> the ebuilds have been removed.

Strange. Please file a new bug and attach build logs and emerge --info and I'll investigate.
Comment 17 Brian McKee 2020-03-08 21:29:43 UTC
Thanks Matt. I'm still investigating.

I'm having problems with eselect-opengl blocking mesa and nvidia-drivers. I went to the other bug report you mentioned above and realized that emerging nvidia-drivers might fix my problem. But I couldn't emerge it because eselect-opengl was blocking it from recompiling.

I removed eselect-opengl and that enabled me to emerge nvidia-drivers although the ebuild tried to run eselect-opengl and failed because I removed it, so it seems like the dependencies aren't quite compete there either. It did rebuild the drivers.

Then I did emerge -DNuq @world and its running. I'll post here or open a new bug if it fails again.
Comment 18 Bjoern Olausson 2020-03-09 12:20:54 UTC
(In reply to Matt Turner from comment #15)
> (In reply to Bjoern Olausson from comment #13)
> > Not sure if it is related, but the error seems to be the same:
> > ...
> > /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../x86_64-pc-linux-gnu/bin/
> > ld: /usr/lib/gcc/x86_64-pc-linux-gnu/9.2.0/../../../../lib64/libGL.so:
> > undefined reference to `_glapi_tls_Current'
> 
> This looks like bug 711780

Thanks, indeed, and the issues was resolved in bug 711780 (at least for me)

Cheers,
Bjoern