gstreamer/pkgconfig/meson.build
Matthew Waters a4caf7b254 build: libcheck may require linking against rt
In static linking scenarios, this is required to avoid this error
building tests:

/work/prefix/lib/libgstcheck-1.0.a(check_run.c.o): In function `tcase_run_tfun_fork':
/work/gstreamer/_builddir/../../../src/gstreamer/libs/gst/check/libcheck/check_run.c:476: undefined reference to `timer_create'
/work/gstreamer/_builddir/../../../src/gstreamer/libs/gst/check/libcheck/check_run.c:483: undefined reference to `timer_settime'
/work/gstreamer/_builddir/../../../src/gstreamer/libs/gst/check/libcheck/check_run.c:493: undefined reference to `timer_delete'
/work/prefix/lib/libgstcheck-1.0.a(check.c.o): In function `check_get_clockid':
/work/gstreamer/_builddir/../../../src/gstreamer/libs/gst/check/libcheck/check.c:628: undefined reference to `timer_create'
/work/gstreamer/_builddir/../../../src/gstreamer/libs/gst/check/libcheck/check.c:629: undefined reference to `timer_delete'

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/447>
2020-04-23 15:55:46 +10:00

52 lines
1.8 KiB
Meson

pkgconf = configuration_data()
pkgconf.set('prefix', join_paths(get_option('prefix')))
pkgconf.set('exec_prefix', '${prefix}')
pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
pkgconf.set('libexecdir', '${prefix}/@0@'.format(get_option('libexecdir')))
pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
pkgconf.set('GST_API_VERSION', apiversion)
pkgconf.set('VERSION', gst_version)
pkgconf.set('LIBM', mathlib.found() ? '-lm' : '')
pkgconf.set('LIBRT', rt_lib.found() ? '-lrt' : '')
# Requires.private
pkgconf.set('UNWIND_REQUIRE', cdata.has('HAVE_UNWIND') ? 'libunwind' : '')
pkgconf.set('DW_REQUIRE', cdata.has('HAVE_DW') ? 'libdw' : '')
# needed for generating -uninstalled.pc files
pkgconf.set('abs_top_builddir', join_paths(meson.current_build_dir(), '..'))
pkgconf.set('abs_top_srcdir', join_paths(meson.current_source_dir(), '..'))
pkgconf.set('gstlibdir', join_paths(meson.build_root(), libgst.outdir()))
pkgconf.set('baselibdir', join_paths(meson.build_root(), gst_base.outdir()))
pkgconf.set('controllerlibdir', join_paths(meson.build_root(), gst_controller.outdir()))
pkgconf.set('netlibdir', join_paths(meson.build_root(), gst_net.outdir()))
pkg_install_dir = '@0@/pkgconfig'.format(get_option('libdir'))
pkg_files = [
'gstreamer-base',
'gstreamer-controller',
'gstreamer-net',
'gstreamer'
]
if not get_option('check').disabled()
pkg_files += ['gstreamer-check']
pkgconf.set('checklibdir', join_paths(meson.build_root(), gst_check.outdir()))
endif
foreach p : pkg_files
infile = p + '.pc.in'
outfile = p + '-1.0.pc'
configure_file(input : infile,
output : outfile,
configuration : pkgconf,
install_dir : pkg_install_dir)
infile = p + '-uninstalled.pc.in'
outfile = p + '-1.0-uninstalled.pc'
configure_file(input : infile,
output : outfile,
configuration : pkgconf)
endforeach