xserver: Branch 'master' - 9 commits
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Tue Apr 30 20:14:43 UTC 2019
glx/meson.build | 2 +-
hw/xwin/meson.build | 2 ++
hw/xwin/winclipboard/meson.build | 1 +
include/meson.build | 13 ++++++++-----
meson.build | 11 ++++++++++-
os/strcasestr.c | 1 -
6 files changed, 22 insertions(+), 8 deletions(-)
New commits:
commit 504468d2cf56c6588342249c4625a0bfadf0751d
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Fri Apr 26 19:46:05 2019 +0100
meson: Don't use strndup() unless it's prototyped
A workaround for https://github.com/mesonbuild/meson/issues/3672
MinGW-w64 gcc has a built-in strndup, but it's not in the C library and
MinGW-w64 headers don't prototype it.
Don't try to use it, as that will cause an undefined reference if gcc
decides that an out-of-line call is appropriate.
diff --git a/include/meson.build b/include/meson.build
index 3f3024b50..09707cec5 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -159,7 +159,7 @@ conf_data.set('HAVE_STRCASESTR', cc.has_function('strcasestr'))
conf_data.set('HAVE_STRLCAT', cc.has_function('strlcat', dependencies: libbsd_dep))
conf_data.set('HAVE_STRLCPY', cc.has_function('strlcpy', dependencies: libbsd_dep))
conf_data.set('HAVE_STRNCASECMP', cc.has_function('strncasecmp'))
-conf_data.set('HAVE_STRNDUP', cc.has_function('strndup'))
+conf_data.set('HAVE_STRNDUP', cc.has_function('strndup') and cc.has_header_symbol('string.h', 'strndup'))
conf_data.set('HAVE_TIMINGSAFE_MEMCMP', cc.has_function('timingsafe_memcmp'))
conf_data.set('HAVE_VASPRINTF', cc.has_function('vasprintf'))
conf_data.set('HAVE_VSNPRINTF', cc.has_function('vsnprintf'))
commit d3a528c91ec77b29d4d70091f5eb6939919a19ab
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Thu Apr 25 23:21:46 2019 +0100
Remove unneeded include of dix.h from strcasestr.c
In the meson build, functions to make up for the shortcomings of libc
are compiled into a separate library. We don't bother making the pixman
headers available (reasonably enough) to this compilation, but they are
required indirectly by dix.h. Just remove this unneeded include.
diff --git a/os/strcasestr.c b/os/strcasestr.c
index 1ca2ad6bb..3189cf21e 100644
--- a/os/strcasestr.c
+++ b/os/strcasestr.c
@@ -36,7 +36,6 @@
#include <ctype.h>
#include <string.h>
-#include "dix.h"
/*
* Find the first occurrence of find in s, ignore case.
commit fd52110ec44b97359c2d75bb54047e6de10ed856
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Fri Apr 26 01:09:25 2019 +0100
meson: Don't try to build tests on Windows
Most of these could be made to work, but would need to be ported off
using fork and poll...
diff --git a/meson.build b/meson.build
index 6467a6b7c..80f353e0c 100644
--- a/meson.build
+++ b/meson.build
@@ -630,7 +630,10 @@ libxserver = [
libxserver += libxserver_dri3
subdir('hw')
-subdir('test')
+
+if host_machine.system() != 'windows'
+ subdir('test')
+endif
install_man(configure_file(
input: 'man/Xserver.man',
commit 50b8670fdf7ab9195617145c229d8fae8519f5a9
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Fri Apr 26 01:00:28 2019 +0100
meson: Require clock_gettime() as well for MONOTONIC_CLOCK
As configure.ac, require that clock_gettime() exists as well to use
MONOTONIC_CLOCK (MinGW provides the define, but not the function)
diff --git a/include/meson.build b/include/meson.build
index 144d82061..3f3024b50 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -20,7 +20,8 @@ conf_data.set('HAVE_TYPEOF', cc.compiles('''
''',
name: 'typeof()'))
-conf_data.set('MONOTONIC_CLOCK', cc.compiles('''
+conf_data.set('MONOTONIC_CLOCK', cc.has_function('clock_gettime') and
+cc.compiles('''
#define _POSIX_C_SOURCE 200112L
#include <time.h>
#include <unistd.h>
commit 92a52611f6ee2777cb11d5125c04a983b9a662d1
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Fri Apr 26 00:46:09 2019 +0100
meson: Link with ws2_32 for socket functions on Windows
diff --git a/hw/xwin/winclipboard/meson.build b/hw/xwin/winclipboard/meson.build
index 0395eb32d..71518a7d9 100644
--- a/hw/xwin/winclipboard/meson.build
+++ b/hw/xwin/winclipboard/meson.build
@@ -14,6 +14,7 @@ xwin_clipboard = static_library(
dependencies: [
dependency('x11'),
dependency('xfixes'),
+ socket_dep,
],
)
diff --git a/meson.build b/meson.build
index 2a3e2100b..6467a6b7c 100644
--- a/meson.build
+++ b/meson.build
@@ -525,6 +525,12 @@ if get_option('xselinux') != 'false'
endif
endif
+socket_dep = []
+if host_machine.system() == 'windows'
+ socket_dep = meson.get_compiler('c').find_library('ws2_32')
+ common_dep += socket_dep
+endif
+
glx_inc = include_directories('glx')
top_srcdir_inc = include_directories('.')
commit d21224cd150e28c2868c8d194e68fe4474cdce1b
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Fri Apr 26 00:32:29 2019 +0100
meson: Don't set UNIXCONN on Windows
As XTRANS_CONNECTION_FLAGS did, don't try to build unix socket support
on Windows.
diff --git a/include/meson.build b/include/meson.build
index f7991c045..144d82061 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -185,7 +185,7 @@ if not conf_data.get('HAVE_GETPEEREID') and not conf_data.get('HAVE_GETPEERUCRED
endif
conf_data.set('TCPCONN', '1')
-conf_data.set('UNIXCONN', '1')
+conf_data.set('UNIXCONN', host_machine.system() != 'windows')
conf_data.set('IPv6', build_ipv6)
conf_data.set('BIGREQS', '1')
commit 93a1cdcc78bc909e25a224b76ae8f6a90322d0ba
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Thu Apr 25 14:53:38 2019 +0100
meson: Fix hw/xwin for -Dglx=false
hw/xwin/meson.build:140:0: ERROR: Unknown variable "xwin_windowsdri".
hw/xwin/meson.build:141:0: ERROR: Unknown variable "xwin_glx".
diff --git a/hw/xwin/meson.build b/hw/xwin/meson.build
index 7e1375cfd..72e4fe3c2 100644
--- a/hw/xwin/meson.build
+++ b/hw/xwin/meson.build
@@ -24,6 +24,8 @@ srcs_windows = [
]
subdir('winclipboard')
+xwin_glx = []
+xwin_windowsdri = []
if build_glx
if build_windowsdri
xwin_c_args += '-DXWIN_WINDOWS_DRI'
commit 331850ce6f0c48a1cfc489da2a27ca0220997a2f
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Thu Apr 25 14:39:58 2019 +0100
meson: Fix value of libglxvnd in -Dglx=false build
hw/vfb/meson.build:7:0: ERROR: '' is not a target.
diff --git a/glx/meson.build b/glx/meson.build
index 69d558e78..7f9e549f0 100644
--- a/glx/meson.build
+++ b/glx/meson.build
@@ -65,7 +65,7 @@ hdrs_vnd = [
'vndserver.h',
]
-libglxvnd = ''
+libglxvnd = []
if build_glx
libglxvnd = static_library('libglxvnd',
srcs_vnd,
commit c2feeca1b008fb01b2128daef2dc361dfb193a41
Author: Jon Turney <jon.turney at dronecode.org.uk>
Date: Sun Apr 28 21:56:20 2019 +0100
meson: Absence of dri.pc is an error if building with GLX
Currently, this can error if dri.pc isn't found, as we can't then get
the value of pkgconfig variable from it:
include/meson.build:199:10: ERROR: 'dri' is not a pkgconfig dependency
I think we need DRI_DRIVER_PATH (only) when building GLX, even if dri2/3
isn't enabled, so we know where to load swrast_dri.so from.
(For autotools, configure.ac directly calls `pkg-config
--variable=dridriverdir dri`, the backticks swallowing any error,
causing the value of this define to be empty if dri.pc isn't present)
diff --git a/include/meson.build b/include/meson.build
index bbd5a6690..f7991c045 100644
--- a/include/meson.build
+++ b/include/meson.build
@@ -10,7 +10,7 @@ endif
release = major * 10000000 + minor * 100000 + patch * 1000 + subpatch
-dri_dep = dependency('dri', required: build_dri2 or build_dri3)
+dri_dep = dependency('dri', required: build_glx)
conf_data = configuration_data()
conf_data.set('_DIX_CONFIG_H_', '1')
@@ -196,7 +196,9 @@ conf_data.set('DGA', build_dga)
conf_data.set('DPMSExtension', build_dpms)
conf_data.set('DRI2', build_dri2)
conf_data.set('DRI3', build_dri3)
-conf_data.set_quoted('DRI_DRIVER_PATH', dri_dep.get_pkgconfig_variable('dridriverdir'))
+if build_glx
+ conf_data.set_quoted('DRI_DRIVER_PATH', dri_dep.get_pkgconfig_variable('dridriverdir'))
+endif
conf_data.set('HAS_SHM', build_mitshm)
conf_data.set('MITSHM', build_mitshm)
conf_data.set('PANORAMIX', build_xinerama)
More information about the xorg-commit
mailing list