MesaLib-dfbsd-meson: Update wip/MesaLib-dfbsd-meson to git 2019-05-03

This commit is contained in:
David Shao 2019-05-03 23:23:00 -07:00
parent 3a71b5a074
commit 5d095275e8
15 changed files with 69 additions and 320 deletions

View File

@ -1,7 +1,16 @@
# $NetBSD: Makefile,v 1.20 2019/04/25 07:32:56 maya Exp $
# 2019-05-03 st/va: check resource_get_info nullity in vlVaDeriveImage
COMMIT_ID= 8cd71f399e73c5d87e9162cc74da76e317a9f41f
# 2019-05-03 radv: apply the indexing workaround for atomic buffer operations on GFX9
# COMMIT_ID= 4f18c43d1df64135e8968a7d4fbfd2c9918b76ae
# 2019-05-03 anv: fix crash when application does not provide push constants
# COMMIT_ID= 80dc78407d0d1e03ceddf8889b217e8fd113568d
# 2019-05-02 anv: Stop including POS in FS input limits
COMMIT_ID= be7e9870d620460a91e8fbdbb8bf39b5c462aed3
# COMMIT_ID= be7e9870d620460a91e8fbdbb8bf39b5c462aed3
# 2019-05-02 docs: fixup mistake in contents
# COMMIT_ID= 96924aa92ecf16cd2145b1a881df37d9162c6ba7

View File

@ -1,9 +1,9 @@
$NetBSD: distinfo,v 1.17 2019/05/01 19:31:45 maya Exp $
SHA1 (mesa-be7e9870d620460a91e8fbdbb8bf39b5c462aed3.tar.xz) = e6b5051b59f8700bf928fd79970ce48037953898
RMD160 (mesa-be7e9870d620460a91e8fbdbb8bf39b5c462aed3.tar.xz) = d7313261e7b9777d513fca84de30491d5da44207
SHA512 (mesa-be7e9870d620460a91e8fbdbb8bf39b5c462aed3.tar.xz) = c343d6331c7de9ae25e9dbdb35120236f0eb41506eb610a1e0a50e7759e14318b1dedcf2951fc4513b4009231ca747b873a74c7da9d1df01b503f7a65a3209e1
Size (mesa-be7e9870d620460a91e8fbdbb8bf39b5c462aed3.tar.xz) = 10875384 bytes
SHA1 (mesa-8cd71f399e73c5d87e9162cc74da76e317a9f41f.tar.xz) = 74e0e4e21298240d35e8cb59f9efe9bfdb1104af
RMD160 (mesa-8cd71f399e73c5d87e9162cc74da76e317a9f41f.tar.xz) = 2ab4747836960c4a3c9de7872e8e15a9769c6d0b
SHA512 (mesa-8cd71f399e73c5d87e9162cc74da76e317a9f41f.tar.xz) = 03d777d0c84a554fdaf780a67299e51b6eadaad525ac984aa5b442f27a0feb6fc65bb4733b6be8a038d250c8d64473e293feeae3fef791587058d97bf413a13f
Size (mesa-8cd71f399e73c5d87e9162cc74da76e317a9f41f.tar.xz) = 10876392 bytes
SHA1 (patch-include_GL_internal_dri__interface.h) = ed567949ae44f7477738138347cf9648b9a8d634
SHA1 (patch-meson.build) = 3cd30902cd5af7bc860dd2984a51d9ebf051662e
SHA1 (patch-meson__options.txt) = 171ac109444b0ce8ea37e53b72f529a4b5e5c6f6
@ -14,18 +14,13 @@ SHA1 (patch-src_compiler_builtin__type__macros.h) = 128030d0c532e5f3982dc6ebde19
SHA1 (patch-src_compiler_glsl_glsl__parser__extras.cpp) = ef114d6e288e6d212fce9d1c0606f7d454a171c4
SHA1 (patch-src_egl_drivers_dri2_platform__drm.c) = e18e7b1ffbc74b8acf3d9095a92c750f9d005479
SHA1 (patch-src_egl_drivers_dri2_platform__x11.c) = 1b8c7689b18643777d494bbb491866ed0041155d
SHA1 (patch-src_egl_main_eglglobals.c) = 1b723fb03c13e267b23e7cb94b2f19c2bfa03be5
SHA1 (patch-src_egl_main_eglglobals.c) = c8db1469859d448635f96a0eac1a936104cd0fdd
SHA1 (patch-src_gallium_auxiliary_drivers_trace_tr__dump.c) = 360e1608508a7bbb41acecd58930781038e2309e
SHA1 (patch-src_gallium_auxiliary_pipe-loader_pipe__loader__drm.c) = 14f0511191ef468a39e3248d44f7dbdffa554547
SHA1 (patch-src_gallium_auxiliary_rtasm_rtasm__execmem.c) = 1c1e0f02f247cd2322f19f10e67d61cf56e65487
SHA1 (patch-src_gallium_auxiliary_util_u__format__tests.c) = d878e6f3e9a0a37d4903c0d0551f9fa535635d40
SHA1 (patch-src_gallium_drivers_freedreno_freedreno__screen.c) = b19e93b1612d6eacccf35260110db9402eb4edca
SHA1 (patch-src_gallium_drivers_i915_i915__fpc__translate.c) = 1c69741c2c9285569c6326d8d29d5af936e1929a
SHA1 (patch-src_gallium_drivers_iris_iris__bufmgr.c) = 542b24813743290ce031cd1632e83f8255b71a32
SHA1 (patch-src_gallium_drivers_iris_meson.build) = 31f0afab5212860917fe78e2b282a730187502ef
SHA1 (patch-src_gallium_drivers_llvmpipe_lp__setup__line.c) = bc049154cbfb788855ad6675a339ef07b15cd573
SHA1 (patch-src_gallium_drivers_llvmpipe_lp__setup__point.c) = f6a2c5940010cd93f955c969616af7a7c550fab4
SHA1 (patch-src_gallium_drivers_llvmpipe_lp__setup__tri.c) = 430fdde0943074c0b4cfeaebe5b7e3c930c6bcf3
SHA1 (patch-src_gallium_drivers_nouveau_meson.build) = 59de3f012f604ae185d90c5c64521f35580eaa00
SHA1 (patch-src_gallium_drivers_nouveau_nouveau__vp3__video.c) = 04f95784c3270c9bb7e95377982e217962481525
SHA1 (patch-src_gallium_drivers_nouveau_nv50_nv84__video.c) = 1b4239fe053523835ecac006894bdb0cde0ee626
@ -41,14 +36,12 @@ SHA1 (patch-src_gallium_state__trackers_clover_llvm_invocation.cpp) = 3053db09fb
SHA1 (patch-src_gallium_state__trackers_clover_llvm_metadata.hpp) = c97d38098ea03658bc193a50e445b87f1c020839
SHA1 (patch-src_gallium_state__trackers_clover_util_range.hpp) = cdc78067986c1b92818472c4201c58ef1b42c4f4
SHA1 (patch-src_gallium_winsys_radeon_drm_radeon__drm__winsys.c) = 8c73f29a93e4e7ae8c0acd6f5f345047dc8a8541
SHA1 (patch-src_gbm_backends_dri_gbm__dri.c) = b827957f7df62bf3a25979b29a8cd8576e3ea62b
SHA1 (patch-src_glx_apple_apple__glapi.c) = c4eea8dabf74eb03d22da4eb834b18ae3384c63b
SHA1 (patch-src_glx_dri__common.c) = 7f87917dbef11621a488554a49797b1407c4a5c4
SHA1 (patch-src_glx_dri__common.h) = 0274877f8c65a4bb729536a897df4704897a4c6e
SHA1 (patch-src_glx_dri__glx.c) = 8fd48776e9953b18bd17ba130d90ae2935e67242
SHA1 (patch-src_glx_glxclient.h) = 5e597362c3839f26118fe98983701f33d6047cfd
SHA1 (patch-src_glx_glxcurrent.c) = 67142b977aadf23b0b0d3a06db3d9450e0b7f892
SHA1 (patch-src_glx_glxext.c) = 1c044d38faebc310f49248a6b937b1bbc5a16870
SHA1 (patch-src_glx_glxext.c) = 15c2c5e0c6b5095ce849fb86ad148aa05d7d907a
SHA1 (patch-src_intel_compiler_brw__fs__bank__conflicts.cpp) = 6276d2c6846bb4dd08699921bec4e20202a17478
SHA1 (patch-src_intel_isl_isl__tiled__memcpy.c) = f019e47e535e2c2ab8d324937362a4c7965311f1
SHA1 (patch-src_intel_perf_gen__perf.h) = 2915eb9dc7161d74d73b8e238dc1f0d0d9b82935
@ -68,10 +61,10 @@ SHA1 (patch-src_mapi_u__current.c) = bee667c667bb1bd6e3b0f774d6ad6da5b7f0546d
SHA1 (patch-src_mapi_u__current.h) = 13e91936db8d468c4f4744eb5cc01ad879b53539
SHA1 (patch-src_mapi_u__execmem.c) = 3b448405aeea0b17cfa58e8fe66708467b6eeb8a
SHA1 (patch-src_mesa_drivers_dri_i915_intel__screen.c) = fb9324dcbc8ffbc00bee6aedcc38db2e94b24f9d
SHA1 (patch-src_mesa_drivers_dri_i965_brw__bufmgr.c) = 7a6edf46b9364bcdb2dbe8d70a2e6a1d0610dc40
SHA1 (patch-src_mesa_drivers_dri_i965_brw__bufmgr.c) = ad0fc0cacf59dde38d18f9ceb93411105cdd6c89
SHA1 (patch-src_mesa_drivers_dri_i965_intel__screen.c) = 1b5de370add6984fb44968c055b7d8d5a54417dd
SHA1 (patch-src_mesa_drivers_dri_swrast_swrast.c) = 4c0ca7dec2398a15f77b643d0f86af41ca202be3
SHA1 (patch-src_mesa_main_context.c) = a7c796810104971e2fd76b15397d068e628f0a9e
SHA1 (patch-src_mesa_main_context.c) = 441026b8f073fd90f2586dfb306482feed6c6834
SHA1 (patch-src_mesa_main_execmem.c) = 4a0a790e648e63907454b78318c7edbecc11d02c
SHA1 (patch-src_mesa_main_extensions.c) = 2f48bdb1176c2878bb33bcfab7556172b50a987e
SHA1 (patch-src_mesa_main_macros.h) = c5dceaa8dc02a58e5b2273d82e3fe1cc12e327d3

View File

@ -24,22 +24,21 @@ PKG_SUPPORTED_OPTIONS+= revert_i965_softpin
PKG_SUPPORTED_OPTIONS+= revert_sdma_uploader
PKG_SUPPORTED_OPTIONS+= require_36_gen4
PKG_SUPPORTED_OPTIONS+= no_cs_queue
PKG_SUPPORTED_OPTIONS+= revert_threaded_context
PKG_SUPPORTED_OPTIONS+= revert_copy_clear
PKG_SUPPORTED_OPTIONS+= physmem_netbsd
PKG_SUPPORTED_OPTIONS+= setaffinity_np_netbsd
PKG_SUPPORTED_OPTIONS+= no_initial_exec_nonnull
PKG_SUPPORTED_OPTIONS+= no_cs_queue
PKG_SUPPORTED_OPTIONS+= revert_threaded_context
PKG_SUPPORTED_OPTIONS+= revert_copy_clear
PKG_SUPPORTED_OPTIONS+= no_getprogramname
PKG_SUPPORTED_OPTIONS+= strict_xsrc_netbsd
PKG_SUPPORTED_OPTIONS+= x86_tsd_openbsd
PKG_SUPPORTED_OPTIONS+= so_name_openbsd
PKG_SUPPORTED_OPTIONS+= disable_wx_memory
PKG_SUPPORTED_OPTIONS+= no_linear_alloc_destructor
PKG_SUPPORTED_OPTIONS+= invert_atomic_add_unless
PKG_SUGGESTED_OPTIONS+= xvmc
PKG_SUGGESTED_OPTIONS+= vdpau vaapi
@ -115,12 +114,6 @@ PKG_SUGGESTED_OPTIONS+= revert_sdma_uploader
PKG_SUGGESTED_OPTIONS+= require_36_gen4
.endif
.if ${OPSYS} == "NetBSD"
PKG_SUGGESTED_OPTIONS+= no_cs_queue
PKG_SUGGESTED_OPTIONS+= revert_threaded_context
PKG_SUGGESTED_OPTIONS+= revert_copy_clear
.endif
.if ${OPSYS} == "NetBSD"
PKG_SUGGESTED_OPTIONS+= physmem_netbsd
.endif
@ -133,6 +126,12 @@ PKG_SUGGESTED_OPTIONS+= setaffinity_np_netbsd
PKG_SUGGESTED_OPTIONS+= no_initial_exec_nonnull
.endif
.if ${OPSYS} == "NetBSD"
PKG_SUGGESTED_OPTIONS+= no_cs_queue
PKG_SUGGESTED_OPTIONS+= revert_threaded_context
PKG_SUGGESTED_OPTIONS+= revert_copy_clear
.endif
# .if ${OPSYS} == "NetBSD"
# PKG_SUGGESTED_OPTIONS+= no_getprogramname
# .endif
@ -146,11 +145,6 @@ PKG_SUGGESTED_OPTIONS+= no_initial_exec_nonnull
PKG_SUGGESTED_OPTIONS+= x86_tsd_openbsd
.endif
# Shorten names dlopened to libGL.so and libglapi.so
.if ${OPSYS} == "OpenBSD"
PKG_SUGGESTED_OPTIONS+= so_name_openbsd
.endif
# Disable code for init_heap for fear of W^X violation
.if ${OPSYS} == "OpenBSD"
PKG_SUGGESTED_OPTIONS+= disable_wx_memory
@ -160,11 +154,6 @@ PKG_SUGGESTED_OPTIONS+= disable_wx_memory
PKG_SUGGESTED_OPTIONS+= no_linear_alloc_destructor
.endif
# Causes segfault in mpv on DragonFly intel EagleLake machine
# .if ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly"
# PKG_SUGGESTED_OPTIONS+= invert_atomic_add_unless
# .endif
.include "../../mk/bsd.options.mk"
# gallium
@ -509,18 +498,6 @@ CPPFLAGS+= -DREVERT_SDMA_UPLOADER
CPPFLAGS+= -DREQUIRE_36_GEN4
.endif
.if !empty(PKG_OPTIONS:Mno_cs_queue)
CPPFLAGS+= -DNO_CS_QUEUE
.endif
.if !empty(PKG_OPTIONS:Mrevert_threaded_context)
CPPFLAGS+= -DREVERT_THREADED_CONTEXT
.endif
.if !empty(PKG_OPTIONS:Mrevert_copy_clear)
CPPFLAGS+= -DREVERT_COPY_CLEAR
.endif
.if !empty(PKG_OPTIONS:Mphysmem_netbsd)
CPPFLAGS+= -DPHYSMEM_NETBSD
.endif
@ -533,6 +510,18 @@ CPPFLAGS+= -DSETAFFINITY_NP_NETBSD
CPPFLAGS+= -DNO_INITIAL_EXEC_NONNULL
.endif
.if !empty(PKG_OPTIONS:Mno_cs_queue)
CPPFLAGS+= -DNO_CS_QUEUE
.endif
.if !empty(PKG_OPTIONS:Mrevert_threaded_context)
CPPFLAGS+= -DREVERT_THREADED_CONTEXT
.endif
.if !empty(PKG_OPTIONS:Mrevert_copy_clear)
CPPFLAGS+= -DREVERT_COPY_CLEAR
.endif
.if !empty(PKG_OPTIONS:Mno_getprogramname)
CPPFLAGS+= -DNO_GETPROGRAMNAME
.endif
@ -545,10 +534,6 @@ CPPFLAGS+= -DSTRICT_XSRC_NETBSD
CPPFLAGS+= -DX86_TSD_OPENBSD
.endif
.if !empty(PKG_OPTIONS:Mso_name_openbsd)
CPPFLAGS+= -DSO_NAME_OPENBSD
.endif
.if !empty(PKG_OPTIONS:Mdisable_wx_memory)
CPPFLAGS+= -DDISABLE_WX_MEMORY
.endif
@ -556,7 +541,3 @@ CPPFLAGS+= -DDISABLE_WX_MEMORY
.if !empty(PKG_OPTIONS:Mno_linear_alloc_destructor)
CPPFLAGS+= -DNO_LINEAR_ALLOC_DESTRUCTOR
.endif
.if !empty(PKG_OPTIONS:Minvert_atomic_add_unless)
CPPFLAGS+= -DINVERT_ATOMIC_ADD_UNLESS
.endif

View File

@ -1,61 +0,0 @@
$NetBSD: patch-src_mesa_drivers_dri_i965_brw__performance__query.c,v 1.2 2018/10/16 15:21:20 jperkin Exp $
--- src/mesa/drivers/dri/i965/brw_performance_query.c.orig 2019-02-21 18:11:53.000000000 +0000
+++ src/mesa/drivers/dri/i965/brw_performance_query.c
@@ -1797,6 +1797,9 @@ enumerate_sysfs_metrics(struct brw_conte
DIR *metricsdir = NULL;
struct dirent *metric_entry;
int len;
+#ifdef __sun
+ struct stat s;
+#endif
len = snprintf(buf, sizeof(buf), "%s/metrics", brw->perfquery.sysfs_dev_dir);
if (len < 0 || len >= sizeof(buf)) {
@@ -1813,10 +1816,19 @@ enumerate_sysfs_metrics(struct brw_conte
while ((metric_entry = readdir(metricsdir))) {
struct hash_entry *entry;
+#if defined(__sun)
+ stat(metric_entry->d_name, &s);
+ if ((s.st_mode != S_IFDIR &&
+ s.st_mode != S_IFLNK) ||
+ metric_entry->d_name[0] == '.')
+ continue;
+#else
+
if ((metric_entry->d_type != DT_DIR &&
metric_entry->d_type != DT_LNK) ||
metric_entry->d_name[0] == '.')
continue;
+#endif
DBG("metric set: %s\n", metric_entry->d_name);
entry = _mesa_hash_table_search(brw->perfquery.oa_metrics_table,
@@ -2056,6 +2068,9 @@ get_sysfs_dev_dir(struct brw_context *br
DIR *drmdir;
struct dirent *drm_entry;
int len;
+#ifdef __sun
+ struct stat s;
+#endif
brw->perfquery.sysfs_dev_dir[0] = '\0';
@@ -2087,9 +2102,16 @@ get_sysfs_dev_dir(struct brw_context *br
}
while ((drm_entry = readdir(drmdir))) {
+#if defined(__sun)
+ stat(drm_entry->d_name, &s);
+ if ((s.st_mode == S_IFDIR ||
+ s.st_mode == S_IFLNK) &&
+ strncmp(drm_entry->d_name, "card", 4) == 0)
+#else
if ((drm_entry->d_type == DT_DIR ||
drm_entry->d_type == DT_LNK) &&
strncmp(drm_entry->d_name, "card", 4) == 0)
+#endif
{
len = snprintf(brw->perfquery.sysfs_dev_dir,
sizeof(brw->perfquery.sysfs_dev_dir),

View File

@ -5,15 +5,17 @@ atexit() is not a good idea in shared libraries.
FreeBSD reported atexit bug for 10.6:
https://bugs.freedesktop.org/show_bug.cgi?id=91869
--- src/egl/main/eglglobals.c.orig 2019-03-15 01:02:19.000000000 +0000
From NetBSD xsrc:
The third argument of mincore(2) is unsigned only on linux.
--- src/egl/main/eglglobals.c.orig 2019-05-03 15:59:12.000000000 +0000
+++ src/egl/main/eglglobals.c
@@ -93,11 +93,23 @@ struct _egl_global _eglGlobal =
@@ -93,11 +93,22 @@ struct _egl_global _eglGlobal =
.debugTypesEnabled = _EGL_DEBUG_BIT_CRITICAL | _EGL_DEBUG_BIT_ERROR,
};
+#if defined(HAVE_NOATEXIT)
+/* static EGLBoolean registered = EGL_FALSE; */
+static int add_atexit_called = 0;
+static EGLBoolean registered = EGL_FALSE;
+static void __attribute__((__destructor__))
+#else
@ -24,30 +26,24 @@ https://bugs.freedesktop.org/show_bug.cgi?id=91869
EGLint i;
+
+#if defined(HAVE_NOATEXIT)
+ if (!add_atexit_called)
+ if (!registered)
+ return;
+#endif
+
for (i = _eglGlobal.NumAtExitCalls - 1; i >= 0; i--)
_eglGlobal.AtExitCalls[i]();
}
@@ -106,15 +118,26 @@ _eglAtExit(void)
void
@@ -107,14 +118,20 @@ void
_eglAddAtExitCall(void (*func)(void))
{
+#if 0
+ static EGLBoolean registered = EGL_FALSE;
+#endif
+
if (func) {
+#if 1
+#if !defined(HAVE_NOATEXIT)
static EGLBoolean registered = EGL_FALSE;
+#endif
mtx_lock(_eglGlobal.Mutex);
+#if defined(HAVE_NOATEXIT)
+ add_atexit_called = 1;
+ registered = EGL_TRUE;
+#else
if (!registered) {
@ -58,3 +54,15 @@ https://bugs.freedesktop.org/show_bug.cgi?id=91869
assert(_eglGlobal.NumAtExitCalls < ARRAY_SIZE(_eglGlobal.AtExitCalls));
_eglGlobal.AtExitCalls[_eglGlobal.NumAtExitCalls++] = func;
@@ -162,7 +179,10 @@ _eglPointerIsDereferencable(void *p)
{
#ifdef HAVE_MINCORE
uintptr_t addr = (uintptr_t) p;
- unsigned char valid = 0;
+#ifdef __linux__
+ unsigned
+#endif
+ char valid = 0;
const long page_size = getpagesize();
if (p == NULL)

View File

@ -1,16 +0,0 @@
$NetBSD$
--- src/gallium/drivers/i915/i915_fpc_translate.c.orig 2019-03-15 01:02:19.000000000 +0000
+++ src/gallium/drivers/i915/i915_fpc_translate.c
@@ -1095,7 +1095,11 @@ i915_init_compile(struct i915_context *i
p->decl = p->declarations;
p->decl_s = 0;
p->decl_t = 0;
+#if defined(STRICT_XSRC_NETBSD)
+ p->temp_flag = ~0x0U << I915_MAX_TEMPORARY;
+#else
p->temp_flag = ~0x0 << I915_MAX_TEMPORARY;
+#endif
p->utemp_flag = ~0x7;
/* initialize the first program word */

View File

@ -1,23 +0,0 @@
$NetBSD$
This single patch allows glxgears to run properly on
an Intel integrated graphics IvyBridge machine on DragonFly.
libdrm atomic_add_unless() may reverse return value meaning
https://bugs.freedesktop.org/show_bug.cgi?id=100077
This does not seem the correct choice in mesa3d.
--- src/gallium/drivers/iris/iris_bufmgr.c.orig 2019-03-30 17:05:31.000000000 +0000
+++ src/gallium/drivers/iris/iris_bufmgr.c
@@ -114,7 +114,11 @@ atomic_add_unless(int *v, int add, int u
c = p_atomic_read(v);
while (c != unless && (old = p_atomic_cmpxchg(v, c, c + add)) != c)
c = old;
+#if defined(INVERT_ATOMIC_ADD_UNLESS)
+ return c != unless;
+#else
return c == unless;
+#endif
}
static const char *

View File

@ -1,28 +0,0 @@
$NetBSD$
--- src/gallium/drivers/llvmpipe/lp_setup_line.c.orig 2019-03-15 01:02:19.000000000 +0000
+++ src/gallium/drivers/llvmpipe/lp_setup_line.c
@@ -724,7 +724,11 @@ try_setup_line( struct lp_setup_context
struct lp_rast_plane *plane_s = &plane[4];
if (s_planes[0]) {
+#if defined(STRICT_XSRC_NETBSD)
+ plane_s->dcdx = ~0U << 8;
+#else
plane_s->dcdx = -1 << 8;
+#endif
plane_s->dcdy = 0;
plane_s->c = (1-scissor->x0) << 8;
plane_s->eo = 1 << 8;
@@ -746,7 +750,11 @@ try_setup_line( struct lp_setup_context
}
if (s_planes[3]) {
plane_s->dcdx = 0;
+#if defined(STRICT_XSRC_NETBSD)
+ plane_s->dcdy = ~0U << 8;
+#else
plane_s->dcdy = -1 << 8;
+#endif
plane_s->c = (scissor->y1+1) << 8;
plane_s->eo = 0;
plane_s++;

View File

@ -1,28 +0,0 @@
$NetBSD$
--- src/gallium/drivers/llvmpipe/lp_setup_point.c.orig 2019-03-15 01:02:19.000000000 +0000
+++ src/gallium/drivers/llvmpipe/lp_setup_point.c
@@ -491,7 +491,11 @@ try_setup_point( struct lp_setup_context
{
struct lp_rast_plane *plane = GET_PLANES(point);
+#if defined(STRICT_XSRC_NETBSD)
+ plane[0].dcdx = ~0U << 8;
+#else
plane[0].dcdx = -1 << 8;
+#endif
plane[0].dcdy = 0;
plane[0].c = (1-bbox.x0) << 8;
plane[0].eo = 1 << 8;
@@ -507,7 +511,11 @@ try_setup_point( struct lp_setup_context
plane[2].eo = 1 << 8;
plane[3].dcdx = 0;
+#if defined(STRICT_XSRC_NETBSD)
+ plane[3].dcdy = ~0U << 8;
+#else
plane[3].dcdy = -1 << 8;
+#endif
plane[3].c = (bbox.y1+1) << 8;
plane[3].eo = 0;
}

View File

@ -1,28 +0,0 @@
$NetBSD$
--- src/gallium/drivers/llvmpipe/lp_setup_tri.c.orig 2019-03-15 01:02:19.000000000 +0000
+++ src/gallium/drivers/llvmpipe/lp_setup_tri.c
@@ -687,7 +687,11 @@ do_triangle_ccw(struct lp_setup_context
struct lp_rast_plane *plane_s = &plane[3];
if (s_planes[0]) {
+#if defined(STRICT_XSRC_NETBSD)
+ plane_s->dcdx = ~0U << 8;
+#else
plane_s->dcdx = -1 << 8;
+#endif
plane_s->dcdy = 0;
plane_s->c = (1-scissor->x0) << 8;
plane_s->eo = 1 << 8;
@@ -709,7 +713,11 @@ do_triangle_ccw(struct lp_setup_context
}
if (s_planes[3]) {
plane_s->dcdx = 0;
+#if defined(STRICT_XSRC_NETBSD)
+ plane_s->dcdy = ~0U << 8;
+#else
plane_s->dcdy = -1 << 8;
+#endif
plane_s->c = (scissor->y1+1) << 8;
plane_s->eo = 0;
plane_s++;

View File

@ -1,16 +0,0 @@
$NetBSD$
--- src/gbm/backends/dri/gbm_dri.c.orig 2019-03-06 23:05:20.000000000 +0000
+++ src/gbm/backends/dri/gbm_dri.c
@@ -302,7 +302,11 @@ dri_open_driver(struct gbm_dri_device *d
/* XXX: Library name differs on per platforms basis. Update this as
* osx/cygwin/windows/bsd gets support for GBM..
*/
+#if defined(SO_NAME_OPENBSD)
+ dlopen("libglapi.so", RTLD_LAZY | RTLD_GLOBAL);
+#else
dlopen("libglapi.so.0", RTLD_LAZY | RTLD_GLOBAL);
+#endif
static const char *search_path_vars[] = {
/* Read GBM_DRIVERS_PATH first for compatibility, but LIBGL_DRIVERS_PATH

View File

@ -1,15 +0,0 @@
$NetBSD$
--- src/glx/dri_common.c.orig 2019-03-06 23:05:20.000000000 +0000
+++ src/glx/dri_common.c
@@ -73,6 +73,10 @@ dri_message(int level, const char *f, ..
}
}
+#if defined(SO_NAME_OPENBSD)
+#define GL_LIB_NAME "libGL.so"
+#endif
+
#ifndef GL_LIB_NAME
#define GL_LIB_NAME "libGL.so.1"
#endif

View File

@ -35,7 +35,7 @@ $NetBSD: patch-src_glx_glxext.c,v 1.1 2018/10/07 23:49:31 ryoon Exp $
if (glx_direct && glx_accel) {
#if defined(HAVE_DRI3)
- if (!env_var_as_boolean("LIBGL_DRI3_DISABLE", false))
+#if ((defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !defined(__DRM_NEXT__)) || defined(TEST_DRI3_ENABLE)
+#if ((defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && !defined(__DRM_NEXT__)) || defined(__DragonFly__) || defined(__NetBSD__)
+ if (env_var_as_boolean("LIBGL_DRI3_ENABLE", false))
+#endif
+ if (!env_var_as_boolean("LIBGL_DRI3_DISABLE", false)) {

View File

@ -1,10 +1,5 @@
$NetBSD$
This single patch allows glxgears to run properly on
an Intel integrated graphics IvyBridge machine on DragonFly.
libdrm atomic_add_unless() may reverse return value meaning
https://bugs.freedesktop.org/show_bug.cgi?id=100077
From Ravenports
graphics/mesa-dri: Disable soft-spinning of all buffers (#169)
@ -20,21 +15,9 @@ Discussion in
https://bugs.dragonflybsd.org/issues/3171
--- src/mesa/drivers/dri/i965/brw_bufmgr.c.orig 2019-03-05 16:06:50.000000000 +0000
--- src/mesa/drivers/dri/i965/brw_bufmgr.c.orig 2019-05-03 15:59:12.000000000 +0000
+++ src/mesa/drivers/dri/i965/brw_bufmgr.c
@@ -98,7 +98,11 @@ atomic_add_unless(int *v, int add, int u
c = p_atomic_read(v);
while (c != unless && (old = p_atomic_cmpxchg(v, c, c + add)) != c)
c = old;
+#if defined(INVERT_ATOMIC_ADD_UNLESS)
+ return c != unless;
+#else
return c == unless;
+#endif
}
/**
@@ -1721,7 +1725,11 @@ brw_bufmgr_init(struct gen_device_info *
@@ -1721,7 +1721,11 @@ brw_bufmgr_init(struct gen_device_info *
bufmgr->initial_kflags |= EXEC_OBJECT_SUPPORTS_48B_ADDRESS;
/* Allocate VMA in userspace if we have softpin and full PPGTT. */

View File

@ -9,14 +9,14 @@ https://bugs.freedesktop.org/show_bug.cgi?id=82246
FreeBSD reported atexit bug for 10.6:
https://bugs.freedesktop.org/show_bug.cgi?id=91869
--- src/mesa/main/context.c.orig 2019-03-15 01:02:19.000000000 +0000
--- src/mesa/main/context.c.orig 2019-05-03 15:59:12.000000000 +0000
+++ src/mesa/main/context.c
@@ -357,11 +357,23 @@ mtx_t OneTimeLock = _MTX_INITIALIZER_NP;
* Calls all the various one-time-fini functions in Mesa
*/
+#if defined(HAVE_NOATEXIT)
+static int init_called = 0;
+static GLbitfield api_init_mask = 0x0;
+static void __attribute__((__destructor__))
+#else
static void
@ -24,7 +24,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=91869
one_time_fini(void)
{
+#if defined(HAVE_NOATEXIT)
+ if (init_called) {
+ if (api_init_mask) {
+ _mesa_destroy_shader_compiler();
+ _mesa_locale_fini();
+ }
@ -39,7 +39,7 @@ https://bugs.freedesktop.org/show_bug.cgi?id=91869
static void
one_time_init( struct gl_context *ctx )
{
+#if 1
+#if !defined(HAVE_NOATEXIT)
static GLbitfield api_init_mask = 0x0;
+#endif
@ -55,13 +55,3 @@ https://bugs.freedesktop.org/show_bug.cgi?id=91869
#if defined(DEBUG)
if (MESA_VERBOSE != 0) {
@@ -416,6 +432,9 @@ one_time_init( struct gl_context *ctx )
}
api_init_mask |= 1 << ctx->API;
+#if defined(HAVE_NOATEXIT)
+ init_called = 1;
+#endif
mtx_unlock(&OneTimeLock);
}