diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2017-01-04 16:51:10 +0100 |
---|---|---|
committer | Thibault Saunier <thibault.saunier@osg.samsung.com> | 2017-01-05 09:52:47 -0300 |
commit | e92837b6e40b5ed706239a2a1814ff1c1f0d2ff5 (patch) | |
tree | d86a324daeeca464724793d98a5ad59a36c90825 | |
parent | eb728ad13b4f77b2c8b032be34bd736428bb8c0e (diff) | |
download | gstreamer-plugins-bad-e92837b6e40b5ed706239a2a1814ff1c1f0d2ff5.tar.gz |
meson: generate pkg-config -uninstalled pc files
Generating those files is useful for users building the GStreamer stack
using meson and having to link it to another project which is still
using the autotools.
While doing so, fix some -uninstalled pc files which were using a
suspicious 'pcfiledir' which was never replaced or defined.
https://bugzilla.gnome.org/show_bug.cgi?id=776810
-rw-r--r-- | pkgconfig/Makefile.am | 16 | ||||
-rw-r--r-- | pkgconfig/gstreamer-bad-audio-uninstalled.pc.in | 2 | ||||
-rw-r--r-- | pkgconfig/gstreamer-bad-base-uninstalled.pc.in | 2 | ||||
-rw-r--r-- | pkgconfig/gstreamer-bad-video-uninstalled.pc.in | 2 | ||||
-rw-r--r-- | pkgconfig/gstreamer-codecparsers-uninstalled.pc.in | 4 | ||||
-rw-r--r-- | pkgconfig/gstreamer-gl-uninstalled.pc.in | 2 | ||||
-rw-r--r-- | pkgconfig/gstreamer-insertbin-uninstalled.pc.in | 4 | ||||
-rw-r--r-- | pkgconfig/gstreamer-mpegts-uninstalled.pc.in | 4 | ||||
-rw-r--r-- | pkgconfig/gstreamer-player-uninstalled.pc.in | 4 | ||||
-rw-r--r-- | pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in | 2 | ||||
-rw-r--r-- | pkgconfig/gstreamer-wayland-uninstalled.pc.in | 4 | ||||
-rw-r--r-- | pkgconfig/meson.build | 22 |
12 files changed, 51 insertions, 17 deletions
diff --git a/pkgconfig/Makefile.am b/pkgconfig/Makefile.am index 88c7e5204..b64837cc6 100644 --- a/pkgconfig/Makefile.am +++ b/pkgconfig/Makefile.am @@ -35,7 +35,21 @@ cp_verbose_0 = @echo " CP $@"; %-@GST_API_VERSION@.pc: %.pc $(cp_verbose_0)cp $< $@ %-@GST_API_VERSION@-uninstalled.pc: %-uninstalled.pc - $(cp_verbose_0)cp $< $@ +### the uninstalled libdir is depend of the build system used so set it here +### rather than hardcoding it in the file directly. + $(AM_V_GEN) sed \ + -e "s|[@]audiolibdir[@]|$(abs_top_builddir)/gst-libs/gst/audio/.libs|" \ + -e "s|[@]baselibdir[@]|$(abs_top_builddir)/gst-libs/gst/base/.libs|" \ + -e "s|[@]videolibdir[@]|$(abs_top_builddir)/gst-libs/gst/video/.libs|" \ + -e "s|[@]codecparserslibdir[@]|$(abs_top_builddir)/gst-libs/gst/codecparsers/.libs|" \ + -e "s|[@]gllibdir[@]|$(abs_top_builddir)/gst-libs/gst/gl/.libs|" \ + -e "s|[@]insertbinlibdir[@]|$(abs_top_builddir)/gst-libs/gst/insertbin/.libs|" \ + -e "s|[@]mpegtslibdir[@]|$(abs_top_builddir)/gst-libs/gst/mpegts/.libs|" \ + -e "s|[@]playerlibdir[@]|$(abs_top_builddir)/gst-libs/gst/player/.libs|" \ + -e "s|[@]waylandlibdir[@]|$(abs_top_builddir)/gst-libs/gst/wayland/.libs|" \ + -e "s|[@]basecamerabinsrclibdir[@]|$(abs_top_builddir)/gst-libs/gst/basecamerabinsrc/.libs|" \ + -e "s|[@]photographylibdir[@]|$(abs_top_builddir)/gst-libs/gst/interfaces/.libs|" \ + $< > $@.tmp && mv $@.tmp $@ pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = $(pcverfiles) diff --git a/pkgconfig/gstreamer-bad-audio-uninstalled.pc.in b/pkgconfig/gstreamer-bad-audio-uninstalled.pc.in index 6b95364ee..e2fa1151c 100644 --- a/pkgconfig/gstreamer-bad-audio-uninstalled.pc.in +++ b/pkgconfig/gstreamer-bad-audio-uninstalled.pc.in @@ -1,6 +1,6 @@ prefix= exec_prefix= -libdir=@abs_top_builddir@/gst-libs/gst/audio/.libs +libdir=@audiolibdir@ includedir=@abs_top_srcdir@/gst-libs Name: GStreamer bad audio library, uninstalled diff --git a/pkgconfig/gstreamer-bad-base-uninstalled.pc.in b/pkgconfig/gstreamer-bad-base-uninstalled.pc.in index e11a01bcc..b227027b3 100644 --- a/pkgconfig/gstreamer-bad-base-uninstalled.pc.in +++ b/pkgconfig/gstreamer-bad-base-uninstalled.pc.in @@ -1,6 +1,6 @@ prefix= exec_prefix= -libdir=@abs_top_builddir@/gst-libs/gst/base/.libs +libdir=@baselibdir@ includedir=@abs_top_builddir@/gst-libs girdir=@abs_top_builddir@/gst-libs/gst/base typelibdir=@abs_top_builddir@/gst-libs/gst/base diff --git a/pkgconfig/gstreamer-bad-video-uninstalled.pc.in b/pkgconfig/gstreamer-bad-video-uninstalled.pc.in index f9ae7bf40..09ccdfea7 100644 --- a/pkgconfig/gstreamer-bad-video-uninstalled.pc.in +++ b/pkgconfig/gstreamer-bad-video-uninstalled.pc.in @@ -1,6 +1,6 @@ prefix= exec_prefix= -libdir=@abs_top_builddir@/gst-libs/gst/video/.libs +libdir=@videolibdir@ includedir=@abs_top_builddir@/gst-libs girdir=@abs_top_builddir@/gst-libs/gst/video typelibdir=@abs_top_builddir@/gst-libs/gst/video diff --git a/pkgconfig/gstreamer-codecparsers-uninstalled.pc.in b/pkgconfig/gstreamer-codecparsers-uninstalled.pc.in index 71ed7713e..fa39c08cf 100644 --- a/pkgconfig/gstreamer-codecparsers-uninstalled.pc.in +++ b/pkgconfig/gstreamer-codecparsers-uninstalled.pc.in @@ -1,7 +1,7 @@ prefix= exec_prefix= -libdir=${pcfiledir}/../gst-libs/gst/codecparsers/.libs -includedir=${pcfiledir}/../gst-libs +libdir=@codecparserslibdir@ +includedir=@abs_top_builddir@/gst-libs Name: GStreamer codec parsers, Uninstalled Description: Bitstream parsers for GStreamer elements, uninstalled diff --git a/pkgconfig/gstreamer-gl-uninstalled.pc.in b/pkgconfig/gstreamer-gl-uninstalled.pc.in index dac4cda3f..1d2955936 100644 --- a/pkgconfig/gstreamer-gl-uninstalled.pc.in +++ b/pkgconfig/gstreamer-gl-uninstalled.pc.in @@ -1,6 +1,6 @@ prefix= exec_prefix= -libdir=@abs_top_builddir@/gst-libs/gst/gl/.libs +libdir=@gllibdir@ includedir=@abs_top_builddir@/gst-libs girdir=@abs_top_builddir@/gst-libs/gst/base typelibdir=@abs_top_builddir@/gst-libs/gst/base diff --git a/pkgconfig/gstreamer-insertbin-uninstalled.pc.in b/pkgconfig/gstreamer-insertbin-uninstalled.pc.in index 1a535aaca..328e77b26 100644 --- a/pkgconfig/gstreamer-insertbin-uninstalled.pc.in +++ b/pkgconfig/gstreamer-insertbin-uninstalled.pc.in @@ -1,7 +1,7 @@ prefix= exec_prefix= -libdir=${pcfiledir}/../gst-libs/gst/insertbin/.libs -includedir=${pcfiledir}/../gst-libs +libdir=@insertbinlibdir@ +includedir=@abs_top_srcdir@/gst-libs Name: GStreamer Insert Bin, Uninstalled Description: Bin to automatically and insertally link elements, uninstalled diff --git a/pkgconfig/gstreamer-mpegts-uninstalled.pc.in b/pkgconfig/gstreamer-mpegts-uninstalled.pc.in index 179996c2c..abe7f0b32 100644 --- a/pkgconfig/gstreamer-mpegts-uninstalled.pc.in +++ b/pkgconfig/gstreamer-mpegts-uninstalled.pc.in @@ -1,7 +1,7 @@ prefix= exec_prefix= -libdir=${pcfiledir}/../gst-libs/gst/mpegts/.libs -includedir=${pcfiledir}/../gst-libs +libdir=@mpegtslibdir@ +includedir=@abs_top_srcdir@/gst-libs Name: GStreamer MPEG-TS, Uninstalled Description: GStreamer MPEG-TS support, uninstalled diff --git a/pkgconfig/gstreamer-player-uninstalled.pc.in b/pkgconfig/gstreamer-player-uninstalled.pc.in index 5c2c0d778..0cae959d2 100644 --- a/pkgconfig/gstreamer-player-uninstalled.pc.in +++ b/pkgconfig/gstreamer-player-uninstalled.pc.in @@ -1,7 +1,7 @@ prefix= exec_prefix= -libdir=${pcfiledir}/../gst-libs/gst/player/.libs -includedir=${pcfiledir}/../gst-libs +libdir=@playerlibdir@ +includedir=@abs_top_srcdir@/gst-libs Name: GStreamer Player, Uninstalled Description: GStreamer Player convenience library, uninstalled diff --git a/pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in b/pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in index df9a9c504..84f2441ea 100644 --- a/pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in +++ b/pkgconfig/gstreamer-plugins-bad-uninstalled.pc.in @@ -10,5 +10,5 @@ Name: GStreamer Bad Plugin libraries, Uninstalled Description: Streaming media framework, bad plugins libraries, uninstalled Version: @VERSION@ Requires: gstreamer-@GST_API_VERSION@ -Libs: -L@abs_top_builddir@/gst-libs/gst/audio/.libs -L@abs_top_builddir@/gst-libs/gst/basecamerabinsrc/.libs -L@abs_top_builddir@/gst-libs/gst/codecparsers/.libs -L@abs_top_builddir@/gst-libs/gst/gl/.libs -L@abs_top_builddir@/gst-libs/gst/insertbin/.libs -L@abs_top_builddir@/gst-libs/gst/interfaces/.libs -L@abs_top_builddir@/gst-libs/gst/mpegts/.libs -L@abs_top_builddir@/gst-libs/gst/player/.libs -L@abs_top_builddir@/gst-libs/gst/signalprocessor/.libs -L@abs_top_builddir@/gst-libs/gst/video/.libs -L@abs_top_builddir@/gst-libs/gst/wayland/.libs +Libs: -L@audiolibdir@ -L@basecamerabinsrclibdir@ -L@codecparserslibdir@ -L@gllibdir@ -L@insertbinlibdir@ -L@photographylibdir@ -L@mpegtslibdir@ -L@playerlibdir@ -L@videolibdir@ -L@waylandlibdir@ Cflags: -I@abs_top_srcdir@/gst-libs -I@abs_top_builddir@/gst-libs diff --git a/pkgconfig/gstreamer-wayland-uninstalled.pc.in b/pkgconfig/gstreamer-wayland-uninstalled.pc.in index 80d6e1b43..2661c1e38 100644 --- a/pkgconfig/gstreamer-wayland-uninstalled.pc.in +++ b/pkgconfig/gstreamer-wayland-uninstalled.pc.in @@ -1,7 +1,7 @@ prefix= exec_prefix= -libdir=${pcfiledir}/../gst-libs/gst/wayland/.libs -includedir=${pcfiledir}/../gst-libs +libdir=@waylandlibdir@ +includedir=@abs_top_srcdir@/gst-libs Name: GStreamer Wayland, Uninstalled Description: GStreamer Wayland support, uninstalled diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build index e43046204..c3df68643 100644 --- a/pkgconfig/meson.build +++ b/pkgconfig/meson.build @@ -7,6 +7,21 @@ pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir'))) pkgconf.set('GST_API_VERSION', api_version) pkgconf.set('VERSION', gst_version) +# 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('audiolibdir', join_paths(meson.build_root(), gstbadaudio.outdir())) +pkgconf.set('baselibdir', join_paths(meson.build_root(), gstbadbase.outdir())) +pkgconf.set('videolibdir', join_paths(meson.build_root(), gstbadvideo.outdir())) +pkgconf.set('codecparserslibdir', join_paths(meson.build_root(), gstcodecparsers.outdir())) +pkgconf.set('gllibdir', join_paths(meson.build_root(), gstgl.outdir())) +pkgconf.set('insertbinlibdir', join_paths(meson.build_root(), gstinsertbin.outdir())) +pkgconf.set('mpegtslibdir', join_paths(meson.build_root(), gstmpegts.outdir())) +pkgconf.set('playerlibdir', join_paths(meson.build_root(), gstplayer.outdir())) +pkgconf.set('waylandlibdir', join_paths(meson.build_root(), gstwayland.outdir())) +pkgconf.set('basecamerabinsrclibdir', join_paths(meson.build_root(), gstbasecamerabin.outdir())) +pkgconf.set('photographylibdir', join_paths(meson.build_root(), gstphotography.outdir())) + pkg_install_dir = '@0@/pkgconfig'.format(get_option('libdir')) pkg_libs = [ @@ -25,7 +40,6 @@ if build_gstgl pkg_libs += 'gl' endif -# FIXME: -uninstalled.pc files (if still needed?) foreach p : pkg_libs infile = 'gstreamer-@0@.pc.in'.format(p) outfile = 'gstreamer-@0@-@1@.pc'.format(p, api_version) @@ -33,4 +47,10 @@ foreach p : pkg_libs output : outfile, configuration : pkgconf, install_dir : pkg_install_dir) + + infile = 'gstreamer-@0@-uninstalled.pc.in'.format(p) + outfile = 'gstreamer-@0@-@1@-uninstalled.pc'.format(p, api_version) + configure_file(input : infile, + output : outfile, + configuration : pkgconf) endforeach |