meson: generate pkg-config -uninstalled pc files
[platform/upstream/gstreamer.git] / pkgconfig / meson.build
1 pkgconf = configuration_data()
2
3 pkgconf.set('prefix', get_option('prefix'))
4 pkgconf.set('exec_prefix', '${prefix}')
5 pkgconf.set('libdir', '${prefix}/@0@'.format(get_option('libdir')))
6 pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir')))
7 pkgconf.set('GST_API_VERSION', api_version)
8 pkgconf.set('VERSION', gst_version)
9
10 # needed for generating -uninstalled.pc files
11 pkgconf.set('abs_top_builddir', join_paths(meson.current_build_dir(), '..'))
12 pkgconf.set('abs_top_srcdir', join_paths(meson.current_source_dir(), '..'))
13 pkgconf.set('audiolibdir', join_paths(meson.build_root(), gstbadaudio.outdir()))
14 pkgconf.set('baselibdir', join_paths(meson.build_root(), gstbadbase.outdir()))
15 pkgconf.set('videolibdir', join_paths(meson.build_root(), gstbadvideo.outdir()))
16 pkgconf.set('codecparserslibdir', join_paths(meson.build_root(), gstcodecparsers.outdir()))
17 pkgconf.set('gllibdir', join_paths(meson.build_root(), gstgl.outdir()))
18 pkgconf.set('insertbinlibdir', join_paths(meson.build_root(), gstinsertbin.outdir()))
19 pkgconf.set('mpegtslibdir', join_paths(meson.build_root(), gstmpegts.outdir()))
20 pkgconf.set('playerlibdir', join_paths(meson.build_root(), gstplayer.outdir()))
21 pkgconf.set('waylandlibdir', join_paths(meson.build_root(), gstwayland.outdir()))
22 pkgconf.set('basecamerabinsrclibdir', join_paths(meson.build_root(), gstbasecamerabin.outdir()))
23 pkgconf.set('photographylibdir', join_paths(meson.build_root(), gstphotography.outdir()))
24
25 pkg_install_dir = '@0@/pkgconfig'.format(get_option('libdir'))
26
27 pkg_libs = [
28   'bad-audio',
29   'bad-base',
30   'bad-video',
31   'codecparsers',
32   'insertbin',
33   'mpegts',
34   'player',
35   'plugins-bad',
36 ]
37
38 # XXX: requires the meson.build to be parsed/executed after gst-libs/gl/meson.build
39 if build_gstgl
40   pkg_libs += 'gl'
41 endif
42
43 foreach p : pkg_libs
44   infile = 'gstreamer-@0@.pc.in'.format(p)
45   outfile = 'gstreamer-@0@-@1@.pc'.format(p, api_version)
46   configure_file(input : infile,
47     output : outfile,
48     configuration : pkgconf,
49     install_dir : pkg_install_dir)
50
51   infile = 'gstreamer-@0@-uninstalled.pc.in'.format(p)
52   outfile = 'gstreamer-@0@-@1@-uninstalled.pc'.format(p, api_version)
53   configure_file(input : infile,
54     output : outfile,
55     configuration : pkgconf)
56 endforeach