summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--x11-drivers/xf86-video-intel/Makefile16
-rw-r--r--x11-drivers/xf86-video-intel/distinfo4
-rw-r--r--x11-drivers/xf86-video-intel/files/extra-clang53
-rw-r--r--x11-drivers/xf86-video-intel/files/extra-src_sna_kgem.c91
4 files changed, 154 insertions, 10 deletions
diff --git a/x11-drivers/xf86-video-intel/Makefile b/x11-drivers/xf86-video-intel/Makefile
index c57e29e..d8caa57 100644
--- a/x11-drivers/xf86-video-intel/Makefile
+++ b/x11-drivers/xf86-video-intel/Makefile
@@ -1,9 +1,5 @@
-# New ports collection makefile for: xf86-video-intel
-# Date Created: 28 May 2007
-# Whom: lesi@FreeBSD.org
-#
-# $FreeBSD$
-#
+# Created by: lesi@FreeBSD.org
+# $FreeBSD: svn://svn.freebsd.org/ports/head/x11-drivers/xf86-video-intel/Makefile 300897 2012-07-14 14:29:18Z beat $
PORTNAME= xf86-video-intel
PORTVERSION= ${INTEL_VERSION}
@@ -22,12 +18,16 @@ USE_XORG= xvmc xineramaproto x11 xf86driproto glproto
MAN4= intel.4x
.if defined(WITH_NEW_XORG)
-INTEL_VERSION= 2.20.13
+INTEL_VERSION= 2.20.15
INTEL_REVISION= 0
CONFIGURE_ARGS+= --enable-sna
MAKE_JOBS_UNSAFE=yes
+SUP_FILES= ${PATCHDIR}/pkg-message-new.in
+#PKGMESSAGE= ${PKGDIR}/pkg-message
PLIST_SUB+= OLD="@comment "
-EXTRA_PATCHES+= ${PATCHDIR}/extra-i915kms \
+EXTRA_PATCHES+= ${PATCHDIR}/extra-clang \
+ ${PATCHDIR}/extra-src_sna_kgem.c \
+ ${PATCHDIR}/extra-i915kms \
${PATCHDIR}/extra-configure-sna
LIB_DEPENDS+= xcb-util:${PORTSDIR}/x11/xcb-util
.else
diff --git a/x11-drivers/xf86-video-intel/distinfo b/x11-drivers/xf86-video-intel/distinfo
index 62f4bdb..8897054 100644
--- a/x11-drivers/xf86-video-intel/distinfo
+++ b/x11-drivers/xf86-video-intel/distinfo
@@ -1,4 +1,4 @@
SHA256 (xorg/driver/xf86-video-intel-2.7.1.tar.bz2) = 255c0d54249cc0132f743254a43c21fac695fab2139c8ed96a07cf3c628e5f42
SIZE (xorg/driver/xf86-video-intel-2.7.1.tar.bz2) = 780625
-SHA256 (xorg/driver/xf86-video-intel-2.20.13.tar.bz2) = 0151104b58ff3509ecd05ac4ee2c5d81a78506c97afbed511fed6b263060dce3
-SIZE (xorg/driver/xf86-video-intel-2.20.13.tar.bz2) = 1649369
+SHA256 (xorg/driver/xf86-video-intel-2.20.15.tar.bz2) = 09ba6878746193951b5471d9ed54fa6115fea97477ed33d0b9bd9b8cafd9e163
+SIZE (xorg/driver/xf86-video-intel-2.20.15.tar.bz2) = 1654806
diff --git a/x11-drivers/xf86-video-intel/files/extra-clang b/x11-drivers/xf86-video-intel/files/extra-clang
new file mode 100644
index 0000000..bb49945
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/extra-clang
@@ -0,0 +1,53 @@
+--- src/intel_display.c.orig 2012-12-11 20:33:06.000000000 +0100
++++ src/intel_display.c 2012-12-11 20:33:45.000000000 +0100
+@@ -1691,7 +1691,7 @@
+ static drmModeEncoderPtr
+ intel_get_kencoder(struct intel_mode *mode, int num)
+ {
+- struct intel_output *iterator;
++ struct intel_output *iterator = NULL;
+ int id = mode->mode_res->encoders[num];
+
+ list_for_each_entry(iterator, &mode->outputs, link)
+--- src/intel_batchbuffer.c.orig 2012-12-11 20:34:55.000000000 +0100
++++ src/intel_batchbuffer.c 2012-12-11 20:35:19.000000000 +0100
+@@ -119,7 +119,7 @@
+ static void intel_batch_do_flush(ScrnInfoPtr scrn)
+ {
+ intel_screen_private *intel = intel_get_screen_private(scrn);
+- struct intel_pixmap *priv;
++ struct intel_pixmap *priv = NULL;
+
+ list_for_each_entry(priv, &intel->batch_pixmaps, batch)
+ priv->dirty = 0;
+--- src/sna/sna_damage.c.orig 2012-12-11 20:41:38.000000000 +0100
++++ src/sna/sna_damage.c 2012-12-11 20:42:23.000000000 +0100
+@@ -410,7 +410,7 @@
+ int n, nboxes;
+ BoxPtr boxes, free_boxes = NULL;
+ pixman_region16_t *region = &damage->region;
+- struct sna_damage_box *iter;
++ struct sna_damage_box *iter = NULL;
+
+ assert(damage->mode != DAMAGE_ALL);
+ assert(damage->dirty);
+@@ -1671,7 +1671,7 @@
+ {
+ int n, nboxes;
+ BoxPtr boxes;
+- struct sna_damage_box *iter;
++ struct sna_damage_box *iter = NULL;
+
+ RegionCopy(r, &damage->region);
+ if (!damage->dirty)
+--- uxa/uxa-accel.c.orig 2012-12-11 20:50:56.000000000 +0100
++++ uxa/uxa-accel.c 2012-12-11 20:51:14.000000000 +0100
+@@ -944,7 +944,7 @@
+
+ if (uxa_screen->info->flags & UXA_USE_GLAMOR) {
+ int ok = 0;
+- RegionPtr region;
++ RegionPtr region = NULL;
+
+ if (uxa_prepare_access(pDst, UXA_GLAMOR_ACCESS_RW)) {
+ if (uxa_prepare_access(pSrc, UXA_GLAMOR_ACCESS_RO)) {
diff --git a/x11-drivers/xf86-video-intel/files/extra-src_sna_kgem.c b/x11-drivers/xf86-video-intel/files/extra-src_sna_kgem.c
new file mode 100644
index 0000000..ba87d10
--- /dev/null
+++ b/x11-drivers/xf86-video-intel/files/extra-src_sna_kgem.c
@@ -0,0 +1,91 @@
+--- src/sna/kgem.c.orig 2012-12-03 11:37:46.000000000 +0100
++++ src/sna/kgem.c 2012-12-11 20:48:26.000000000 +0100
+@@ -624,7 +624,11 @@
+ if (file) {
+ size_t len = 0;
+ char *line = NULL;
++#ifdef __GLIBC__
+ while (getline(&line, &len, file) != -1) {
++#else
++ while ((line = fgetln(file, &len)) != (char *) NULL) {
++#endif
+ int mb;
+ if (sscanf(line, "cache size : %d KB", &mb) == 1) {
+ /* Paranoid check against gargantuan caches */
+@@ -1474,7 +1478,8 @@
+ static struct kgem_bo *
+ search_snoop_cache(struct kgem *kgem, unsigned int num_pages, unsigned flags)
+ {
+- struct kgem_bo *bo, *first = NULL;
++ struct kgem_bo *bo = NULL;
++ struct kgem_bo *first = NULL;
+
+ DBG(("%s: num_pages=%d, flags=%x\n", __FUNCTION__, num_pages, flags));
+
+@@ -1699,7 +1704,8 @@
+
+ static bool kgem_retire__flushing(struct kgem *kgem)
+ {
+- struct kgem_bo *bo, *next;
++ struct kgem_bo *bo = NULL;
++ struct kgem_bo *next;
+ bool retired = false;
+
+ list_for_each_entry_safe(bo, next, &kgem->flushing, request) {
+@@ -1916,7 +1922,8 @@
+ static void kgem_commit(struct kgem *kgem)
+ {
+ struct kgem_request *rq = kgem->next_request;
+- struct kgem_bo *bo, *next;
++ struct kgem_bo *bo = NULL;
++ struct kgem_bo *next;
+
+ list_for_each_entry_safe(bo, next, &rq->buffers, request) {
+ assert(next->request.prev == &bo->request);
+@@ -1995,7 +2002,8 @@
+
+ static void kgem_finish_buffers(struct kgem *kgem)
+ {
+- struct kgem_buffer *bo, *next;
++ struct kgem_buffer *bo = NULL;
++ struct kgem_buffer *next;
+
+ list_for_each_entry_safe(bo, next, &kgem->batch_buffers, base.list) {
+ DBG(("%s: buffer handle=%d, used=%d, exec?=%d, write=%d, mmapped=%d\n",
+@@ -2678,7 +2686,8 @@
+ static struct kgem_bo *
+ search_linear_cache(struct kgem *kgem, unsigned int num_pages, unsigned flags)
+ {
+- struct kgem_bo *bo, *first = NULL;
++ struct kgem_bo *bo = NULL;
++ struct kgem_bo *first = NULL;
+ bool use_active = (flags & CREATE_INACTIVE) == 0;
+ struct list *cache;
+
+@@ -3167,7 +3176,7 @@
+ uint32_t flags)
+ {
+ struct list *cache;
+- struct kgem_bo *bo;
++ struct kgem_bo *bo = NULL;
+ uint32_t pitch, untiled_pitch, tiled_height, size;
+ uint32_t handle;
+ int i, bucket, retry;
+@@ -4360,7 +4369,7 @@
+ void kgem_clear_dirty(struct kgem *kgem)
+ {
+ struct list * const buffers = &kgem->next_request->buffers;
+- struct kgem_bo *bo;
++ struct kgem_bo *bo = NULL;
+
+ list_for_each_entry(bo, buffers, request) {
+ if (!bo->dirty)
+@@ -4599,7 +4608,7 @@
+ uint32_t size, uint32_t flags,
+ void **ret)
+ {
+- struct kgem_buffer *bo;
++ struct kgem_buffer *bo = NULL;
+ unsigned offset, alloc;
+ struct kgem_bo *old;
+