This patch reorganize the bash completion scripts in order to install
the binary helper (gst-completion-helper) in libexec path rather then
share folder. Most Linux hierarchy compliance requires that no binary
executable are placed in share. We also cleanup the unused .pc entries
and remove copy pasted parts of the script. Note that other project
including the common helper, should now use $_GST_HELPER to read
the binary executable gst-completion-helper. This helper is not longer
version, as it is placed in a versionned subfolder
(libexec/gstreamer.10) just like the other helpers (scanner and ptp).
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.
https://bugzilla.gnome.org/show_bug.cgi?id=776810
Currently the .la path is provided which requires to use libtool as
mentioned in the GStreamer manual section-helloworld-compilerun.html.
It is fine as long as the application is built using libtool.
So currently it is not possible to compile a GStreamer application
within gst-uninstalled with CMake or other build system different
than autotools.
This patch allows to do the following in gst-uninstalled env:
gcc test.c -o test $(pkg-config --cflags --libs gstreamer-1.0)
Previously it required to prepend libtool --mode=link
https://bugzilla.gnome.org/show_bug.cgi?id=720778
+ Gets installed
+ Uses a helper tool, gst-completion-helper, installed in
bash-completions/helpers.
+ Adds a common script that other tools can source.
https://bugzilla.gnome.org/show_bug.cgi?id=744877
We don't need to link to gthread-2.0 any longer, since all
the normal thread-related stuff is in GLib proper, and we
don't use g_thread_init() any more.
https://bugzilla.gnome.org/show_bug.cgi?id=689043
Users of GStreamer are not generally expected to use the GModule API
directly. so don't force them all to link against it.
While we're at it, no need to define this via configure.ac really, just
put the dependencies directly into the .pc.in file.
Remove GST_MAJORMINOR and replace it by GST_API_VERSION
Also set GST_VERSION_{MAJOR,MINOR,MICRO,NANO} explicitely
now.
All versions are at 1.0.0 now for the release soon but
API/ABI can still change until the 1.0.0 release.
Next release versions until 1.0.0 will be 0.10.9X and
these will be release candidates. GST_VERSION_* will
nonetheless stay at 1.0.0.0.
So that the -base libs can figure out the right include paths for the
gobject-introspection tools even if core got installed into a prefix
that's not the same prefix as gobject-introspection is installed in
or it's being build in an uninstalled gstreamer setup.
Attempt to add back support for builddir != srcdir. Use absolute paths
instead of relative paths based on pcfiledir this time to make things
clearer - there's not really any need for uninstalled trees to be
relocatable without re-running configure.
I don't know how this ever worked, as it seems to put -I./..
and -I./../libs verbatim into the includes, at least with
current autotools versions.
This reverts commit 279a80ff27.
If we force -DG_THREADS_MANDATORY onto apps, then g_thread_supported()
will always evaluate to TRUE, so the typical thread initialisation
boilerplate code if (!g_thread_supported()) g_thread_init(NULL); will
no longer work, and the threading system not be initialised and us
printing a warning in gst_init. This may be fine in most cases, since
late initialisation is allowed and automatically done in g_type_init()
since GLib 2.23.2, but let's be cautious and only use this define when
compiling GStreamer itself.
See #608398.
We require threads to be supported in any case and defining this
will simplify the mutex, condition variable, etc. macros from gthread
to not always check if threads are really supported.
Fixes bug #607481.
When you use gstreamer uninstalled and build outside
the source tree, the includes need to be specified for
both the source tree and the build tree.
Signed-off-by: David Schleef <ds@schleef.org>
Original commit message from CVS:
* pkgconfig/gstreamer-uninstalled.pc.in:
* pkgconfig/gstreamer.pc.in:
Remove -lgstcontrol-0.10 which never worked anyway as the lib is
called gstcontroller-0.10.
Original commit message from CVS:
Port some changes from 0.6.0/0.6.1 back to HEAD (.pc files moved to pkg-config/, .m4 file moved from plugins to core)