summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLyude Paul <lyude@redhat.com>2018-04-18 18:09:15 -0400
committerAdam Jackson <ajax@redhat.com>2018-04-19 16:20:22 -0400
commit4e28a6a223c4f9d0f5defe0313a94e22e0416787 (patch)
tree47053da6688944493af3bf4e5dc0db2e39fc2d3b
parent3b4671f9e9c85f23e7593652e1482b11dc3ad4af (diff)
meson: Ensure we always build Xext/hashtable.c for glx
Seems that while glxvnd relies on some of the hashtable functions in Xext, we only build hashtable support for Xext if we're also building the res extension. This leads to some errors if you try to build glx without res enabled: glx/liblibglxvnd.a(vndcmds.c.o): In function `LookupVendorPrivDispatch': /home/lyudess/Projects/xserver/glx/vndcmds.c:65: undefined reference to `ht_find' /home/lyudess/Projects/xserver/glx/vndcmds.c:67: undefined reference to `ht_add' glx/liblibglxvnd.a(vndcmds.c.o): In function `GlxDispatchInit': /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_generic_compare' /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_generic_hash' /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_create' glx/liblibglxvnd.a(vndcmds.c.o): In function `GlxDispatchReset': /home/lyudess/Projects/xserver/glx/vndcmds.c:468: undefined reference to `ht_destroy' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. So, make sure that hashtable.c gets both for both glx and res Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Lyude Paul <lyude@redhat.com>
-rw-r--r--Xext/meson.build6
-rw-r--r--meson.build9
2 files changed, 14 insertions, 1 deletions
diff --git a/Xext/meson.build b/Xext/meson.build
index a72173718..7727e207e 100644
--- a/Xext/meson.build
+++ b/Xext/meson.build
@@ -23,8 +23,12 @@ if build_mitshm
hdrs_xext += ['shmint.h']
endif
+if build_hashtable
+ srcs_xext += 'hashtable.c'
+endif
+
if build_res
- srcs_xext += ['hashtable.c', 'xres.c']
+ srcs_xext += 'xres.c'
endif
if build_screensaver
diff --git a/meson.build b/meson.build
index e2dad87bb..5e794ccd0 100644
--- a/meson.build
+++ b/meson.build
@@ -96,6 +96,8 @@ nettle_dep = dependency('nettle')
dbus_required = get_option('systemd_logind') == 'true'
dbus_dep = dependency('dbus-1', version: '>= 1.0', required: dbus_required)
+build_hashtable = false
+
# Resolve default values of some options
xkb_dir = get_option('xkb_dir')
if xkb_dir == ''
@@ -300,6 +302,9 @@ if not xdmcp_dep.found()
endif
build_glx = get_option('glx')
+if build_glx
+ build_hashtable = true
+endif
libdrm_dep = dependency('libdrm', version: '>= 2.4.89', required: false)
@@ -363,6 +368,10 @@ endif
build_xf86bigfont = get_option('xf86bigfont')
build_screensaver = get_option('screensaver')
build_res = get_option('xres')
+if build_res
+ build_hashtable = true
+endif
+
build_xace = get_option('xace')
build_xinerama = get_option('xinerama')