aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meson.build10
-rw-r--r--src/meson.build6
-rw-r--r--tests/meson.build3
3 files changed, 15 insertions, 4 deletions
diff --git a/meson.build b/meson.build
index 714a86d..427aacf 100644
--- a/meson.build
+++ b/meson.build
@@ -43,6 +43,14 @@ foreach f: have_funcs
endforeach
if get_option('libraries')
+ if host_machine.system() == 'freebsd'
+ # When building for FreeBSD, epoll(7) is provided by a userspace
+ # wrapper around kqueue(2).
+ epoll_dep = dependency('epoll-shim')
+ else
+ # Otherwise, assume that epoll(7) is supported natively.
+ epoll_dep = []
+ endif
ffi_dep = dependency('libffi')
decls = [
@@ -52,7 +60,7 @@ if get_option('libraries')
]
foreach d: decls
- if not cc.has_header_symbol(d['header'], d['symbol'])
+ if not cc.has_header_symbol(d['header'], d['symbol'], dependencies: epoll_dep)
error('@0@ is needed to compile Wayland libraries'.format(d['symbol']))
endif
endforeach
diff --git a/src/meson.build b/src/meson.build
index ec00d81..a5d7410 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -89,7 +89,7 @@ if get_option('libraries')
'connection.c',
'wayland-os.c'
],
- dependencies: [ ffi_dep, rt_dep ]
+ dependencies: [ epoll_dep, ffi_dep, rt_dep ]
)
wayland_private_dep = declare_dependency(
@@ -163,6 +163,7 @@ if get_option('libraries')
],
version: '0.1.0',
dependencies: [
+ epoll_dep,
ffi_dep,
wayland_private_dep,
wayland_util_dep,
@@ -177,7 +178,7 @@ if get_option('libraries')
wayland_server_dep = declare_dependency(
link_with: wayland_server,
include_directories: [ root_inc, include_directories('.') ],
- dependencies: [ ffi_dep, mathlib_dep, threads_dep ],
+ dependencies: [ epoll_dep, ffi_dep, mathlib_dep, threads_dep ],
sources: [
wayland_server_protocol_core_h,
wayland_server_protocol_h
@@ -206,6 +207,7 @@ if get_option('libraries')
],
version: '0.3.0',
dependencies: [
+ epoll_dep,
ffi_dep,
wayland_private_dep,
wayland_util_dep,
diff --git a/tests/meson.build b/tests/meson.build
index 2e11af4..58794e7 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -9,6 +9,7 @@ test_runner = static_library(
dependencies: [
cc.find_library('dl', required: false),
dependency('threads'),
+ epoll_dep,
ffi_dep,
wayland_util_dep,
wayland_private_dep,
@@ -154,7 +155,7 @@ tests = {
foreach test_name, test_extra_sources: tests
test_sources = [ test_name + '.c' ] + test_extra_sources
- test_deps = [test_runner_dep]
+ test_deps = [test_runner_dep, epoll_dep]
bin = executable(test_name, test_sources, dependencies: test_deps)
test(
test_name,