Index: head/graphics/mesa-dri/Makefile =================================================================== --- head/graphics/mesa-dri/Makefile (revision 548828) +++ head/graphics/mesa-dri/Makefile (revision 548829) @@ -1,136 +1,133 @@ # Created by: Eric Anholt # $FreeBSD$ PORTNAME= mesa-dri PORTVERSION= ${MESAVERSION} PORTREVISION= 9 CATEGORIES= graphics COMMENT= OpenGL hardware acceleration drivers for DRI2+ -USES= xorg -USE_XORG= xorgproto x11 xdamage xext xfixes xshmfence - OPTIONS_GROUP= PLATFORM OPTIONS_GROUP_PLATFORM= PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS PLATFORM_X11_DESC= Enable X11 support for GBM/EGL PLATFORM_WAYLAND_DESC= Enable Wayland support for GBM/EGL PLATFORM_DRM_DESC= Enable DRM support for GBM/EGL PLATFORM_SURFACELESS_DESC= Enable Surfaceless support for GBM/EGL PLATFORM_WAYLAND_IMPLIES= WAYLAND OPTIONS_DEFINE= VAAPI VDPAU WAYLAND OPTIONS_DEFAULT=WAYLAND PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS OPTIONS_SUB= yes VAAPI_MESON_ON= -Dgallium-va=true VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VAAPI_USE= XORG=xcb VDPAU_MESON_ON= -Dgallium-vdpau=true VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau WAYLAND_DESC= Enable support for the Wayland platform in Vulkan drivers WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland WAYLAND_IMPLIES= PLATFORM_WAYLAND .include .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common" ALL_DRI_DRIVERS= I915 I965 R100 R200 SWRAST ALL_GALLIUM_DRIVERS= R300 R600 RADEONSI SVGA SWRAST ALL_VULKAN_DRIVERS= INTEL AMD .if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH} == i386 || ${ARCH} == powerpc64 GALLIUM_DRIVERS+= SWRAST # llvmpipe .elif ${ARCH:Marm*} || ${ARCH:Mmips*} || ${ARCH:Mpowerpc*} DRI_DRIVERS+= SWRAST # Mesa Classic swrast .endif .if ${ARCH} == aarch64 || ${ARCH} == amd64 || ${ARCH} == i386 \ || ${ARCH} == powerpc || ${ARCH} == powerpc64 DRI_DRIVERS+= R100 R200 GALLIUM_DRIVERS+= R300 R600 RADEONSI VULKAN_DRIVERS+= AMD . if ${PORT_OPTIONS:MPLATFORM_X11} -USE_XORG+= xv xvmc MESON_ARGS+= -Dgallium-xvmc=true +USE_XORG+= xvmc . endif .endif .if ${ARCH} == amd64 || ${ARCH} == i386 DRI_DRIVERS+= I915 I965 GALLIUM_DRIVERS+= SVGA . if ${OPSYS} == FreeBSD EXTRA_PATCHES+= ${PATCHDIR}/extra-src_mesa_drivers_dri_i965_intel__screen.c . endif VULKAN_DRIVERS+= INTEL .endif -.if defined(VULKAN_DRIVERS) -USE_XORG+= xcb xrandr -.endif - LDFLAGS_i386= -Wl,-znotext .if ${PORT_OPTIONS:MPLATFORM_X11} MESA_PLATFORMS+= x11 +USE_XORG+= xorgproto x11 xdamage xext xfixes xshmfence xv +.if defined(VULKAN_DRIVERS) +USE_XORG+= xcb xrandr +.endif .endif .if ${PORT_OPTIONS:MPLATFORM_DRM} MESA_PLATFORMS+= drm .endif .if ${PORT_OPTIONS:MPLATFORM_SURFACELESS} MESA_PLATFORMS+= surfaceless .endif .if ${PORT_OPTIONS:MPLATFORM_WAYLAND} MESA_PLATFORMS+= wayland .endif MESON_ARGS+= -Ddri-drivers="${DRI_DRIVERS:ts,:tl}" \ -Dgallium-drivers="${GALLIUM_DRIVERS:ts,:tl}" \ -Dvulkan-drivers="${VULKAN_DRIVERS:ts,:tl}" \ -Dplatforms="${MESA_PLATFORMS:ts,:tl}" # Disable some options MESON_ARGS+= -Dgallium-xa=false \ -Dgles1=false \ -Dgles2=false \ -Dglx=disabled \ -Degl=false \ -Dosmesa=none \ -Dtools="" .for _d in ${ALL_DRI_DRIVERS} . if defined(DRI_DRIVERS) && ${DRI_DRIVERS:M${_d}} PLIST_SUB+= ${_d}_DRIVER="" . else PLIST_SUB+= ${_d}_DRIVER="@comment " . endif .endfor .for _gd in ${ALL_GALLIUM_DRIVERS} . if defined(GALLIUM_DRIVERS) && ${GALLIUM_DRIVERS:M${_gd}} PLIST_SUB+= ${_gd}_GDRIVER="" . else PLIST_SUB+= ${_gd}_GDRIVER="@comment " . endif .endfor PLIST_SUB += ARCH=${ARCH:S/amd/x86_/} .for _vd in ${ALL_VULKAN_DRIVERS} . if defined(VULKAN_DRIVERS) && ${VULKAN_DRIVERS:M${_vd}} PLIST_SUB+= ${_vd}_VDRIVER="" . else PLIST_SUB+= ${_vd}_VDRIVER="@comment " . endif .endfor .include "${MASTERDIR}/Makefile.targets" post-install: @${RM} -r ${STAGEDIR}/etc/OpenCL .include Index: head/graphics/mesa-dri/Makefile.common =================================================================== --- head/graphics/mesa-dri/Makefile.common (revision 548828) +++ head/graphics/mesa-dri/Makefile.common (revision 548829) @@ -1,110 +1,112 @@ # Makefile.common - shared code between MesaLib ports. # # !!! Here be dragons !!! (they seem to be everywhere these days) # # Remember to upgrade the following ports everytime you bump MESAVERSION: # # - graphics/libosmesa # - graphics/mesa-dri # - graphics/mesa-libs # - lang/clover # # $FreeBSD$ MESAVERSION= ${MESABASEVERSION}${MESASUBVERSION:C/^(.)/.\1/} MESADISTVERSION=${MESABASEVERSION}${MESASUBVERSION:C/^(.)/-\1/} MESABASEVERSION= 19.0.8 # if there is a subversion, don't include the '-' between 7.11-rc2. MESASUBVERSION= MASTER_SITES= https://mesa.freedesktop.org/archive/ \ https://mesa.freedesktop.org/archive/${MESABASEVERSION}/ \ ftp://ftp.freedesktop.org/pub/mesa/ \ ftp://ftp.freedesktop.org/pub/mesa/${MESABASEVERSION}/ DISTFILES= mesa-${MESADISTVERSION}${EXTRACT_SUFX} MAINTAINER= x11@FreeBSD.org COMPONENT= ${PORTNAME:tl:C/^lib//:C/mesa-//} BUILD_DEPENDS+= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs \ ${PYTHON_PKGNAMEPREFIX}mako>0:textproc/py-mako@${PY_FLAVOR} LIB_DEPENDS+= libexpat.so:textproc/expat2 .if ${COMPONENT} != clover -USES+= xorg +.if ${PORT_OPTIONS:MPLATFORM_X11} +USES+= xorg +.endif .endif .if ${COMPONENT} != osmesa LIB_DEPENDS+= libdrm.so:graphics/libdrm .endif .if ${COMPONENT} != libs LIB_DEPENDS+= libglapi.so:graphics/mesa-libs .endif .if ${ARCH} == amd64 || ${ARCH} == i386 LIB_DEPENDS+= libunwind.so:devel/libunwind .endif .if ${OPSYS} == DragonFly LIB_DEPENDS+= libelf.so:devel/libelf .endif USES+= compiler:c++11-lib bison meson pathfix pkgconfig \ python:3.6+,build shebangfix tar:xz USE_LDCONFIG= yes .if ${/usr/bin/ld:L:tA} != /usr/bin/ld.lld # --build-id isn't supported by old GNU ld.bfd in base # Also ld.bfd have problems that seems related to --as-needed USE_BINUTILS= yes LDFLAGS+= -B${LOCALBASE}/bin .endif # only have one port to check with portscout. .if ${PORTNAME} != mesa-dri PORTSCOUT= ignore:1 .endif python_OLD_CMD= /usr/bin/env[[:space:]]python2 /usr/bin/python2 /bin/env[[:space:]]python SHEBANG_FILES= src/gallium/*/*/*.py src/gallium/tools/trace/*.py \ src/gallium/drivers/svga/svgadump/svga_dump.py \ src/mapi/glapi/gen/*.py src/mapi/mapi_abi.py \ src/util/xmlpool/gen_xmlpool.py \ src/mesa/main/get_*.py src/util/format_srgb.py \ src/amd/*/*.py src/intel/genxml/gen_pack_header.py MASTERDIR= ${.CURDIR:H:H}/graphics/mesa-dri PATCHDIR= ${MASTERDIR}/files WRKSRC= ${WRKDIR}/mesa-${MESADISTVERSION} DESCR= ${.CURDIR}/pkg-descr PLIST= ${.CURDIR}/pkg-plist PKGHELP= ${.CURDIR}/pkg-help PKGINSTALL= ${.CURDIR}/pkg-install PKGDEINSTALL= ${.CURDIR}/pkg-deinstall INSTALL_TARGET= install-strip .include .if ${ARCH} == powerpc64 LLVM_DEFAULT= 90 .elif ${LLVM_DEFAULT:C/[1-5]./&0/:S,-devel,990,} >= 90 LLVM_DEFAULT= 80 .endif BINARY_ALIAS+= python3=${PYTHON_VERSION} .if ${ARCH} == sparc64 MESON_ARGS+= -Dllvm=false .else BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT} .if ${COMPONENT} != libs RUN_DEPENDS+= llvm${LLVM_DEFAULT}>=3.9.0_4:devel/llvm${LLVM_DEFAULT} .endif MESON_ARGS+= --native-file="${WRKSRC}/llvm.ini" LDFLAGS+= -Wl,-rpath=${LOCALBASE}/llvm${LLVM_DEFAULT}/lib MESON_ARGS+= -Dllvm=true .endif # we don't care about GLes v1 MESON_ARGS+= -Dgles1=false Index: head/graphics/mesa-libs/Makefile =================================================================== --- head/graphics/mesa-libs/Makefile (revision 548828) +++ head/graphics/mesa-libs/Makefile (revision 548829) @@ -1,80 +1,82 @@ # Created by: Eric Anholt # $FreeBSD$ PORTNAME= mesa-libs PORTVERSION= ${MESAVERSION} PORTREVISION= 2 CATEGORIES= graphics COMMENT= OpenGL libraries that support GLX and EGL clients CONFLICTS_INSTALL= libglvnd # include/GL/gl.h -USES= xorg -USE_XORG= xorgproto x11 xcb xdamage xext \ - xfixes xshmfence xxf86vm xrandr - OPTIONS_GROUP= PLATFORM OPTIONS_GROUP_PLATFORM= PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS PLATFORM_X11_DESC= Enable X11 support for GBM/EGL PLATFORM_WAYLAND_DESC= Enable Wayland support for GBM/EGL PLATFORM_DRM_DESC= Enable DRM support for GBM/EGL PLATFORM_SURFACELESS_DESC= Enable Surfaceless support for GBM/EGL PLATFORM_WAYLAND_IMPLIES= WAYLAND OPTIONS_DEFINE= WAYLAND OPTIONS_DEFAULT=WAYLAND PLATFORM_X11 PLATFORM_WAYLAND PLATFORM_DRM PLATFORM_SURFACELESS OPTIONS_SUB= yes WAYLAND_DESC= Enable support for the Wayland platform in EGL WAYLAND_BUILD_DEPENDS= wayland-protocols>=1.8:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland WAYLAND_IMPLIES= PLATFORM_WAYLAND .include .include "${.CURDIR:H:H}/graphics/mesa-dri/Makefile.common" MESON_ARGS+= -Dgallium-drivers="" \ -Dgallium-vdpau=false \ -Dgallium-xvmc=false \ -Dgallium-omx=disabled \ -Dgallium-va=false \ -Dgallium-xa=false \ -Dgallium-nine=false \ -Dgallium-clover=disabled \ -Dosmesa=none \ -Dtools="" \ -Degl=true \ -Dgbm=true \ -Dvulkan-drivers="" # Building EGL and GBM requires a dri driver so add swrast MESON_ARGS+= -Ddri-drivers="swrast" .if ${PORT_OPTIONS:MPLATFORM_X11} MESA_PLATFORMS+= x11 +USE_XORG+= xorgproto x11 xcb xdamage xext \ + xfixes xshmfence xxf86vm xrandr +PLIST_SUB+= GLX="" +.else +MESON_ARGS+= -Dglx=disabled +PLIST_SUB+= GLX="@comment " .endif .if ${PORT_OPTIONS:MPLATFORM_WAYLAND} && ${PORT_OPTIONS:MWAYLAND} MESA_PLATFORMS+= wayland .endif .if ${PORT_OPTIONS:MPLATFORM_DRM} MESA_PLATFORMS+= drm .endif .if ${PORT_OPTIONS:MPLATFORM_SURFACELESS} MESA_PLATFORMS+= surfaceless .endif MESON_ARGS+= -Dplatforms="${MESA_PLATFORMS:ts,:tl}" .if ${ARCH} == "i386" # PR230239 Fix the build for i386 when WITH_LLD_IS_LD is set LDFLAGS+=-Wl,-z,notext .elif ${ARCH} == "powerpc" USE_GCC= yes .endif .include "${MASTERDIR}/Makefile.targets" .include Index: head/graphics/mesa-libs/pkg-plist =================================================================== --- head/graphics/mesa-libs/pkg-plist (revision 548828) +++ head/graphics/mesa-libs/pkg-plist (revision 548829) @@ -1,45 +1,45 @@ include/EGL/egl.h include/EGL/eglext.h include/EGL/eglextchromium.h include/EGL/eglmesaext.h include/EGL/eglplatform.h include/GL/gl.h include/GL/gl_mangle.h include/GL/glcorearb.h include/GL/glext.h -include/GL/glx.h -include/GL/glx_mangle.h -include/GL/glxext.h +%%GLX%%include/GL/glx.h +%%GLX%%include/GL/glx_mangle.h +%%GLX%%include/GL/glxext.h @comment include/GL/internal/dri_interface.h include/GLES2/gl2.h include/GLES2/gl2ext.h include/GLES2/gl2platform.h include/GLES3/gl3.h include/GLES3/gl31.h include/GLES3/gl32.h include/GLES3/gl3ext.h include/GLES3/gl3platform.h include/KHR/khrplatform.h include/gbm.h @comment lib/dri/swrast_dri.so lib/libEGL.so lib/libEGL.so.1 lib/libEGL.so.1.0.0 -lib/libGL.so -lib/libGL.so.1 -lib/libGL.so.1.2.0 +%%GLX%%lib/libGL.so +%%GLX%%lib/libGL.so.1 +%%GLX%%lib/libGL.so.1.2.0 lib/libGLESv2.so lib/libGLESv2.so.2 lib/libGLESv2.so.2.0.0 lib/libgbm.so lib/libgbm.so.1 lib/libgbm.so.1.0.0 lib/libglapi.so lib/libglapi.so.0 lib/libglapi.so.0.0.0 @comment libdata/pkgconfig/dri.pc libdata/pkgconfig/egl.pc libdata/pkgconfig/gbm.pc -libdata/pkgconfig/gl.pc +%%GLX%%libdata/pkgconfig/gl.pc libdata/pkgconfig/glesv2.pc @comment share/drirc.d/00-mesa-defaults.conf