pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

libdrm-dfbsd: Fix refined for atomic_add_unless and add libkms



Module Name:	pkgsrc-wip
Committed By:	David Shao <davshao%gmail.com@localhost>
Pushed By:	dshao
Date:		Wed Mar 8 15:11:53 2017 -0800
Changeset:	d9378c266395997ef1bb9467ad519ac75989a268

Modified Files:
	libdrm-dfbsd/Makefile
	libdrm-dfbsd/TODO
	libdrm-dfbsd/distinfo
	libdrm-dfbsd/patches/patch-xf86atomic.h

Log Message:
libdrm-dfbsd: Fix refined for atomic_add_unless and add libkms

Changes:
* NetBSD seems to prefer the previous form of atomic_add_unless
  with the incorrect comparison c == unless.

* Add libkms option.

* Change pthreadstubs option to be default.

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=d9378c266395997ef1bb9467ad519ac75989a268

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 libdrm-dfbsd/Makefile                   | 2 ++
 libdrm-dfbsd/TODO                       | 7 +++++--
 libdrm-dfbsd/distinfo                   | 2 +-
 libdrm-dfbsd/patches/patch-xf86atomic.h | 7 +++++--
 4 files changed, 13 insertions(+), 5 deletions(-)

diffs:
diff --git a/libdrm-dfbsd/Makefile b/libdrm-dfbsd/Makefile
index 30a78fcd9a..dc10e7a8e0 100644
--- a/libdrm-dfbsd/Makefile
+++ b/libdrm-dfbsd/Makefile
@@ -16,6 +16,7 @@ USE_PKGLOCALEDIR=	yes
 USE_TOOLS+=		pkg-config
 USE_LIBTOOL=		yes
 PKGCONFIG_OVERRIDE+=	libdrm.pc.in
+PKGCONFIG_OVERRIDE+=	libkms.pc.in
 GNU_CONFIGURE=		yes
 
 .include "../../mk/bsd.prefs.mk"
@@ -53,6 +54,7 @@ PLIST.arm=	yes
 
 PKG_OPTIONS_VAR=	PKG_OPTIONS.libdrm
 PKG_SUPPORTED_OPTIONS=	pthreadstubs libkms
+PKG_SUGGESTED_OPTIONS+=	pthreadstubs
 
 .if !empty(MACHINE_ARCH:Mi386) || !empty(MACHINE_ARCH:Mx86_64)
 PKG_SUGGESTED_OPTIONS+=	libkms
diff --git a/libdrm-dfbsd/TODO b/libdrm-dfbsd/TODO
index 58bcf6fcfd..ebfc9768f2 100644
--- a/libdrm-dfbsd/TODO
+++ b/libdrm-dfbsd/TODO
@@ -1,5 +1,8 @@
 Copy port to x11/libdrm, do not install from wip.
 
-Implements changes to libdrm to work with mesa 17.0.0 discussed in
+Implements changes to libdrm to work with mesa 17.0.1 discussed in
 pkg/51795
-(x11/libdrm update xf86drm.c for mesa 17.0.0 needs negotiation)
+(x11/libdrm update xf86drm.c for mesa 17.0.1 needs negotiation)
+
+Figure out why NetBSD prefers the incorrect version of
+atomic_add_unless that returns the c == unless comparison.
diff --git a/libdrm-dfbsd/distinfo b/libdrm-dfbsd/distinfo
index 1b3259311c..47ccda3374 100644
--- a/libdrm-dfbsd/distinfo
+++ b/libdrm-dfbsd/distinfo
@@ -11,5 +11,5 @@ SHA1 (patch-intel_intel__decode.c) = b22124dc63e02cd1eb3d7f5346722701a6ebf916
 SHA1 (patch-libkms_vmwgfx.c) = d2204c0b79098c6c36b7f282b486c58c6354bd1d
 SHA1 (patch-radeon_radeon__bo__gem.c) = 4924fde172b2a2a713d47bf7b60a6b52851d7a8f
 SHA1 (patch-radeon_radeon__cs__gem.c) = 516b5dd6408c10a4f33f2815b3719e34a16d863a
-SHA1 (patch-xf86atomic.h) = 5585ba346cb8836d295060875b0fb5c87a404660
+SHA1 (patch-xf86atomic.h) = 887db95db00125bdfa1ab298b2ccc555dec70366
 SHA1 (patch-xf86drmMode.c) = 29485f5d03d2538145599fd74a28e2d2acd7d8d6
diff --git a/libdrm-dfbsd/patches/patch-xf86atomic.h b/libdrm-dfbsd/patches/patch-xf86atomic.h
index 897c9dae1d..da8af22050 100644
--- a/libdrm-dfbsd/patches/patch-xf86atomic.h
+++ b/libdrm-dfbsd/patches/patch-xf86atomic.h
@@ -7,12 +7,15 @@ https://bugs.freedesktop.org/show_bug.cgi?id=100077
 
 --- xf86atomic.h.orig	2015-09-22 04:34:51.000000000 +0000
 +++ xf86atomic.h
-@@ -111,7 +111,7 @@ static inline int atomic_add_unless(atom
+@@ -111,7 +111,11 @@ static inline int atomic_add_unless(atom
  	c = atomic_read(v);
  	while (c != unless && (old = atomic_cmpxchg(v, c, c + add)) != c)
  		c = old;
--	return c == unless;
++#if defined(__FreeBSD__) || defined(__DragonFly__)
 +	return c != unless;
++#else
+ 	return c == unless;
++#endif
  }
  
  #endif


Home | Main Index | Thread Index | Old Index