--- graphics/dri/Makefile (revision 431504) +++ graphics/dri/Makefile (working copy) @@ -13,7 +13,7 @@ USES= ssl USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto \ - presentproto xvmc xshmfence + presentproto xv xvmc xshmfence OPTIONS_DEFINE= TEXTURE OPTIONS_DEFAULT=TEXTURE @@ -33,6 +37,18 @@ .include "${.CURDIR}/../../graphics/libGL/Makefile.targets" +# Clang 3.4 in 10.x on i386 fails with the following error when using "GCC atomics" +# +# glsl/cache.c:613:4: error: cannot compile this atomic library call yet +# p_atomic_add(cache->size, size); note: expanded from macro 'p_atomic_add' +# define p_atomic_add(v, i) (void) __atomic_add_fetch((v), (i), __ATOMIC_ACQ_REL) +# +.if ${OSVERSION} < 1100000 && ${ARCH} == "i386" +# post-patch is defined in Makefile.targets, use pre-configure target to patch +pre-configure: + @${REINPLACE_CMD} -e 's|-DUSE_GCC_ATOMIC_BUILTINS||' ${WRKSRC}/configure +.endif + post-install: @${RM} -r ${STAGEDIR}/etc/OpenCL --- graphics/dri/pkg-plist (revision 431504) +++ graphics/dri/pkg-plist (working copy) @@ -13,13 +13,12 @@ @comment include/GL/glxext.h include/GL/internal/dri_interface.h @comment include/GL/osmesa.h -@comment include/GL/wglext.h -@comment include/GL/wmesa.h @comment include/GLES2/gl2.h @comment include/GLES2/gl2ext.h @comment include/GLES2/gl2platform.h @comment include/GLES3/gl3.h @comment include/GLES3/gl31.h +@comment include/GLES3/gl32.h @comment include/GLES3/gl3ext.h @comment include/GLES3/gl3platform.h @comment include/KHR/khrplatform.h --- graphics/libEGL/Makefile (revision 431504) +++ graphics/libEGL/Makefile (working copy) @@ -10,7 +10,6 @@ LIB_DEPENDS+= libpthread-stubs.so:devel/libpthread-stubs \ libexpat.so:textproc/expat2 \ - libdevq.so:devel/libdevq \ libdrm.so:graphics/libdrm USE_GL= gbm --- graphics/libGL/Makefile (revision 431504) +++ graphics/libGL/Makefile (working copy) @@ -11,7 +11,17 @@ libexpat.so:textproc/expat2 USE_XORG= glproto x11 xext xxf86vm xdamage xfixes dri2proto:both \ - presentproto xshmfence + presentproto xshmfence xcb .include .include "${.CURDIR}/Makefile.common" @@ -27,7 +27,7 @@ @${MKDIR} ${STAGEDIR}${PREFIX}/lib/.mesa @${MV} ${STAGEDIR}${PREFIX}/lib/libGL* \ ${STAGEDIR}${PREFIX}/lib/.mesa/ - @cd ${WRKSRC}/src/mesa && ${SETENV} DESTDIR=${STAGEDIR} \ - ${MAKE_CMD} install-pkgconfigDATA install-glHEADERS + @cd ${WRKSRC}/src && ${SETENV} DESTDIR=${STAGEDIR} \ + ${MAKE_CMD} install-pkgconfigDATA install-glHEADERS install-glxHEADERS .include --- graphics/libGL/Makefile.common (revision 431504) +++ graphics/libGL/Makefile.common (working copy) @@ -18,7 +18,7 @@ MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/} MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/} -MESABASEVERSION= 11.2.2 +MESABASEVERSION= 13.0.3 # if there is a subversion, don't include the '-' between 7.11-rc2. MESASUBVERSION= @@ -29,14 +29,12 @@ MAINTAINER= x11@FreeBSD.org BUILD_DEPENDS+= makedepend:devel/makedepend -LIB_DEPENDS+= libdevq.so:devel/libdevq USES+= compiler:c++11-lib bison gettext-tools gmake libtool \ - pathfix pkgconfig python:2,build shebangfix tar:xz + localbase pathfix pkgconfig python:2,build shebangfix tar:xz USE_LDCONFIG= yes GNU_CONFIGURE= yes -CPPFLAGS+= -isystem${LOCALBASE}/include -LDFLAGS+= -Wl,-Y/usr/lib:${LOCALBASE}/lib +LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${MESA_LLVM_VER}/lib PKGINSTALL= ${.CURDIR}/pkg-install PKGDEINSTALL= ${.CURDIR}/pkg-deinstall @@ -62,22 +60,18 @@ COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//} -MESA_LLVM_VER=37 +MESA_LLVM_VER=39 CONFIGURE_ARGS+= --with-sha1=libcrypto # DRI3 needs PRIME support in the kernel to work CONFIGURE_ARGS+= --disable-dri3 CONFIGURE_ARGS+= --enable-gbm -# There are issues that need to be fixed to use TLS model "initial-exec" -# So stick with "global-dynamic"'s model for now. kan@ is working on a -# patch for rtld. We might want to backport global-dynamic or -# pthread_setspecific which it uses now by default. But since this -# configure switch is going away ... -# https://lists.freebsd.org/pipermail/freebsd-arch/2016-February/017699.html -#CONFIGURE_ARGS+= --enable-glx-tls +.if ${OSVERSION} >= 1100501 || ${OSVERSION} < 1100000 && ${OSVERSION} >= 1003506 +CONFIGURE_ARGS+= --enable-glx-tls +.endif # libEGL, dri and clover need gallium enabled. # the third option in --with-egl-platforms is wayland. @@ -91,10 +85,9 @@ # Clover (OpenCL). .if ${OPSYS} == DragonFly || \ (${OPSYS} == FreeBSD && \ - (${ARCH} == amd64 || \ - ${ARCH} == i386)) + (${ARCH} == amd64 || ${ARCH} == i386)) -BUILD_DEPENDS+= libclc>=0.0.r222830:devel/libclc +BUILD_DEPENDS+= libclc>=0.2.0.20160915:devel/libclc # We need the clang port too even if it is not used to compile because # Clover needs some of the clang includes to build. @@ -119,14 +112,14 @@ CONFIGURE_ARGS+= --enable-osmesa # gallium -BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.7.1_1:devel/llvm${MESA_LLVM_VER} +BUILD_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} .if ${COMPONENT:Mdri} != "" || ${COMPONENT:Mclover} != "" || ${COMPONENT:Megl} != "" -RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.7.1_1:devel/llvm${MESA_LLVM_VER} +RUN_DEPENDS+= llvm${MESA_LLVM_VER}>=3.9.0_4:devel/llvm${MESA_LLVM_VER} .endif CONFIGURE_ENV+= LLVM_CONFIG=${LOCALBASE}/bin/llvm-config${MESA_LLVM_VER} -CONFIGURE_ARGS+=--enable-gallium-llvm \ +CONFIGURE_ARGS+=--enable-gallium-llvm --enable-llvm-shared-libs \ --enable-xvmc .if ${PORT_OPTIONS:MTEXTURE} @@ -155,8 +148,8 @@ .endif .if ${ARCH} == powerpc || ${ARCH} == powerpc64 -DRI_DRIVERS= RADEON SWRAST -GALLIUM_DRIVERS= RADEONSI SWRAST +DRI_DRIVERS= RADEON R200 SWRAST +GALLIUM_DRIVERS= R300 R600 RADEONSI SWRAST .endif .if ${ARCH} == sparc64 || ${ARCH} == armv6 --- graphics/libGL/distinfo (revision 431504) +++ graphics/libGL/distinfo (working copy) @@ -1,2 +1,3 @@ -SHA256 (mesa-11.2.2.tar.xz) = 40e148812388ec7c6d7b6657d5a16e2e8dabba8b97ddfceea5197947647bdfb4 -SIZE (mesa-11.2.2.tar.xz) = 7860932 +TIMESTAMP = 1483668696 +SHA256 (mesa-13.0.3.tar.xz) = d9aa8be5c176d00d0cd503cb2f64a5a403ea471ec819c022581414860d7ba40e +SIZE (mesa-13.0.3.tar.xz) = 9162036 --- graphics/libGL/files/configure.ac (revision 431504) +++ graphics/libGL/files/configure.ac (working copy) @@ -1,14 +1,6 @@ ---- configure.ac.orig 2015-12-21 10:05:52.000000000 +0100 -+++ configure.ac 2015-12-22 17:04:25.728359000 +0100 -@@ -78,6 +78,7 @@ - DRI3PROTO_REQUIRED=1.0 - PRESENTPROTO_REQUIRED=1.0 - LIBUDEV_REQUIRED=151 -+LIBDEVQ_REQUIRED=0.0.2 - GLPROTO_REQUIRED=1.4.14 - LIBOMXIL_BELLAGIO_REQUIRED=0.0 - LIBVA_REQUIRED=0.35.0 -@@ -743,7 +744,7 @@ +--- configure.ac.orig 2016-06-21 14:31:09.000000000 +0200 ++++ configure.ac 2016-07-08 13:05:53.236433000 +0200 +@@ -871,7 +872,7 @@ [enable_dri=yes]) case "$host_os" in @@ -17,28 +9,7 @@ dri3_default=yes ;; *) -@@ -1000,6 +1001,9 @@ - PKG_CHECK_MODULES([LIBUDEV], [libudev >= $LIBUDEV_REQUIRED], - have_libudev=yes, have_libudev=no) - -+PKG_CHECK_MODULES([LIBDEVQ], [libdevq-1.0 >= $LIBDEVQ_REQUIRED], -+ have_libdevq=yes, have_libdevq=no) -+ - AC_ARG_ENABLE([sysfs], - [AS_HELP_STRING([--enable-sysfs], - [enable /sys PCI identification @<:@default=disabled@:>@])], -@@ -1096,6 +1100,10 @@ - DEFINES="$DEFINES -DHAVE_LIBUDEV" - have_pci_id=yes - fi -+if test "$have_libdevq" = yes; then -+ DEFINES="$DEFINES -DHAVE_LIBDEVQ" -+ have_pci_id=yes -+fi - - if test "$have_sysfs" = yes; then - DEFINES="$DEFINES -DHAVE_SYSFS" -@@ -1228,6 +1236,23 @@ +@@ -1540,6 +1548,19 @@ ;; gnu*) DEFINES="$DEFINES -DHAVE_ALIAS" @@ -47,10 +18,6 @@ + DEFINES="$DEFINES -DHAVE_DRI3" + fi + -+ if test "x$have_libdevq" != xyes; then -+ AC_MSG_ERROR([libdevq required for building DRI]) -+ fi -+ + case "$host_cpu" in + powerpc* | sparc*) + # Build only the drivers for cards that exist on PowerPC/sparc @@ -62,16 +29,7 @@ ;; cygwin*) if test "x$with_dri_drivers" = "xyes"; then -@@ -1384,6 +1409,8 @@ - AM_CONDITIONAL(HAVE_GBM, test "x$enable_gbm" = xyes) - if test "x$need_pci_id$have_libudev" = xyesyes; then - GBM_PC_REQ_PRIV="libudev >= $LIBUDEV_REQUIRED" -+elif test "x$need_libdevq" = xyes; then -+ GBM_PC_REQ_PRIV="libdevq-1.0 >= $LIBDEVQ_REQUIRED" - else - GBM_PC_REQ_PRIV="" - fi -@@ -1545,9 +1572,19 @@ +@@ -1921,9 +1948,19 @@ AC_MSG_ERROR([cannot enable OpenCL without Gallium]) fi @@ -91,7 +49,20 @@ if test "x$have_libclc" = xno; then AC_MSG_ERROR([pkg-config cannot find libclc.pc which is required to build clover. -@@ -1815,8 +1852,6 @@ +@@ -2102,9 +2139,9 @@ + strip_unwanted_llvm_flags() { + # Use \> (marks the end of the word) + echo `$1` | sed \ +- -e 's/-march=\S*//g' \ +- -e 's/-mtune=\S*//g' \ +- -e 's/-mcpu=\S*//g' \ ++ -e 's/-march=[[:graph:]]* //g' \ ++ -e 's/-mtune=[[:graph:]]* //g' \ ++ -e 's/-mcpu=[[:graph:]]* //g' \ + -e 's/-DNDEBUG\>//g' \ + -e 's/-D_GNU_SOURCE\>//g' \ + -e 's/-pedantic\>//g' \ +@@ -2196,8 +2233,6 @@ CLANG_LIBDIR=${LLVM_LIBDIR} fi CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} --- graphics/libGL/files/patch-configure (revision 431504) +++ graphics/libGL/files/patch-configure (working copy) @@ -1,45 +1,290 @@ ---- configure.orig 2015-12-22 17:04:20.271630000 +0100 -+++ configure 2015-12-22 17:05:17.669976000 +0100 -@@ -858,6 +858,8 @@ - GLPROTO_CFLAGS - XLIBGL_LIBS - XLIBGL_CFLAGS -+LIBDEVQ_LIBS -+LIBDEVQ_CFLAGS - LIBUDEV_LIBS - LIBUDEV_CFLAGS - MESA_LLVM -@@ -1156,6 +1158,8 @@ - LIBDRM_LIBS - LIBUDEV_CFLAGS - LIBUDEV_LIBS -+LIBDEVQ_CFLAGS -+LIBDEVQ_LIBS - XLIBGL_CFLAGS - XLIBGL_LIBS - GLPROTO_CFLAGS -@@ -1966,6 +1970,10 @@ - C compiler flags for LIBUDEV, overriding pkg-config - LIBUDEV_LIBS - linker flags for LIBUDEV, overriding pkg-config -+ LIBDEVQ_CFLAGS -+ C compiler flags for LIBDEVQ, overriding pkg-config -+ LIBDEVQ_LIBS -+ linker flags for LIBDEVQ, overriding pkg-config - XLIBGL_CFLAGS - C compiler flags for XLIBGL, overriding pkg-config - XLIBGL_LIBS linker flags for XLIBGL, overriding pkg-config -@@ -5246,6 +5254,7 @@ - DRI3PROTO_REQUIRED=1.0 - PRESENTPROTO_REQUIRED=1.0 - LIBUDEV_REQUIRED=151 -+LIBDEVQ_REQUIRED=0.0.2 - GLPROTO_REQUIRED=1.4.14 - LIBOMXIL_BELLAGIO_REQUIRED=0.0 - LIBVA_REQUIRED=0.35.0 -@@ -21035,7 +21044,7 @@ +--- configure.orig 2017-01-05 15:52:21 UTC ++++ configure +@@ -1962,7 +1962,7 @@ Optional Features: + Disable writable .text section on x86 (decreases + performance) [default=disabled] + --enable-gallium-llvm build gallium LLVM support [default=enabled on +- x86/x86_64] ++ x86/amd64] + --enable-llvm-shared-libs + link with LLVM shared libraries [default=enabled] + --enable-valgrind Build mesa with valgrind support (default: auto) +@@ -9622,7 +9622,7 @@ mips64*-*linux*) + rm -rf conftest* + ;; +-x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ ++amd64-*kfreebsd*-gnu|amd64-*linux*|powerpc*-*linux*| \ + s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the +@@ -9639,13 +9639,13 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in +- x86_64-*kfreebsd*-gnu) ++ amd64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; +- x86_64-*linux*) ++ amd64-*linux*) + case `/usr/bin/file conftest.o` in + *x86-64*) +- LD="${LD-ld} -m elf32_x86_64" ++ LD="${LD-ld} -m elf32_amd64" + ;; + *) + LD="${LD-ld} -m elf_i386" +@@ -9668,11 +9668,11 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* + ;; + *64-bit*) + case $host in +- x86_64-*kfreebsd*-gnu) +- LD="${LD-ld} -m elf_x86_64_fbsd" ++ amd64-*kfreebsd*-gnu) ++ LD="${LD-ld} -m elf_amd64_fbsd" + ;; +- x86_64-*linux*) +- LD="${LD-ld} -m elf_x86_64" ++ amd64-*linux*) ++ LD="${LD-ld} -m elf_amd64" + ;; + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" +@@ -9754,8 +9754,8 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; } + case $lt_cv_prog_gnu_ld in + yes*) + case $host in +- i?86-*-solaris*|x86_64-*-solaris*) +- LD="${LD-ld} -m elf_x86_64" ++ i?86-*-solaris*|amd64-*-solaris*) ++ LD="${LD-ld} -m elf_amd64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" +@@ -11464,7 +11464,7 @@ lt_prog_compiler_static= + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in +- # old Intel for x86_64, which still supported -KPIC. ++ # old Intel for amd64, which still supported -KPIC. + ecc*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' +@@ -11907,7 +11907,7 @@ $as_echo_n "checking whether the $compil + hardcode_minus_L=no + hardcode_shlibpath_var=unsupported + inherit_rpath=no +- link_all_deplibs=unknown ++ link_all_deplibs=no + module_cmds= + module_expsym_cmds= + old_archive_from_new_cmds= +@@ -12206,7 +12206,7 @@ _LT_EOF + wlarc= + else + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + fi + ;; + +@@ -12225,7 +12225,7 @@ _LT_EOF + _LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + else + ld_shlibs=no + fi +@@ -12254,7 +12254,7 @@ _LT_EOF + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + else + ld_shlibs=no + fi +@@ -12272,7 +12272,7 @@ _LT_EOF + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + else + ld_shlibs=no + fi +@@ -12920,7 +12920,7 @@ $as_echo "$lt_cv_irix_exported_symbol" > + hardcode_direct_absolute=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' +- archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' ++ archive_expsym_cmds='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-version-script,$lib-ver' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' + else +@@ -13769,7 +13769,7 @@ freebsd* | dragonfly*) + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) +- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ++ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no +@@ -14901,7 +14901,7 @@ striplib= + old_striplib= + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 + $as_echo_n "checking whether stripping libraries is possible... " >&6; } +-if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then ++if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +@@ -15153,7 +15153,7 @@ hardcode_automatic_CXX=no + inherit_rpath_CXX=no + module_cmds_CXX= + module_expsym_cmds_CXX= +-link_all_deplibs_CXX=unknown ++link_all_deplibs_CXX=no + old_archive_cmds_CXX=$old_archive_cmds + reload_flag_CXX=$reload_flag + reload_cmds_CXX=$reload_cmds +@@ -15364,7 +15364,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld + # archiving commands below assume that GNU ld is being used. + if test yes = "$with_gnu_ld"; then + archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' +@@ -16056,7 +16056,7 @@ fi + case `$CC -V 2>&1` in + *"Version 7."*) + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= +@@ -16064,7 +16064,7 @@ fi + ia64*) tmp_idyn=' -i_dynamic';; + esac + archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + ;; + esac + archive_cmds_need_lc_CXX=no +@@ -16096,7 +16096,7 @@ fi + ;; + *) # Version 6 and above use weak symbols + archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$lib-ver -o $lib' + ;; + esac + +@@ -16107,7 +16107,7 @@ fi + cxx*) + # Compaq C++ + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' +- archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-version-script $wl$lib-ver' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec_CXX='-rpath $libdir' +@@ -16141,7 +16141,7 @@ fi + # Sun C++ 5.9 + no_undefined_flag_CXX=' -zdefs' + archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' +- archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-version-script $wl$lib-ver' + hardcode_libdir_flag_spec_CXX='-R$libdir' + whole_archive_flag_spec_CXX='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object_CXX=yes +@@ -16209,7 +16209,7 @@ fi + archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then +- archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' ++ archive_expsym_cmds_CXX='echo "{ global:" > $lib-ver~ sed -e "s|$|;|" < $export_symbols >> $lib-ver~ echo "local: *; };" >> $lib-ver~$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-version-script,$lib-ver -o $lib' + export_dynamic_flag_spec_CXX='$wl-E' + whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + fi +@@ -16844,7 +16844,7 @@ lt_prog_compiler_static_CXX= + lt_prog_compiler_pic_CXX='-fPIC' + ;; + ecpc* ) +- # old Intel C++ for x86_64, which still supported -KPIC. ++ # old Intel C++ for amd64, which still supported -KPIC. + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-static' +@@ -17731,7 +17731,7 @@ freebsd* | dragonfly*) + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) +- library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' ++ library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' soname_spec='$libname$release$shared_ext$major' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no +@@ -20328,7 +20328,7 @@ if ac_fn_c_try_compile "$LINENO"; then : + for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do + if test -n "$ac_prev"; then + case $ac_word in +- i?86 | x86_64 | ppc | ppc64) ++ i?86 | amd64 | ppc | ppc64) + if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then + ac_arch=$ac_word + else +@@ -20915,10 +20915,10 @@ asm_arch="" + $as_echo_n "checking whether to enable assembly... " >&6; } + test "x$enable_asm" = xno && { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 + $as_echo "no" >&6; } +-# disable if cross compiling on x86/x86_64 since we must run gen_matypes ++# disable if cross compiling on x86/amd64 since we must run gen_matypes + if test "x$enable_asm" = xyes -a "x$cross_compiling" = xyes; then + case "$host_cpu" in +- i?86 | x86_64 | amd64) ++ i?86 | amd64 | amd64) + if test "x$host_cpu" != "x$target_cpu"; then + enable_asm=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, cross compiling" >&5 +@@ -20937,10 +20937,10 @@ if test "x$enable_asm" = xyes; then + ;; + esac + ;; +- x86_64|amd64) ++ amd64|amd64) + case "$host_os" in + linux* | *freebsd* | dragonfly* | *netbsd* | openbsd*) +- asm_arch=x86_64 ++ asm_arch=amd64 + ;; + esac + ;; +@@ -20959,10 +20959,10 @@ if test "x$enable_asm" = xyes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, x86" >&5 + $as_echo "yes, x86" >&6; } + ;; +- x86_64|amd64) ++ amd64|amd64) + DEFINES="$DEFINES -DUSE_X86_64_ASM" +- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, x86_64" >&5 +-$as_echo "yes, x86_64" >&6; } ++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes, amd64" >&5 ++$as_echo "yes, amd64" >&6; } + ;; + sparc) + DEFINES="$DEFINES -DUSE_SPARC_ASM" +@@ -21955,7 +21955,7 @@ fi + + case "$host_os" in -linux*) +linux*|freebsd*) @@ -46,108 +291,14 @@ dri3_default=yes ;; *) -@@ -21543,6 +21552,78 @@ - have_libudev=yes - fi - -+ -+pkg_failed=no -+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for LIBDEVQ" >&5 -+$as_echo_n "checking for LIBDEVQ... " >&6; } -+ -+if test -n "$LIBDEVQ_CFLAGS"; then -+ pkg_cv_LIBDEVQ_CFLAGS="$LIBDEVQ_CFLAGS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0 >= \$LIBDEVQ_REQUIRED\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0 >= $LIBDEVQ_REQUIRED") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_CFLAGS=`$PKG_CONFIG --cflags "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+if test -n "$LIBDEVQ_LIBS"; then -+ pkg_cv_LIBDEVQ_LIBS="$LIBDEVQ_LIBS" -+ elif test -n "$PKG_CONFIG"; then -+ if test -n "$PKG_CONFIG" && \ -+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libdevq-1.0 >= \$LIBDEVQ_REQUIRED\""; } >&5 -+ ($PKG_CONFIG --exists --print-errors "libdevq-1.0 >= $LIBDEVQ_REQUIRED") 2>&5 -+ ac_status=$? -+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -+ test $ac_status = 0; }; then -+ pkg_cv_LIBDEVQ_LIBS=`$PKG_CONFIG --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>/dev/null` -+ test "x$?" != "x0" && pkg_failed=yes -+else -+ pkg_failed=yes -+fi -+ else -+ pkg_failed=untried -+fi -+ -+ -+ -+if test $pkg_failed = yes; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ -+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then -+ _pkg_short_errors_supported=yes -+else -+ _pkg_short_errors_supported=no -+fi -+ if test $_pkg_short_errors_supported = yes; then -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>&1` -+ else -+ LIBDEVQ_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libdevq-1.0 >= $LIBDEVQ_REQUIRED" 2>&1` -+ fi -+ # Put the nasty error message in config.log where it belongs -+ echo "$LIBDEVQ_PKG_ERRORS" >&5 -+ -+ have_libdevq=no -+elif test $pkg_failed = untried; then -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -+$as_echo "no" >&6; } -+ have_libdevq=no -+else -+ LIBDEVQ_CFLAGS=$pkg_cv_LIBDEVQ_CFLAGS -+ LIBDEVQ_LIBS=$pkg_cv_LIBDEVQ_LIBS -+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -+$as_echo "yes" >&6; } -+ have_libdevq=yes -+fi -+ - # Check whether --enable-sysfs was given. - if test "${enable_sysfs+set}" = set; then : - enableval=$enable_sysfs; have_sysfs="$enableval" -@@ -22258,6 +22339,10 @@ - DEFINES="$DEFINES -DHAVE_LIBUDEV" - have_pci_id=yes - fi -+if test "$have_libdevq" = yes; then -+ DEFINES="$DEFINES -DHAVE_LIBDEVQ" -+ have_pci_id=yes -+fi - - if test "$have_sysfs" = yes; then - DEFINES="$DEFINES -DHAVE_SYSFS" -@@ -22396,6 +22481,22 @@ +@@ -23968,6 +23968,18 @@ if test "x$enable_dri" = xyes; then ;; - gnu*) + *freebsd* | dragonfly* | *netbsd* | openbsd*) DEFINES="$DEFINES -DHAVE_ALIAS" + if test "x$enable_dri3" = xyes; then + DEFINES="$DEFINES -DHAVE_DRI3" + fi + -+ if test "x$have_libdevq" != xyes; then -+ as_fn_error $? "libdevq required for building DRI" "$LINENO" 5 -+ fi -+ + case "$host_cpu" in + powerpc* | sparc*) + # Build only the drivers for cards that exist on PowerPC/sparc @@ -157,18 +308,9 @@ + ;; + esac ;; - cygwin*) - if test "x$with_dri_drivers" = "xyes"; then -@@ -23195,6 +23296,8 @@ - - if test "x$need_pci_id$have_libudev" = xyesyes; then - GBM_PC_REQ_PRIV="libudev >= $LIBUDEV_REQUIRED" -+elif test "x$need_libdevq" = xyes; then -+ GBM_PC_REQ_PRIV="libdevq-1.0 >= $LIBDEVQ_REQUIRED" - else - GBM_PC_REQ_PRIV="" - fi -@@ -24018,9 +24121,19 @@ + gnu*) + DEFINES="$DEFINES -DHAVE_ALIAS" +@@ -25849,9 +25861,19 @@ if test "x$enable_opencl" = xyes; then as_fn_error $? "cannot enable OpenCL without Gallium" "$LINENO" 5 fi @@ -188,7 +330,63 @@ if test "x$have_libclc" = xno; then as_fn_error $? "pkg-config cannot find libclc.pc which is required to build clover. -@@ -24835,9 +24948,6 @@ +@@ -26375,26 +26397,26 @@ fi + strip_unwanted_llvm_flags() { + # Use \> (marks the end of the word) + echo `$1` | sed \ +- -e 's/-march=\S*//g' \ +- -e 's/-mtune=\S*//g' \ +- -e 's/-mcpu=\S*//g' \ +- -e 's/-DNDEBUG\>//g' \ +- -e 's/-D_GNU_SOURCE\>//g' \ +- -e 's/-pedantic\>//g' \ +- -e 's/-Wcovered-switch-default\>//g' \ +- -e 's/-O.\>//g' \ +- -e 's/-g\>//g' \ +- -e 's/-Wall\>//g' \ +- -e 's/-Wcast-qual\>//g' \ +- -e 's/-Woverloaded-virtual\>//g' \ +- -e 's/-fcolor-diagnostics\>//g' \ +- -e 's/-fdata-sections\>//g' \ +- -e 's/-ffunction-sections\>//g' \ +- -e 's/-fno-exceptions\>//g' \ +- -e 's/-fomit-frame-pointer\>//g' \ +- -e 's/-fvisibility-inlines-hidden\>//g' \ +- -e 's/-fPIC\>//g' \ +- -e 's/-fstack-protector-strong\>//g' ++ -e 's/-march=[:graph:]* //g' \ ++ -e 's/-mtune=[:graph:]* //g' \ ++ -e 's/-mcpu=[:graph:]* //g' \ ++ -e 's/-DNDEBUG[[:>:]]//g' \ ++ -e 's/-D_GNU_SOURCE[[:>:]]//g' \ ++ -e 's/-pedantic[[:>:]]//g' \ ++ -e 's/-Wcovered-switch-default[[:>:]]//g' \ ++ -e 's/-O.[[:>:]]//g' \ ++ -e 's/-g[[:>:]]//g' \ ++ -e 's/-Wall[[:>:]]//g' \ ++ -e 's/-Wcast-qual[[:>:]]//g' \ ++ -e 's/-Woverloaded-virtual[[:>:]]//g' \ ++ -e 's/-fcolor-diagnostics[[:>:]]//g' \ ++ -e 's/-fdata-sections[[:>:]]//g' \ ++ -e 's/-ffunction-sections[[:>:]]//g' \ ++ -e 's/-fno-exceptions[[:>:]]//g' \ ++ -e 's/-fomit-frame-pointer[[:>:]]//g' \ ++ -e 's/-fvisibility-inlines-hidden[[:>:]]//g' \ ++ -e 's/-fPIC[[:>:]]//g' \ ++ -e 's/-fstack-protector-strong[[:>:]]//g' + } + + llvm_check_version_for() { +@@ -26410,7 +26432,7 @@ if test -z "$with_gallium_drivers"; then + fi + if test "x$enable_gallium_llvm" = xauto; then + case "$host_cpu" in +- i*86|x86_64|amd64) enable_gallium_llvm=yes;; ++ i*86|amd64|amd64) enable_gallium_llvm=yes;; + esac + fi + if test "x$enable_gallium_llvm" = xyes || test "x$HAVE_RADEON_VULKAN" = xyes; then +@@ -26670,9 +26692,6 @@ fi CLANG_LIBDIR=${LLVM_LIBDIR} fi CLANG_RESOURCE_DIR=$CLANG_LIBDIR/clang/${LLVM_VERSION} @@ -198,3 +396,30 @@ fi else MESA_LLVM=0 +@@ -26752,7 +26771,7 @@ gallium_require_llvm() { + if test "x$MESA_LLVM" = x0; then + case "$host" in *gnux32) return;; esac + case "$host_cpu" in +- i*86|x86_64|amd64) as_fn_error $? "LLVM is required to build $1 on x86 and x86_64" "$LINENO" 5;; ++ i*86|amd64|amd64) as_fn_error $? "LLVM is required to build $1 on x86 and amd64" "$LINENO" 5;; + esac + fi + } +@@ -28207,7 +28226,7 @@ else + fi + + +- if test "x$asm_arch" = xx86 -o "x$asm_arch" = xx86_64; then ++ if test "x$asm_arch" = xx86 -o "x$asm_arch" = xamd64; then + HAVE_X86_ASM_TRUE= + HAVE_X86_ASM_FALSE='#' + else +@@ -28215,7 +28234,7 @@ else + HAVE_X86_ASM_FALSE= + fi + +- if test "x$asm_arch" = xx86_64; then ++ if test "x$asm_arch" = xamd64; then + HAVE_X86_64_ASM_TRUE= + HAVE_X86_64_ASM_FALSE='#' + else --- graphics/libGL/files/patch-include__GL__internal__dri_interface.h (revision 431504) +++ graphics/libGL/files/patch-include__GL__internal__dri_interface.h (working copy) @@ -1,8 +1,8 @@ GCC on 9.x doesn't allow types to be overwritten, these types are defined in drm.h also, which causes build issues in xorg-server. ---- include/GL/internal/dri_interface.h.orig 2015-12-05 10:55:50.545108000 +0100 -+++ include/GL/internal/dri_interface.h 2015-12-05 10:56:03.408589000 +0100 +--- include/GL/internal/dri_interface.h.orig 2016-11-10 22:05:17 UTC ++++ include/GL/internal/dri_interface.h @@ -40,13 +40,7 @@ #ifndef DRI_INTERFACE_H #define DRI_INTERFACE_H --- graphics/libGL/files/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c (revision 431504) +++ graphics/libGL/files/patch-src__gallium__auxiliary__pipe-loader__pipe_loader_drm.c (working copy) @@ -25,9 +25,9 @@ Reviewed-by: Francisco Jerez ---- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c.orig 2015-12-21 10:05:52.000000000 +0100 -+++ src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c 2015-12-22 20:18:18.734280000 +0100 -@@ -90,6 +90,14 @@ pipe_loader_drm_probe_fd(struct pipe_loa +--- src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c.orig 2016-11-10 22:05:17 UTC ++++ src/gallium/auxiliary/pipe-loader/pipe_loader_drm.c +@@ -215,6 +215,14 @@ pipe_loader_drm_probe_fd(struct pipe_loa } static int @@ -42,7 +42,7 @@ open_drm_render_node_minor(int minor) { char path[PATH_MAX]; -@@ -101,8 +109,15 @@ open_drm_render_node_minor(int minor) +@@ -226,8 +234,15 @@ open_drm_render_node_minor(int minor) int pipe_loader_drm_probe(struct pipe_loader_device **devs, int ndev) { @@ -58,8 +58,8 @@ + /* Look for render nodes first */ for (i = DRM_RENDER_NODE_MIN_MINOR, j = 0; i <= DRM_RENDER_NODE_MAX_MINOR; i++) { - fd = open_drm_render_node_minor(i); -@@ -115,6 +130,9 @@ pipe_loader_drm_probe(struct pipe_loader + struct pipe_loader_device *dev; +@@ -241,6 +256,9 @@ pipe_loader_drm_probe(struct pipe_loader continue; } @@ -69,7 +69,7 @@ if (j < ndev) { devs[j] = dev; } else { -@@ -124,6 +142,46 @@ pipe_loader_drm_probe(struct pipe_loader +@@ -250,6 +268,46 @@ pipe_loader_drm_probe(struct pipe_loader j++; } --- graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h (revision 431504) +++ graphics/libGL/files/patch-src__gallium__include__pipe__p_config.h (working copy) @@ -1,7 +1,7 @@ ---- src/gallium/include/pipe/p_config.h.orig 2015-11-29 13:40:59 UTC +--- src/gallium/include/pipe/p_config.h.orig 2016-11-10 22:05:17 UTC +++ src/gallium/include/pipe/p_config.h -@@ -81,6 +81,13 @@ - #define PIPE_CC_SUNPRO +@@ -76,6 +76,13 @@ + #define PIPE_CC_ICL #endif +#if defined(__sparc__) || defined(__sparc64__) @@ -14,7 +14,7 @@ /* * Processor architecture -@@ -171,7 +178,7 @@ +@@ -130,7 +137,7 @@ #if defined(PIPE_ARCH_X86) || defined(PIPE_ARCH_X86_64) || defined(PIPE_ARCH_ARM) || defined(PIPE_ARCH_AARCH64) #define PIPE_ARCH_LITTLE_ENDIAN @@ -23,7 +23,7 @@ #define PIPE_ARCH_BIG_ENDIAN #endif -@@ -200,6 +207,12 @@ +@@ -159,6 +166,12 @@ #define PIPE_OS_ANDROID #endif --- graphics/libGL/files/patch-src__gallium__state_trackers__clover__util__range.hpp (revision 431504) +++ graphics/libGL/files/patch-src__gallium__state_trackers__clover__util__range.hpp (working copy) @@ -5,13 +5,7 @@ See: https://bugs.freedesktop.org/show_bug.cgi?id=74098#c3 ---- - src/gallium/state_trackers/clover/util/range.hpp | 8 +++++++- - 1 file changed, 7 insertions(+), 1 deletion(-) - -diff --git a/src/gallium/state_trackers/clover/util/range.hpp b/src/gallium/state_trackers/clover/util/range.hpp -index afa5f77..359edda 100644 ---- src/gallium/state_trackers/clover/util/range.hpp +--- src/gallium/state_trackers/clover/util/range.hpp.orig 2016-11-10 22:05:17 UTC +++ src/gallium/state_trackers/clover/util/range.hpp @@ -362,6 +362,12 @@ namespace clover { return { i, i + n }; @@ -35,6 +29,3 @@ map(F &&f, Rs &&... rs) { return { std::forward(f), std::forward(rs)... }; } --- -1.8.5.4 - --- graphics/libGL/files/patch-src__gallium__winsys__svga__drm__vmw_screen_ioctl.c (revision 431504) +++ graphics/libGL/files/patch-src__gallium__winsys__svga__drm__vmw_screen_ioctl.c (working copy) @@ -1,8 +1,8 @@ ---- ./src/gallium/winsys/svga/drm/vmw_screen_ioctl.c.orig 2014-01-06 22:15:40.000000000 +0100 -+++ ./src/gallium/winsys/svga/drm/vmw_screen_ioctl.c 2014-02-23 22:01:50.000000000 +0100 -@@ -66,6 +66,11 @@ - */ - #define SVGA3D_SURFACE_HINT_SCANOUT (1 << 9) +--- src/gallium/winsys/svga/drm/vmw_screen_ioctl.c.orig 2016-11-10 22:05:17 UTC ++++ src/gallium/winsys/svga/drm/vmw_screen_ioctl.c +@@ -70,6 +70,11 @@ vmw_region_size(struct vmw_region *regio + return region->size; + } +#if defined(__DragonFly__) || defined(__FreeBSD__) || \ + defined(__NetBSD__) || defined(__OpenBSD__) --- graphics/libGL/files/patch-src__loader__Makefile.in (revision 431504) +++ graphics/libGL/files/patch-src__loader__Makefile.in (nonexistent) @@ -1,11 +0,0 @@ ---- src/loader/Makefile.in.orig 2015-12-04 10:21:50.951759000 +0100 -+++ src/loader/Makefile.in 2015-12-04 10:27:14.391665000 +0100 -@@ -531,7 +531,7 @@ - $(LIBDRM_CFLAGS) \ - $(LIBUDEV_CFLAGS) - --libloader_la_CPPFLAGS = $(AM_CPPFLAGS) $(am__append_1) -+libloader_la_CPPFLAGS = $(AM_CPPFLAGS) $(LIBDEVQ_CFLAGS) $(am__append_1) - libloader_la_SOURCES = $(LOADER_C_FILES) - libloader_la_LIBADD = $(am__append_2) $(am__append_3) - @HAVE_DRI3_TRUE@libloader_dri3_helper_la_SOURCES = \ --- graphics/libGL/files/patch-src__loader__loader.c (revision 431504) +++ graphics/libGL/files/patch-src__loader__loader.c (nonexistent) @@ -1,91 +0,0 @@ ---- src/loader/loader.c.orig 2015-08-22 12:01:00.000000000 +0200 -+++ src/loader/loader.c 2015-08-24 10:50:05.251081000 +0200 -@@ -70,7 +70,7 @@ - #include - #include - #include --#ifdef HAVE_LIBUDEV -+#if defined(HAVE_LIBUDEV) || defined(HAVE_LIBDEVQ) - #include - #include - #include -@@ -505,6 +505,54 @@ sysfs_get_pci_id_for_fd(int fd, int *ven - } - #endif - -+#if defined(HAVE_LIBDEVQ) -+#include -+ -+static void *devq_handle = NULL; -+ -+static void * -+devq_dlopen_handle(void) -+{ -+ if (!devq_handle) { -+ devq_handle = dlopen("libdevq.so.0", RTLD_LOCAL | RTLD_LAZY); -+ } -+ -+ return devq_handle; -+} -+ -+static void * -+asserted_dlsym(void *dlopen_handle, const char *name) -+{ -+ void *result = dlsym(dlopen_handle, name); -+ assert(result); -+ return result; -+} -+ -+#define DEVQ_SYMBOL(ret, name, args) \ -+ ret (*name) args = asserted_dlsym(devq_dlopen_handle(), #name); -+ -+static int -+devq_get_pci_id_from_fd(int fd, int *vendor_id, int *chip_id) -+{ -+ int ret; -+ DEVQ_SYMBOL(int, devq_device_get_pciid_from_fd, -+ (int fd, int *vendor_id, int *chip_id)); -+ -+ *chip_id = -1; -+ -+ ret = devq_device_get_pciid_from_fd(fd, vendor_id, chip_id); -+ if (ret < 0) { -+ log_(_LOADER_WARNING, "MESA-LOADER: could not get PCI ID\n"); -+ goto out; -+ } -+ -+out: -+ return (*chip_id >= 0); -+} -+ -+#endif -+ -+ - #if defined(HAVE_LIBDRM) - /* for i915 */ - #include -@@ -588,6 +636,10 @@ loader_get_pci_id_for_fd(int fd, int *ve - if (sysfs_get_pci_id_for_fd(fd, vendor_id, chip_id)) - return 1; - #endif -+#if HAVE_LIBDEVQ -+ if (devq_get_pci_id_from_fd(fd, vendor_id, chip_id)) -+ return 1; -+#endif - #if HAVE_LIBDRM - if (drm_get_pci_id_for_fd(fd, vendor_id, chip_id)) - return 1; -@@ -685,6 +737,13 @@ loader_get_device_name_for_fd(int fd) - if ((result = sysfs_get_device_name_for_fd(fd))) - return result; - #endif -+#if HAVE_LIBDEVQ -+#if 0 -+/* XXX implement this function in libdevq */ -+ if ((result = devq_device_get_name_for_fd(fd))) -+ return result; -+#endif -+#endif - return result; - } - --- graphics/libGL/files/patch-src__mapi__entry_x86-64_tls.h (revision 431504) +++ graphics/libGL/files/patch-src__mapi__entry_x86-64_tls.h (nonexistent) @@ -1,13 +0,0 @@ ---- src/mapi/entry_x86-64_tls.h.orig 2013-10-05 05:59:22.000000000 +0200 -+++ src/mapi/entry_x86-64_tls.h 2014-07-29 20:28:05.000000000 +0200 -@@ -63,8 +63,8 @@ entry_patch_public(void) - { - } - --static char --x86_64_entry_start[]; -+extern char -+x86_64_entry_start[] __attribute__((visibility("hidden"))); - - mapi_func - entry_get_public(int slot) --- graphics/libGL/files/patch-src__mapi__entry_x86_tls.h (revision 431504) +++ graphics/libGL/files/patch-src__mapi__entry_x86_tls.h (nonexistent) @@ -1,13 +0,0 @@ ---- src/mapi/entry_x86_tls.h.orig 2013-10-05 05:59:22.000000000 +0200 -+++ src/mapi/entry_x86_tls.h 2014-07-29 20:28:05.000000000 +0200 -@@ -73,8 +73,8 @@ __asm__(".text"); - extern unsigned long - x86_current_tls(); - --static char x86_entry_start[]; --static char x86_entry_end[]; -+extern char x86_entry_start[] __attribute__((visibility("hidden"))); -+extern char x86_entry_end[] __attribute__((visibility("hidden"))); - - void - entry_patch_public(void) --- graphics/libGL/files/patch-src__mapi__entry_x86_tsd.h (revision 431504) +++ graphics/libGL/files/patch-src__mapi__entry_x86_tsd.h (nonexistent) @@ -1,13 +0,0 @@ ---- src/mapi/entry_x86_tsd.h.orig 2013-10-05 05:59:22.000000000 +0200 -+++ src/mapi/entry_x86_tsd.h 2014-07-29 20:28:05.000000000 +0200 -@@ -60,8 +60,8 @@ __asm__(".balign 32\n" - #include - #include "u_execmem.h" - --static const char x86_entry_start[]; --static const char x86_entry_end[]; -+extern const char x86_entry_start[] __attribute__((visibility("hidden"))); -+extern const char x86_entry_end[] __attribute__((visibility("hidden"))); - - void - entry_patch_public(void) --- graphics/libGL/files/patch-src__mapi__glapi__gen__gl_gentable.py (revision 431504) +++ graphics/libGL/files/patch-src__mapi__glapi__gen__gl_gentable.py (working copy) @@ -1,6 +1,6 @@ ---- src/mapi/glapi/gen/gl_gentable.py.orig 2014-11-21 13:09:28.624910062 +0100 -+++ src/mapi/glapi/gen/gl_gentable.py 2014-11-21 13:10:48.294268333 +0100 -@@ -42,7 +42,7 @@ +--- src/mapi/glapi/gen/gl_gentable.py.orig 2017-01-06 02:14:06 UTC ++++ src/mapi/glapi/gen/gl_gentable.py +@@ -44,7 +44,7 @@ header = """/* GLXEXT is the define used #endif #if (defined(GLXEXT) && defined(HAVE_BACKTRACE)) \\ --- graphics/libGL/files/patch-src__mesa__main__compiler.h (revision 431504) +++ graphics/libGL/files/patch-src__mesa__main__compiler.h (working copy) @@ -1,6 +1,6 @@ ---- src/mesa/main/compiler.h.orig 2015-06-07 06:45:48.000000000 -0400 -+++ src/mesa/main/compiler.h 2015-06-16 05:04:53.967546000 -0400 -@@ -70,6 +70,9 @@ +--- src/mesa/main/compiler.h.orig 2016-11-10 22:05:17 UTC ++++ src/mesa/main/compiler.h +@@ -56,6 +56,9 @@ extern "C" { #if defined(__linux__) #include #define CPU_TO_LE32( x ) bswap_32( x ) --- graphics/libGL/files/patch-src_gallium_auxiliary_util_u__network.c (nonexistent) +++ graphics/libGL/files/patch-src_gallium_auxiliary_util_u__network.c (working copy) @@ -0,0 +1,11 @@ +--- src/gallium/auxiliary/util/u_network.c.orig 2016-11-10 22:05:17 UTC ++++ src/gallium/auxiliary/util/u_network.c +@@ -6,7 +6,7 @@ + #if defined(PIPE_SUBSYSTEM_WINDOWS_USER) + # include + # include +-#elif defined(PIPE_OS_LINUX) || defined(PIPE_OS_HAIKU) || \ ++#elif defined(PIPE_OS_LINUX) || defined(PIPE_OS_BSD) || defined(PIPE_OS_HAIKU) || \ + defined(PIPE_OS_APPLE) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_SOLARIS) + # include + # include --- graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_invocation.cpp (nonexistent) +++ graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_invocation.cpp (working copy) @@ -0,0 +1,30 @@ +# fix errors like the following +# +# llvm/invocation.cpp:(.text+0x1275): undefined reference to `std::__1::basic_string, std::__1::allocator >::c_str() + const' +# /usr/bin/ld: ../../../../src/gallium/state_trackers/clover/.libs/libclover.a(libclllvm_la-invocation.o): relocation R_X86_64_PC32 against `_ZNKSt3__112bas +ic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE5c_strEv' can not be used when making a shared object; recompile with -fPIC +# /usr/bin/ld: final link failed: Bad value +# +--- src/gallium/state_trackers/clover/llvm/invocation.cpp.orig 2016-11-28 15:34:30 UTC ++++ src/gallium/state_trackers/clover/llvm/invocation.cpp +@@ -93,6 +93,8 @@ namespace { + return ctx; + } + ++ const char* cstr(const std::string& str) { return str.c_str(); } ++ + std::unique_ptr + create_compiler_instance(const target &target, + const std::vector &opts, +@@ -104,8 +106,8 @@ namespace { + // Parse the compiler options. A file name should be present at the end + // and must have the .cl extension in order for the CompilerInvocation + // class to recognize it as an OpenCL source file. +- const std::vector copts = +- map(std::mem_fn(&std::string::c_str), opts); ++ std::vector copts; ++ std::transform(opts.begin(), opts.end(), copts.begin(), cstr); + + if (!clang::CompilerInvocation::CreateFromArgs( + c->getInvocation(), copts.data(), copts.data() + copts.size(), diag)) --- graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_metadata.hpp (nonexistent) +++ graphics/libGL/files/patch-src_gallium_state__trackers_clover_llvm_metadata.hpp (working copy) @@ -0,0 +1,13 @@ +# Fix error: no matching constructor for initialization of 'std::vector' +# +--- src/gallium/state_trackers/clover/llvm/metadata.hpp.orig 2016-11-10 22:05:17 UTC ++++ src/gallium/state_trackers/clover/llvm/metadata.hpp +@@ -42,7 +42,7 @@ namespace clover { + get_kernel_nodes(const ::llvm::Module &mod) { + if (const ::llvm::NamedMDNode *n = + mod.getNamedMetadata("opencl.kernels")) +- return { n->op_begin(), n->op_end() }; ++ return { n->getOperand(0), n->getOperand(n->getNumOperands()) }; + else + return {}; + } --- graphics/libGL/files/patch-src_intel_tools_aubinator.c (nonexistent) +++ graphics/libGL/files/patch-src_intel_tools_aubinator.c (working copy) @@ -0,0 +1,14 @@ +# We don't have MAP_NORESERVE so use MAP_NOSYNC | MAP_NOCORE and +# hope for the best (this alloc is too big but it's only a test) +# +--- src/intel/tools/aubinator.c.orig 2016-11-28 15:34:30 UTC ++++ src/intel/tools/aubinator.c +@@ -1226,7 +1226,7 @@ int main(int argc, char *argv[]) + /* mmap a terabyte for our gtt space. */ + gtt_size = 1ul << 40; + gtt = mmap(NULL, gtt_size, PROT_READ | PROT_WRITE, +- MAP_PRIVATE | MAP_ANONYMOUS | MAP_NORESERVE, -1, 0); ++ MAP_PRIVATE | MAP_ANONYMOUS | MAP_NOSYNC | MAP_NOCORE, -1, 0); + if (gtt == MAP_FAILED) { + fprintf(stderr, "failed to alloc gtt space: %s\n", strerror(errno)); + exit(EXIT_FAILURE); --- graphics/libGL/files/patch-src_util_ralloc.c (revision 431504) +++ graphics/libGL/files/patch-src_util_ralloc.c (working copy) @@ -1,6 +1,6 @@ ---- src/util/ralloc.c.orig 2015-08-07 17:36:03 UTC +--- src/util/ralloc.c.orig 2016-11-28 15:34:30 UTC +++ src/util/ralloc.c -@@ -311,6 +311,7 @@ ralloc_parent(const void *ptr) +@@ -315,6 +315,7 @@ ralloc_parent(const void *ptr) static void *autofree_context = NULL; @@ -8,7 +8,7 @@ static void autofree(void) { -@@ -322,7 +323,6 @@ ralloc_autofree_context(void) +@@ -326,7 +327,6 @@ ralloc_autofree_context(void) { if (unlikely(autofree_context == NULL)) { autofree_context = ralloc_context(NULL); --- graphics/libGL/files/patch-src_util_u__endian.h (nonexistent) +++ graphics/libGL/files/patch-src_util_u__endian.h (working copy) @@ -0,0 +1,11 @@ +--- src/util/u_endian.h.orig 2016-11-10 22:05:17 UTC ++++ src/util/u_endian.h +@@ -54,7 +54,7 @@ + # define PIPE_ARCH_BIG_ENDIAN + #endif + +-#elif defined(__OpenBSD__) || defined(__NetBSD__) ++#elif defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) + #include + #include + --- graphics/libGL/files/src__loader__Makefile.am (revision 431504) +++ graphics/libGL/files/src__loader__Makefile.am (nonexistent) @@ -1,12 +0,0 @@ ---- src/loader/Makefile.am.orig 2015-02-13 11:41:50.497483000 +0100 -+++ src/loader/Makefile.am 2015-02-13 11:42:02.748812000 +0100 -@@ -30,7 +30,8 @@ - -I$(top_srcdir)/include \ - -I$(top_srcdir)/src \ - $(VISIBILITY_CFLAGS) \ -- $(LIBUDEV_CFLAGS) -+ $(LIBUDEV_CFLAGS) \ -+ $(LIBDEVQ_CFLAGS) - - libloader_la_SOURCES = $(LOADER_C_FILES) - libloader_la_LIBADD = --- graphics/libGL/pkg-plist (revision 431504) +++ graphics/libGL/pkg-plist (working copy) @@ -5,8 +5,6 @@ include/GL/glx.h include/GL/glx_mangle.h include/GL/glxext.h -@comment include/GL/osmesa.h -include/GL/wglext.h lib/.mesa/libGL.so lib/.mesa/libGL.so.1 lib/.mesa/libGL.so.1.2.0 --- graphics/libglesv2/pkg-plist (revision 431504) +++ graphics/libglesv2/pkg-plist (working copy) @@ -3,6 +3,7 @@ include/GLES2/gl2platform.h include/GLES3/gl3.h include/GLES3/gl31.h +include/GLES3/gl32.h include/GLES3/gl3ext.h include/GLES3/gl3platform.h lib/.mesa/libGLESv2.so --- graphics/libosmesa/distinfo (revision 431504) +++ graphics/libosmesa/distinfo (nonexistent) @@ -1,2 +0,0 @@ -SHA256 (MesaLib-10.2.7.tar.bz2) = 27b958063a4c002071f14ed45c7d2a1ee52cd85e4ac8876e8a1c273495a7d43f -SIZE (MesaLib-10.2.7.tar.bz2) = 7107753