diff --git a/pkgconfig/Makefile.am b/pkgconfig/Makefile.am index 5da63ed8ae..78a1e6534e 100644 --- a/pkgconfig/Makefile.am +++ b/pkgconfig/Makefile.am @@ -31,7 +31,15 @@ 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|[@]gstlibdir[@]|$(abs_top_builddir)/gst/.libs|" \ + -e "s|[@]checklibdir[@]|$(abs_top_builddir)/libs/gst/check/.libs|" \ + -e "s|[@]baselibdir[@]|$(abs_top_builddir)/libs/gst/base/.libs|" \ + -e "s|[@]netlibdir[@]|$(abs_top_builddir)/libs/gst/net/.libs|" \ + -e "s|[@]controllerlibdir[@]|$(abs_top_builddir)/libs/gst/controller/.libs|" \ + $< > $@.tmp && mv $@.tmp $@ pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = $(pcfiles) diff --git a/pkgconfig/gstreamer-base-uninstalled.pc.in b/pkgconfig/gstreamer-base-uninstalled.pc.in index f9a4e1f9e4..08759f1c3b 100644 --- a/pkgconfig/gstreamer-base-uninstalled.pc.in +++ b/pkgconfig/gstreamer-base-uninstalled.pc.in @@ -1,7 +1,7 @@ # the standard variables don't make sense for an uninstalled copy prefix= exec_prefix= -libdir=@abs_top_builddir@/libs/gst/base/.libs +libdir=@baselibdir@ includedir= girdir=@abs_top_builddir@/libs/gst/base typelibdir=@abs_top_builddir@/libs/gst/base diff --git a/pkgconfig/gstreamer-check-uninstalled.pc.in b/pkgconfig/gstreamer-check-uninstalled.pc.in index 3aeaf77add..85c2903644 100644 --- a/pkgconfig/gstreamer-check-uninstalled.pc.in +++ b/pkgconfig/gstreamer-check-uninstalled.pc.in @@ -1,7 +1,7 @@ # the standard variables don't make sense for an uninstalled copy prefix= exec_prefix= -libdir=@abs_top_builddir@/libs/gst/check/.libs +libdir=@checklibdir@ includedir= girdir=@abs_top_builddir@/libs/gst/check typelibdir=@abs_top_builddir@/libs/gst/check diff --git a/pkgconfig/gstreamer-controller-uninstalled.pc.in b/pkgconfig/gstreamer-controller-uninstalled.pc.in index b7227e1c8e..97983e7530 100644 --- a/pkgconfig/gstreamer-controller-uninstalled.pc.in +++ b/pkgconfig/gstreamer-controller-uninstalled.pc.in @@ -1,7 +1,7 @@ # the standard variables don't make sense for an uninstalled copy prefix= exec_prefix= -libdir=@abs_top_builddir@/libs/gst/controller/.libs +libdir=@controllerlibdir@ includedir= girdir=@abs_top_builddir@/libs/gst/controller typelibdir=@abs_top_builddir@/libs/gst/controller diff --git a/pkgconfig/gstreamer-net-uninstalled.pc.in b/pkgconfig/gstreamer-net-uninstalled.pc.in index d3b14592ee..5d390c2673 100644 --- a/pkgconfig/gstreamer-net-uninstalled.pc.in +++ b/pkgconfig/gstreamer-net-uninstalled.pc.in @@ -1,7 +1,7 @@ # the standard variables don't make sense for an uninstalled copy prefix= exec_prefix= -libdir=@abs_top_builddir@/libs/gst/net/.libs +libdir=@netlibdir@ includedir= girdir=@abs_top_builddir@/libs/gst/net typelibdir=@abs_top_builddir@/libs/gst/net diff --git a/pkgconfig/gstreamer-uninstalled.pc.in b/pkgconfig/gstreamer-uninstalled.pc.in index 16c2a048f9..8f69dd501d 100644 --- a/pkgconfig/gstreamer-uninstalled.pc.in +++ b/pkgconfig/gstreamer-uninstalled.pc.in @@ -1,7 +1,7 @@ # the standard variables don't make sense for an uninstalled copy prefix= exec_prefix= -libdir=@abs_top_builddir@/gst/.libs +libdir=@gstlibdir@ # includedir is builddir because it is used to find gstconfig.h in places includedir=@abs_top_builddir@ toolsdir=@abs_top_builddir@/tools diff --git a/pkgconfig/meson.build b/pkgconfig/meson.build index 0c90d7469f..ff0083c6d8 100644 --- a/pkgconfig/meson.build +++ b/pkgconfig/meson.build @@ -7,6 +7,15 @@ pkgconf.set('includedir', '${prefix}/@0@'.format(get_option('includedir'))) pkgconf.set('GST_API_VERSION', apiversion) 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('gstlibdir', join_paths(meson.build_root(), libgst.outdir())) +pkgconf.set('checklibdir', join_paths(meson.build_root(), gst_check.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', @@ -23,4 +32,10 @@ foreach p : pkg_files 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