On FreeBSD, add dependency on epoll-shim library.

FreeBSD doesn't provide timerfd and eventfd functions. These are implemented in
3rd party library called epoll-shim. Link targets requiring these functions to
this library.
This commit is contained in:
Gleb Popov 2019-11-09 23:03:38 +04:00 committed by Wim Taymans
parent 68e94a2e7e
commit fd937fa378
12 changed files with 26 additions and 17 deletions

View file

@ -30,7 +30,7 @@ executable('pipewire',
install: true,
c_args : pipewire_c_args,
include_directories : [configinc, spa_inc],
dependencies : [pipewire_dep],
dependencies : [pipewire_dep, epoll_shim_dep],
)
if get_option('systemd') and systemd.found()

View file

@ -75,10 +75,15 @@ install_headers(pipewire_headers, subdir : 'pipewire')
libpipewire_c_args = [
'-DHAVE_CONFIG_H',
'-D_GNU_SOURCE',
'-D_POSIX_C_SOURCE',
]
if build_machine.system() != 'freebsd'
libpipewire_c_args += [
'-D_GNU_SOURCE',
'-D_POSIX_C_SOURCE'
]
endif
libpipewire_name = 'pipewire-@0@'.format(apiversion)
libpipewire = shared_library(libpipewire_name, pipewire_sources,
version : libversion,
@ -86,12 +91,12 @@ libpipewire = shared_library(libpipewire_name, pipewire_sources,
c_args : libpipewire_c_args,
include_directories : [pipewire_inc, configinc, spa_inc],
install : true,
dependencies : [dl_lib, mathlib, pthread_lib],
dependencies : [dl_lib, mathlib, pthread_lib, epoll_shim_dep],
)
pipewire_dep = declare_dependency(link_with : libpipewire,
include_directories : [pipewire_inc, configinc, spa_inc],
dependencies : [pthread_lib],
dependencies : [pthread_lib, epoll_shim_dep],
)
pkgconfig.generate(filebase : 'lib@0@'.format(libpipewire_name),