gstreamer/subprojects/gst-plugins-base/gst-libs/gst/fft/meson.build
Thibault Saunier 6e79932ad9 meson: List libraries and their corresponding gir definition
Introduces a `libraries` variable that contains all libraries in a
list with the following format:

``` meson
libraries = [
    [pkg_name, {
        'lib': library_object
        'gir': [ {full gir definition in a dict } ]
    ],
    ....
]
```

It therefore refactors the way we build the gir so that we can reuse the
same information to build them against 'gstreamer-full' in gst-build
when linking statically

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093>
2021-10-15 19:27:30 -03:00

52 lines
1.1 KiB
Meson

fft_sources = [
'gstfft.c',
'gstffts16.c',
'gstffts32.c',
'gstfftf32.c',
'gstfftf64.c',
'kiss_fft_s16.c',
'kiss_fft_s32.c',
'kiss_fft_f32.c',
'kiss_fft_f64.c',
'kiss_fftr_s16.c',
'kiss_fftr_s32.c',
'kiss_fftr_f32.c',
'kiss_fftr_f64.c'
]
fft_headers = [
'fft.h',
'fft-prelude.h',
'gstfftf32.h',
'gstfftf64.h',
'gstfft.h',
'gstffts16.h',
'gstffts32.h',
]
install_headers(fft_headers, subdir : 'gstreamer-1.0/gst/fft/')
gstfft = library('gstfft-@0@'.format(api_version),
fft_sources,
c_args : gst_plugins_base_args + ['-DBUILDING_GST_FFT'],
include_directories: [configinc, libsinc],
version : libversion,
soversion : soversion,
darwin_versions : osxversion,
install : true,
dependencies : [gst_dep, libm],
)
pkg_name = 'gstreamer-fft-1.0'
pkgconfig.generate(gstfft,
libraries : [gst_dep],
variables : pkgconfig_variables,
subdirs : pkgconfig_subdirs,
name : pkg_name,
description : 'FFT implementation',
)
libraries += [[pkg_name, {'lib': gstfft}]]
fft_dep = declare_dependency(link_with: gstfft,
include_directories : [libsinc],
dependencies : [gst_dep])
meson.override_dependency(pkg_name, fft_dep)