summaryrefslogtreecommitdiff
path: root/x11-drivers/xf86-video-vmware
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /x11-drivers/xf86-video-vmware
reinit the tree, so we can have metadata
Diffstat (limited to 'x11-drivers/xf86-video-vmware')
-rw-r--r--x11-drivers/xf86-video-vmware/Manifest15
-rw-r--r--x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-damageunregister.patch38
-rw-r--r--x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xa-compat-2.patch26
-rw-r--r--x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xatracker-2.patch179
-rw-r--r--x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.2-fix-includes.patch41
-rw-r--r--x11-drivers/xf86-video-vmware/metadata.xml8
-rw-r--r--x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.1-r1.ebuild22
-rw-r--r--x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.2.ebuild17
-rw-r--r--x11-drivers/xf86-video-vmware/xf86-video-vmware-13.1.0.ebuild17
-rw-r--r--x11-drivers/xf86-video-vmware/xf86-video-vmware-13.2.1.ebuild17
10 files changed, 380 insertions, 0 deletions
diff --git a/x11-drivers/xf86-video-vmware/Manifest b/x11-drivers/xf86-video-vmware/Manifest
new file mode 100644
index 000000000000..4a52ff28ef6d
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/Manifest
@@ -0,0 +1,15 @@
+AUX xf86-video-vmware-13.0.1-damageunregister.patch 1095 SHA256 2f60533fa5f0f1b7cefe174b6b0cd3b60373d0a3a5ea2bfea73a33c1764c2a13 SHA512 d6b9a37dba30b7d47624f86f824723fa4b98b8b06072b33439a65ba44ff7c18123dbefd5aad7d19c079c3bf6028d683d9c852b014428fcff79412bee779a0efb WHIRLPOOL 55d3c8f521e9c80d77fb7521ceb937d560ab8279beb6060e901a66aa104185f7b7bbb35dc14cc9c8c60e01af24c3dab7a305c184fdf1bcb7a8f027852ec58eb3
+AUX xf86-video-vmware-13.0.1-xa-compat-2.patch 830 SHA256 7f6da81f7ff750f64894fba2d3d290724c8c9c0dcb1ddce561f150367ec3680b SHA512 332ce8c6f0cd1a19a3b718cc07a599bbb73f9c34a146be2f18e8ba1596dfa4bd4e0d5ed95e4b593bc17fb11601d3c1b9b47b146836d56bab361dec26c8a41b8c WHIRLPOOL 82ae8f42916dd46efd5c630cebcfccc1827b9c54341c29746eea5a696dffc9657d9b8a57a8427223bb2556426b54df1b40b9f9a2b9dffd58b52338bf642ed775
+AUX xf86-video-vmware-13.0.1-xatracker-2.patch 5781 SHA256 4a04f46547f9f35f222d59dbc727ea4f2691f0aada4bf9b555e49b04964c88a1 SHA512 5325801b0c5f228d6241df62e16de5505d670bdbf77888ecefb3e7d7c83822070e8f9295beea9dc51ab714163b7825200e5c472042248b389911c57e275f0e8a WHIRLPOOL 13e13a6aaac961be3fa83023543ede8be9b408130dc474a4dda11e2786b08cf4a3be6595625d6b58d9f3ce47efd1a26b9f178913deaf23a79476eecbc2482e3e
+AUX xf86-video-vmware-13.0.2-fix-includes.patch 1396 SHA256 a3f9b959e79958b44cdda0444e5f3e54503c5f72e869fb6d242e9463d25e2a8f SHA512 5e0d419952e0f9ecc56a9b34bbb55bbd4086682a8ca1500244799f3283244365161e1b26ffa62fac8c5b46d6b3bc0c3d02dff704cb58ba26f3c0b644fe80f3d8 WHIRLPOOL c2c488075567ae7408cfd1de19172d25a6dcd831f4867c0522d83856e10d0db2f6204fcac64131a133ab69e16d1de0da041fe1e533e89a8ba90f95ebac2901ff
+DIST xf86-video-vmware-13.0.1.tar.bz2 432401 SHA256 802dda415c22412edad6c3df44fe18a06e91d0f8456d9a58bac0d340fdf8fe3d SHA512 2faf5fd524dffd2cd89a8b5a06b5470acbc51c3ee4f48bafc425b8e9c7c76d294201651cfb8c1d104c313885108e22abb6da736de1f3dbcf134a0926158ed147 WHIRLPOOL c52cb2a65f243a3cbe70da5f007aa0af97cf32e576b8bb6a400374d775edaab78ccf9ac341f94fc4bd95a2cf58672adce4462b079d889338f0b5ea93a8cd4252
+DIST xf86-video-vmware-13.0.2.tar.bz2 438773 SHA256 c8ba3d2cead3620dba2cbf5defb7f1759b2b96f4fe209f4bf6976832b6763c54 SHA512 18d6867c0bd497d9f2aeb96d04b26fa0e3af1d37ae7628d19a8c1e829ef1df825371225c68e140d4d65097fa53178e6f1a7d3e371a623c9ef6cd98cccc0f826c WHIRLPOOL e6083ce2248442bba2ca3447fe3e50d3b2df5e28d3116f3b1caf9a76036c8a6269341b08bf37b02d4253738daeab4aec15bc6cfa893ebde914c6be301fa58fdf
+DIST xf86-video-vmware-13.1.0.tar.bz2 459255 SHA256 3c1d244e4b1b77e92126957965cdc9fb82de4c215c0706a3a8aaff6939e4a0cc SHA512 43d6a15e40896c793e49a1670b937e417271baff15b737b6b8cd3845bb7d2fc6354bf53cb40350caf0e7aac1e005a0fb2c9c80ce25690678b79e8e48f05f1de0 WHIRLPOOL c637dafa0d93ef49c475b68f81aa2422b896450dee0f187c58ed2cc475c9406d69241b11a6d19d239a42c330acd41d7c7228c0b0484b30b96b33750bba0d870d
+DIST xf86-video-vmware-13.2.1.tar.bz2 470601 SHA256 e2f7f7101fba7f53b268e7a25908babbf155b3984fb5268b3d244eb6c11bf62b SHA512 9c48eaf5be6ece5685e07a53842083d091edba482ac0ea8318ac5b0adb9fc468f932685e4bdaf7e565f7a1cf723dcea2731616613798ebde2bbc18418a369a9d WHIRLPOOL d2eed203567e68e7b9ac949b1c1f6a96f8c0b4c7a21c43cc151dbf758d589b889e4a807993050eaa3dd5ffe2b800a1e59d1c606dc9f806d4bcc9883af06697ea
+EBUILD xf86-video-vmware-13.0.1-r1.ebuild 479 SHA256 9c49cdd5b8a2a82f686132879c3657d91119efee831ad713c73b9abe31774f9b SHA512 63a326d8a58ae031ce15bb74ffaf15d8fd866bac6544a5913308c446836484fb86479548999180f92c1d114e070feeda64e782a4119bfcedbfae40d164195883 WHIRLPOOL 41ad2dd66950ddc19a6e9e6d45c253e833fee1bff569b268cef88bf2859baec849a2a1b9edd974c8cb8013c5f266ada9f7fcad1fa4ea498ed3fe1ea169215712
+EBUILD xf86-video-vmware-13.0.2.ebuild 382 SHA256 0a8ad2a8746b27c5ffb37f5a762b793f784b9c886f422690bfd9415795959d3d SHA512 b7374c9823bc6f3f326705caab8c3b858ff6296532b9f76e42e53495663086f38497f9882aa3164c5de4e1fadc4d4b0af6df0cfd6db02863c2cd2b8007218020 WHIRLPOOL 95eeaa845c2cd7dfa1893b365810668ad714d15c4a4299313f7464e5f990c4aa421f70388698e1df9940f8974f4ec4b1b026adaa17cf6f561c3e912d1718369a
+EBUILD xf86-video-vmware-13.1.0.ebuild 367 SHA256 903736bb485069ae963a67be206bc3a7755e99dc1f1f3cd1f2c7a8e6c9d546f3 SHA512 a97549539aaec0e8964db79c43a91d5bc299613a5333263662c0f0fa7dd04ca986f8ed1bebd308688d7427f87139955b72e3f1d315b97d9d459997940243ec86 WHIRLPOOL 252374104f39bf6f0a9452fb3c10b9ab0cd67da27a2849c8cb21fca6d1e1db9354f5a7bb34069f37210ee68e3e5cb5ecfe9b5e00bfde72b29d8de896cd3d048a
+EBUILD xf86-video-vmware-13.2.1.ebuild 367 SHA256 37c5d51fc2550ecfb81d5ffcd7586f319e8fe093aa599fc09fb142c68f186060 SHA512 681ff0529f319848fef188999d33e231b193d13a464b2f4a4f3c1b037fb60e2ca27303e9575977f36019a22b78ddbc309c489206fe960072891d886abd05ba2e WHIRLPOOL 20f27d60937ed20b7cb4b2f71c4fe54a93c54005fe816884b13e4c6a24c2a8f322170ab0192f68df4f285ff54e53264d497cc146956153af0d91351f302d7e42
+MISC ChangeLog 3013 SHA256 1585bf5c2208e4951522c262bb7cd62b76c96c11ee7056d3848ae3f8d1fb202a SHA512 337f13c9ec73e05a9b1e6a72390c33afb3c72993a5044d1c886e29a47fcabce8305de99fc088e56fe43f5d2882d51e8b447bebf5952d9c43f8eb88eb2ca666be WHIRLPOOL 59b9b36ac68cbf4cdb8e484a9e44821ace563d5b32bc5aba9ea756c99466f9cfc0e39a6f284bca808e9fd5b4aa72ae4b036979d35a4660af8cfd750de4f9b121
+MISC ChangeLog-2015 13597 SHA256 88532d198734a7ddbb7c0da0cd68c7c896076a63f7ba2f8a1b86b8526be4b77e SHA512 1def110db78ce406699076f2f836fb19efbaacd67baf53b9078fee09b86cf62974dc71f98a966529f575a7f10928c8c48b174d6ee80b282ba297d17a2f11e4b9 WHIRLPOOL 0f0ade1438ac80ee06aac054d80ec180b0c467c663f1ca3075a574779c6b3257e8d20f4936448bb2767ade375451553efa577b584ccf07cd243671e94e4f512f
+MISC metadata.xml 230 SHA256 677e4595d00a3098fde05ae33118b9ac05867dc5729c9cd579dc8badd1a28f68 SHA512 d7a2643abd1904cc5ff4d91cbb6f1baeb7f75fd1db542c5e14f19412f4f0bd4b903f8e703a7662ba7482c79dac5529057760b6427599d35e0842755fd946e057 WHIRLPOOL 4866c82c6428eae526c0a514c988e4119221f77b0e8bfb04fec713dd3ba516c69afc776a0c6f53c29abfd8507aa23801614db1ba544dd0a0dd4d6a9462c27306
diff --git a/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-damageunregister.patch b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-damageunregister.patch
new file mode 100644
index 000000000000..0b2a8e6869b3
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-damageunregister.patch
@@ -0,0 +1,38 @@
+From e26dec8f5278df74a102493bf6d2d8444dab5d6d Mon Sep 17 00:00:00 2001
+From: Gaetan Nadon <memsize@videotron.ca>
+Date: Mon, 28 Oct 2013 22:21:29 +0000
+Subject: vmwgfx: handle changes of DamageUnregister API in 1.14.99.2
+
+Fix is inspired from the intel driver.
+
+Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+---
+diff --git a/vmwgfx/vmwgfx_saa.c b/vmwgfx/vmwgfx_saa.c
+index fd80682..346e7f4 100644
+--- a/vmwgfx/vmwgfx_saa.c
++++ b/vmwgfx/vmwgfx_saa.c
+@@ -26,6 +26,7 @@
+ */
+
+ #include <xorg-server.h>
++#include <xorgVersion.h>
+ #include <mi.h>
+ #include <fb.h>
+ #include <xf86drmMode.h>
+@@ -76,7 +77,12 @@ vmwgfx_pixmap_remove_damage(PixmapPtr pixmap)
+ if (!spix->damage || vpix->hw || vpix->gmr || vpix->malloc)
+ return;
+
++#if XORG_VERSION_CURRENT >= XORG_VERSION_NUMERIC(1,14,99,2,0)
++ DamageUnregister(spix->damage);
++#else
+ DamageUnregister(&pixmap->drawable, spix->damage);
++#endif
++
+ DamageDestroy(spix->damage);
+ spix->damage = NULL;
+ }
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xa-compat-2.patch b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xa-compat-2.patch
new file mode 100644
index 000000000000..15f603c3c569
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xa-compat-2.patch
@@ -0,0 +1,26 @@
+From 93228f3dd3355a25583d22dbb96791678b93be3e Mon Sep 17 00:00:00 2001
+From: Thomas Hellstrom <thellstrom@vmware.com>
+Date: Wed, 11 Dec 2013 14:54:02 +0000
+Subject: vmwgfx: Really allow XA version 2.
+
+When XA starts to correctly advertise version 2, we didn't allow it.
+Fix this.
+
+Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
+Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+---
+diff --git a/vmwgfx/vmwgfx_driver.c b/vmwgfx/vmwgfx_driver.c
+index 6301c29..4e28097 100644
+--- a/vmwgfx/vmwgfx_driver.c
++++ b/vmwgfx/vmwgfx_driver.c
+@@ -79,7 +79,7 @@ typedef uint8_t uint8;
+
+ #define XA_VERSION_MINOR_REQUIRED 0
+ #define XA_VERSION_MAJOR_REQUIRED 1
+-#define XA_VERSION_MAJOR_COMPAT 1
++#define XA_VERSION_MAJOR_COMPAT 2
+
+ #define DRM_VERSION_MAJOR_REQUIRED 2
+ #define DRM_VERSION_MINOR_REQUIRED 3
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xatracker-2.patch b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xatracker-2.patch
new file mode 100644
index 000000000000..9435f06ddd7b
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.1-xatracker-2.patch
@@ -0,0 +1,179 @@
+From 0945bea5fc32eacb7bf42639efbd45dcd43e7ab5 Mon Sep 17 00:00:00 2001
+From: Rob Clark <robdclark@gmail.com>
+Date: Mon, 10 Jun 2013 17:31:31 +0000
+Subject: vmwgfx: update for XA API changes
+
+Signed-off-by: Rob Clark <robdclark@gmail.com>
+Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
+Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
+Tested-by: Jakob Bornecrantz <jakob@vmware.com>
+---
+diff --git a/configure.ac b/configure.ac
+index 0631bcc..dccfb27 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -118,7 +118,7 @@ if test x$BUILD_VMWGFX = xyes; then
+ PKG_CHECK_MODULES([LIBDRM], [libdrm],[],[BUILD_VMWGFX=no])
+ fi
+ if test x$BUILD_VMWGFX = xyes; then
+- PKG_CHECK_MODULES([XATRACKER], [xatracker >= 0.4.0],[],[BUILD_VMWGFX=no])
++ PKG_CHECK_MODULES([XATRACKER], [xatracker >= 2.0.0],[],[BUILD_VMWGFX=no])
+ fi
+
+ DRIVER_NAME=vmware
+diff --git a/vmwgfx/vmwgfx_dri2.c b/vmwgfx/vmwgfx_dri2.c
+index 7de0772..2f007f0 100644
+--- a/vmwgfx/vmwgfx_dri2.c
++++ b/vmwgfx/vmwgfx_dri2.c
+@@ -201,7 +201,8 @@ dri2_do_create_buffer(DrawablePtr pDraw, DRI2Buffer2Ptr buffer, unsigned int for
+ }
+
+ private->srf = srf;
+- if (xa_surface_handle(srf, &buffer->name, &buffer->pitch) != 0)
++ if (xa_surface_handle(srf, xa_handle_type_shared,
++ &buffer->name, &buffer->pitch) != 0)
+ return FALSE;
+
+ buffer->cpp = xa_format_depth(xa_surface_format(srf)) / 8;
+@@ -222,7 +223,7 @@ dri2_do_destroy_buffer(DrawablePtr pDraw, DRI2BufferPtr buffer)
+ struct vmwgfx_saa_pixmap *vpix = vmwgfx_saa_pixmap(private->pPixmap);
+
+ if (--private->refcount == 0 && srf) {
+- xa_surface_destroy(srf);
++ xa_surface_unref(srf);
+ }
+
+ /*
+diff --git a/vmwgfx/vmwgfx_driver.c b/vmwgfx/vmwgfx_driver.c
+index 7863ba2..3002285 100644
+--- a/vmwgfx/vmwgfx_driver.c
++++ b/vmwgfx/vmwgfx_driver.c
+@@ -617,7 +617,8 @@ vmwgfx_scanout_present(ScreenPtr pScreen, int drm_fd,
+ return FALSE;
+ }
+
+- if (xa_surface_handle(vpix->hw, &handle, &dummy) != 0) {
++ if (xa_surface_handle(vpix->hw, xa_handle_type_shared,
++ &handle, &dummy) != 0) {
+ LogMessage(X_ERROR, "Could not get present surface handle.\n");
+ return FALSE;
+ }
+diff --git a/vmwgfx/vmwgfx_saa.c b/vmwgfx/vmwgfx_saa.c
+index 63df3a1..ed3c1ee 100644
+--- a/vmwgfx/vmwgfx_saa.c
++++ b/vmwgfx/vmwgfx_saa.c
+@@ -140,7 +140,7 @@ vmwgfx_pixmap_free_storage(struct vmwgfx_saa_pixmap *vpix)
+ vpix->malloc = NULL;
+ }
+ if (!(vpix->backing & VMWGFX_PIX_SURFACE) && vpix->hw) {
+- xa_surface_destroy(vpix->hw);
++ xa_surface_unref(vpix->hw);
+ vpix->hw = NULL;
+ }
+ if (!(vpix->backing & VMWGFX_PIX_GMR) && vpix->gmr) {
+@@ -286,7 +286,8 @@ vmwgfx_saa_dma(struct vmwgfx_saa *vsaa,
+ if (vpix->gmr && vsaa->can_optimize_dma) {
+ uint32_t handle, dummy;
+
+- if (xa_surface_handle(vpix->hw, &handle, &dummy) != 0)
++ if (xa_surface_handle(vpix->hw, xa_handle_type_shared,
++ &handle, &dummy) != 0)
+ goto out_err;
+ if (vmwgfx_dma(0, 0, reg, vpix->gmr, pixmap->devKind, handle,
+ to_hw) != 0)
+@@ -305,6 +306,8 @@ vmwgfx_saa_dma(struct vmwgfx_saa *vsaa,
+ (int) to_hw,
+ (struct xa_box *) REGION_RECTS(reg),
+ REGION_NUM_RECTS(reg));
++ if (to_hw)
++ xa_context_flush(vsaa->xa_ctx);
+ if (vpix->gmr)
+ vmwgfx_dmabuf_unmap(vpix->gmr);
+ if (ret)
+@@ -441,7 +444,7 @@ vmwgfx_hw_kill(struct vmwgfx_saa *vsaa,
+ &spix->dirty_hw))
+ return FALSE;
+
+- xa_surface_destroy(vpix->hw);
++ xa_surface_unref(vpix->hw);
+ vpix->hw = NULL;
+
+ /*
+@@ -683,7 +686,8 @@ vmwgfx_present_prepare(struct vmwgfx_saa *vsaa,
+
+ (void) pScreen;
+ if (src_vpix == dst_vpix || !src_vpix->hw ||
+- xa_surface_handle(src_vpix->hw, &vsaa->src_handle, &dummy) != 0)
++ xa_surface_handle(src_vpix->hw, xa_handle_type_shared,
++ &vsaa->src_handle, &dummy) != 0)
+ return FALSE;
+
+ REGION_NULL(pScreen, &vsaa->present_region);
+@@ -784,7 +788,7 @@ vmwgfx_create_hw(struct vmwgfx_saa *vsaa,
+ return TRUE;
+
+ out_no_damage:
+- xa_surface_destroy(hw);
++ xa_surface_unref(hw);
+ return FALSE;
+ }
+
+@@ -929,6 +933,7 @@ vmwgfx_copy_prepare(struct saa_driver *driver,
+
+ if (!vmwgfx_hw_validate(src_pixmap, src_reg)) {
+ xa_copy_done(vsaa->xa_ctx);
++ xa_context_flush(vsaa->xa_ctx);
+ return FALSE;
+ }
+
+@@ -1029,6 +1034,7 @@ vmwgfx_copy_done(struct saa_driver *driver)
+ return;
+ }
+ xa_copy_done(vsaa->xa_ctx);
++ xa_context_flush(vsaa->xa_ctx);
+ }
+
+ static Bool
+@@ -1175,6 +1181,7 @@ vmwgfx_composite_done(struct saa_driver *driver)
+ struct vmwgfx_saa *vsaa = to_vmwgfx_saa(driver);
+
+ xa_composite_done(vsaa->xa_ctx);
++ xa_context_flush(vsaa->xa_ctx);
+ }
+
+ static void
+@@ -1436,7 +1443,8 @@ vmwgfx_scanout_ref(struct vmwgfx_screen_entry *entry)
+ */
+ if (!vmwgfx_hw_accel_validate(pixmap, 0, XA_FLAG_SCANOUT, 0, NULL))
+ goto out_err;
+- if (xa_surface_handle(vpix->hw, &handle, &dummy) != 0)
++ if (xa_surface_handle(vpix->hw, xa_handle_type_shared,
++ &handle, &dummy) != 0)
+ goto out_err;
+ depth = xa_format_depth(xa_surface_format(vpix->hw));
+
+diff --git a/vmwgfx/vmwgfx_tex_video.c b/vmwgfx/vmwgfx_tex_video.c
+index 449266b..2971ed7 100644
+--- a/vmwgfx/vmwgfx_tex_video.c
++++ b/vmwgfx/vmwgfx_tex_video.c
+@@ -199,7 +199,7 @@ stop_video(ScrnInfoPtr pScrn, pointer data, Bool shutdown)
+
+ for (i=0; i<3; ++i) {
+ if (priv->yuv[i]) {
+- xa_surface_destroy(priv->yuv[i]);
++ xa_surface_unref(priv->yuv[i]);
+ priv->yuv[i] = NULL;
+ }
+ for (j=0; j<2; ++j) {
+@@ -539,7 +539,8 @@ copy_packed_data(ScrnInfoPtr pScrn,
+ REGION_RESET(pScrn->pScreen, &reg, &box);
+ }
+
+- if (xa_surface_handle(srf, &handle, &stride) != 0) {
++ if (xa_surface_handle(srf, xa_handle_type_shared,
++ &handle, &stride) != 0) {
+ ret = BadAlloc;
+ break;
+ }
+--
+cgit v0.9.0.2-2-gbebe
diff --git a/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.2-fix-includes.patch b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.2-fix-includes.patch
new file mode 100644
index 000000000000..434cb679f761
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/files/xf86-video-vmware-13.0.2-fix-includes.patch
@@ -0,0 +1,41 @@
+From 4664412d7a5266d2b392957406b34abc5db95e48 Mon Sep 17 00:00:00 2001
+From: Stefan Dirsch <sndirsch@suse.de>
+Date: Tue, 7 Oct 2014 11:29:32 +0200
+Subject: xf86xv.h cannot be included without first including xorg-server.h.
+
+Without this the build fails on systems with the latest glibc,
+throwing this error:
+
+In file included from /usr/include/string.h:634:0,
+ from /usr/include/xorg/os.h:53,
+ from /usr/include/xorg/misc.h:115,
+ from /usr/include/xorg/screenint.h:50,
+ from /usr/include/xorg/scrnintstr.h:50,
+ from /usr/include/xorg/xvdix.h:55,
+ from /usr/include/xorg/xf86xv.h:32,
+ from vmwgfx_overlay.c:38:
+/usr/include/xorg/os.h:579:1: error: expected identifier or '(' before '__extension__'
+strndup(const char *str, size_t n);
+
+This is caused by HAVE_STRNDUP not being set (it is set from xorg-server.h),
+causing os.h to redefine it.
+
+Signed-off-by: Stefan Dirsch <sndirsch@suse.de>
+Reviewed-by: Daniel Stone <daniels@collabora.com>
+Acked-by: Thomas Hellstrom <thellstrom@vmware.com>
+
+diff --git a/vmwgfx/vmwgfx_overlay.c b/vmwgfx/vmwgfx_overlay.c
+index ef1d541..2b05b0e 100644
+--- a/vmwgfx/vmwgfx_overlay.c
++++ b/vmwgfx/vmwgfx_overlay.c
+@@ -35,6 +35,7 @@
+ */
+
+
++#include "xorg-server.h"
+ #include "xf86xv.h"
+ #include "fourcc.h"
+ #define debug_printf(...)
+--
+cgit v0.10.2
+
diff --git a/x11-drivers/xf86-video-vmware/metadata.xml b/x11-drivers/xf86-video-vmware/metadata.xml
new file mode 100644
index 000000000000..e943b72b8a48
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>x11@gentoo.org</email>
+ <name>X11</name>
+</maintainer>
+</pkgmetadata>
diff --git a/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.1-r1.ebuild b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.1-r1.ebuild
new file mode 100644
index 000000000000..41ee92e97667
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.1-r1.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_DRI=always
+XORG_EAUTORECONF=yes
+inherit xorg-2
+
+DESCRIPTION="VMware SVGA video driver"
+KEYWORDS="amd64 x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libdrm[libkms,video_cards_vmware]
+ >=media-libs/mesa-10[xa]"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-damageunregister.patch
+ "${FILESDIR}"/${P}-xatracker-2.patch
+ "${FILESDIR}"/${P}-xa-compat-2.patch
+)
diff --git a/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.2.ebuild b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.2.ebuild
new file mode 100644
index 000000000000..029baa4fad5c
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.0.2.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_DRI=always
+inherit xorg-2
+
+DESCRIPTION="VMware SVGA video driver"
+KEYWORDS="~amd64 ~x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="x11-libs/libdrm[libkms,video_cards_vmware]
+ media-libs/mesa[xa]"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}"/${PN}-13.0.2-fix-includes.patch )
diff --git a/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.1.0.ebuild b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.1.0.ebuild
new file mode 100644
index 000000000000..df20f6cc4cd6
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.1.0.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_DRI=always
+inherit xorg-2
+
+DESCRIPTION="VMware SVGA video driver"
+KEYWORDS="amd64 x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="kernel_linux"
+
+RDEPEND="kernel_linux? (
+ x11-libs/libdrm[libkms,video_cards_vmware]
+ media-libs/mesa[xa]
+ )"
+DEPEND="${RDEPEND}"
diff --git a/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.2.1.ebuild b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.2.1.ebuild
new file mode 100644
index 000000000000..c8bddfa62215
--- /dev/null
+++ b/x11-drivers/xf86-video-vmware/xf86-video-vmware-13.2.1.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+XORG_DRI=always
+inherit xorg-2
+
+DESCRIPTION="VMware SVGA video driver"
+KEYWORDS="amd64 x86 ~amd64-fbsd ~x86-fbsd"
+IUSE="kernel_linux"
+
+RDEPEND="kernel_linux? (
+ x11-libs/libdrm[libkms,video_cards_vmware]
+ media-libs/mesa[xa]
+ )"
+DEPEND="${RDEPEND}"