Index: head/graphics/libdrm/Makefile =================================================================== --- head/graphics/libdrm/Makefile (revision 441420) +++ head/graphics/libdrm/Makefile (revision 441421) @@ -1,84 +1,77 @@ # Created by: lesi@FreeBSD.org # $FreeBSD$ PORTNAME= libdrm PORTVERSION= 2.4.80 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= graphics x11 MASTER_SITES= http://dri.freedesktop.org/libdrm/ MAINTAINER= x11@FreeBSD.org COMMENT= Userspace interface to kernel Direct Rendering Module services LICENSE= MIT BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/pthread-stubs.pc:devel/libpthread-stubs LIB_DEPENDS= libpciaccess.so:devel/libpciaccess USES= libtool pkgconfig tar:bzip2 GNU_CONFIGURE= yes USE_LDCONFIG= yes INSTALL_TARGET= install-strip -OPTIONS_DEFINE= MANPAGES +OPTIONS_DEFINE= MANPAGES TESTS +OPTIONS_SUB= yes +TESTS_DESC= Install test programs (which are always built) + .if defined(PACKAGE_BUILDING) OPTIONS_DEFAULT+= MANPAGES .endif -.include +MANPAGES_CONFIGURE_ENABLE= manpages +MANPAGES_BUILD_DEPENDS= ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:textproc/docbook-xsl +MANPAGES_USE= GNOME=libxslt:build -# KMS support in the kernel is only build on these archs, disable others -.if ${ARCH} == "amd64" || ${ARCH} == "i386" -CONFIGURE_ARGS+=--enable-libkms -PLIST_SUB+= KMS="" -.else -CONFIGURE_ARGS+=--disable-libkms -PLIST_SUB+= KMS="@comment " -.endif +TESTS_CONFIGURE_ENABLE= install-test-programs -.if ${PORT_OPTIONS:MMANPAGES} -BUILD_DEPENDS+= ${LOCALBASE}/share/xsl/docbook/manpages/docbook.xsl:textproc/docbook-xsl -USE_GNOME+= libxslt:build -PLIST_SUB+= MAN="" -.else -CONFIGURE_ARGS+=--disable-manpages -PLIST_SUB+= MAN="@comment " -.endif +# avoid circular dependency in case cairo supports OpenGL (cairo->mesa-libs->libdrm->cairo) +CONFIGURE_ARGS+= --disable-cairo-tests -CONFIGURE_ARGS+=--disable-vmwgfx +.include .if ${ARCH} == amd64 || ${ARCH} == i386 PLIST_SUB+= ARM_DRIVERS="@comment " PLIST_SUB+= INTEL_DRIVER="" PLIST_SUB+= NOUVEAU_DRIVER="" PLIST_SUB+= RADEON_DRIVERS="" .elif ${ARCH} == powerpc || ${ARCH} == powerpc64 PLIST_SUB+= ARM_DRIVERS="@comment " PLIST_SUB+= INTEL_DRIVER="@comment " PLIST_SUB+= NOUVEAU_DRIVER="" PLIST_SUB+= RADEON_DRIVERS="" .elif ${ARCH} == armv6 || ${ARCH} == aarch64 PLIST_SUB+= ARM_DRIVERS="" PLIST_SUB+= INTEL_DRIVER="@comment " PLIST_SUB+= NOUVEAU_DRIVER="@comment " PLIST_SUB+= RADEON_DRIVERS="@comment " .else PLIST_SUB+= ARM_DRIVERS="@comment " PLIST_SUB+= INTEL_DRIVER="@comment " PLIST_SUB+= NOUVEAU_DRIVER="@comment " PLIST_SUB+= RADEON_DRIVERS="@comment " .endif # This variable is not for users. So use a non-default name, intended for # people working on DRM kernel module development. .if ${OPSYS} == FreeBSD && !defined(LIBDRM_SKIP_RETURN_PATCH) EXTRA_PATCHES+= ${FILESDIR}/extra-xf86drm.c .endif pre-patch: @${REINPLACE_CMD} 's|{libdir}/pkgconfig|{prefix}/libdata/pkgconfig|g; \ s,i?86|x86_64),i?86|amd64|x86_64),g' \ ${WRKSRC}/configure .include Index: head/graphics/libdrm/files/patch-libkms_vmwgfx.c =================================================================== --- head/graphics/libdrm/files/patch-libkms_vmwgfx.c (nonexistent) +++ head/graphics/libdrm/files/patch-libkms_vmwgfx.c (revision 441421) @@ -0,0 +1,27 @@ +# the defintion of ERESTART is behind a check for _KERNEL, but +# defining that causes errno to not be defined. fortunately, there's +# an alternative switch. unfortunately, those differ by platform and +# _WANT_KERNEL_ERRNO is too recent to be part of any release, so just +# define ERESTART if we still don't have it after including errno.h +# +--- libkms/vmwgfx.c.orig 2017-04-14 23:29:46 UTC ++++ libkms/vmwgfx.c +@@ -30,10 +30,18 @@ + #include "config.h" + #endif + ++#if defined (__FreeBSD__) || defined (__FreeBSD_kernel__) ++#define _WANT_KERNEL_ERRNO ++#elif defined(__DragonFly__) ++#define _KERNEL_STRUCTURES ++#endif + #include + #include + #include + #include "internal.h" ++#ifndef ERESTART ++#define ERESTART (-1) ++#endif + + #include "xf86drm.h" + #include "libdrm_macros.h" Property changes on: head/graphics/libdrm/files/patch-libkms_vmwgfx.c ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/graphics/libdrm/files/patch-libsync.h =================================================================== --- head/graphics/libdrm/files/patch-libsync.h (nonexistent) +++ head/graphics/libdrm/files/patch-libsync.h (revision 441421) @@ -0,0 +1,14 @@ +# define ETIME as ETIMEOUT same as done in Mesa +# +--- libsync.h.orig 2017-04-14 23:29:46 UTC ++++ libsync.h +@@ -35,6 +35,9 @@ + #include + #include + #include ++#ifndef ETIME ++#define ETIME ETIMEDOUT ++#endif + + #if defined(__cplusplus) + extern "C" { Property changes on: head/graphics/libdrm/files/patch-libsync.h ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/graphics/libdrm/pkg-plist =================================================================== --- head/graphics/libdrm/pkg-plist (revision 441420) +++ head/graphics/libdrm/pkg-plist (revision 441421) @@ -1,84 +1,92 @@ +%%TESTS%%bin/kms-steal-crtc +%%TESTS%%bin/kms-universal-planes +%%TESTS%%bin/kmstest +%%TESTS%%bin/modeprint +%%TESTS%%bin/modetest +%%TESTS%%bin/proptest +%%TESTS%%bin/vbltest %%ARM_DRIVERS%%include/freedreno/freedreno_drmif.h %%ARM_DRIVERS%%include/freedreno/freedreno_ringbuffer.h %%RADEON_DRIVERS%%include/libdrm/amdgpu.h %%RADEON_DRIVERS%%include/libdrm/amdgpu_drm.h include/libdrm/drm.h include/libdrm/drm_fourcc.h include/libdrm/drm_mode.h include/libdrm/drm_sarea.h include/libdrm/i915_drm.h %%INTEL_DRIVER%%include/libdrm/intel_aub.h %%INTEL_DRIVER%%include/libdrm/intel_bufmgr.h %%INTEL_DRIVER%%include/libdrm/intel_debug.h include/libdrm/mach64_drm.h include/libdrm/mga_drm.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nouveau.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/cl0080.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/cl9097.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/class.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/if0002.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/if0003.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/ioctl.h %%NOUVEAU_DRIVER%%include/libdrm/nouveau/nvif/unpack.h include/libdrm/nouveau_drm.h include/libdrm/qxl_drm.h include/libdrm/r128_drm.h %%RADEON_DRIVERS%%include/libdrm/r600_pci_ids.h %%RADEON_DRIVERS%%include/libdrm/radeon_bo.h %%RADEON_DRIVERS%%include/libdrm/radeon_bo_gem.h %%RADEON_DRIVERS%%include/libdrm/radeon_bo_int.h %%RADEON_DRIVERS%%include/libdrm/radeon_cs.h %%RADEON_DRIVERS%%include/libdrm/radeon_cs_gem.h %%RADEON_DRIVERS%%include/libdrm/radeon_cs_int.h include/libdrm/radeon_drm.h %%RADEON_DRIVERS%%include/libdrm/radeon_surface.h include/libdrm/savage_drm.h include/libdrm/sis_drm.h include/libdrm/tegra_drm.h include/libdrm/vc4_drm.h %%ARM_DRIVERS%%include/libdrm/vc4_packet.h %%ARM_DRIVERS%%include/libdrm/vc4_qpu_defines.h include/libdrm/via_drm.h include/libdrm/virtgpu_drm.h -%%KMS%%include/libkms/libkms.h +include/libdrm/vmwgfx_drm.h +include/libkms/libkms.h include/libsync.h include/xf86drm.h include/xf86drmMode.h lib/libdrm.so lib/libdrm.so.2 lib/libdrm.so.2.4.0 %%RADEON_DRIVERS%%lib/libdrm_amdgpu.so %%RADEON_DRIVERS%%lib/libdrm_amdgpu.so.1 %%RADEON_DRIVERS%%lib/libdrm_amdgpu.so.1.0.0 %%ARM_DRIVERS%%lib/libdrm_freedreno.so %%ARM_DRIVERS%%lib/libdrm_freedreno.so.1 %%ARM_DRIVERS%%lib/libdrm_freedreno.so.1.0.0 %%INTEL_DRIVER%%lib/libdrm_intel.so %%INTEL_DRIVER%%lib/libdrm_intel.so.1 %%INTEL_DRIVER%%lib/libdrm_intel.so.1.0.0 %%NOUVEAU_DRIVER%%lib/libdrm_nouveau.so %%NOUVEAU_DRIVER%%lib/libdrm_nouveau.so.2 %%NOUVEAU_DRIVER%%lib/libdrm_nouveau.so.2.0.0 %%RADEON_DRIVERS%%lib/libdrm_radeon.so %%RADEON_DRIVERS%%lib/libdrm_radeon.so.1 %%RADEON_DRIVERS%%lib/libdrm_radeon.so.1.0.1 -%%KMS%%lib/libkms.so -%%KMS%%lib/libkms.so.1 -%%KMS%%lib/libkms.so.1.0.0 +lib/libkms.so +lib/libkms.so.1 +lib/libkms.so.1.0.0 libdata/pkgconfig/libdrm.pc %%RADEON_DRIVERS%%libdata/pkgconfig/libdrm_amdgpu.pc %%ARM_DRIVERS%%libdata/pkgconfig/libdrm_freedreno.pc %%INTEL_DRIVER%%libdata/pkgconfig/libdrm_intel.pc %%NOUVEAU_DRIVER%%libdata/pkgconfig/libdrm_nouveau.pc %%RADEON_DRIVERS%%libdata/pkgconfig/libdrm_radeon.pc %%ARM_DRIVERS%%libdata/pkgconfig/libdrm_vc4.pc -%%KMS%%libdata/pkgconfig/libkms.pc -%%MAN%%man/man3/drmAvailable.3.gz -%%MAN%%man/man3/drmHandleEvent.3.gz -%%MAN%%man/man3/drmModeGetResources.3.gz -%%MAN%%man/man7/drm-gem.7.gz -%%MAN%%man/man7/drm-kms.7.gz -%%MAN%%man/man7/drm-memory.7.gz -%%MAN%%man/man7/drm-mm.7.gz -%%MAN%%man/man7/drm-ttm.7.gz -%%MAN%%man/man7/drm.7.gz +libdata/pkgconfig/libkms.pc +%%MANPAGES%%man/man3/drmAvailable.3.gz +%%MANPAGES%%man/man3/drmHandleEvent.3.gz +%%MANPAGES%%man/man3/drmModeGetResources.3.gz +%%MANPAGES%%man/man7/drm-gem.7.gz +%%MANPAGES%%man/man7/drm-kms.7.gz +%%MANPAGES%%man/man7/drm-memory.7.gz +%%MANPAGES%%man/man7/drm-mm.7.gz +%%MANPAGES%%man/man7/drm-ttm.7.gz +%%MANPAGES%%man/man7/drm.7.gz