fi
PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0],
- [BASH_COMPLETION_DIR="`eval pkg-config $extra_args --variable=completionsdir bash-completion`"],
- [BASH_COMPLETION_DIR="$datadir/bash-completion/completions"])
- PKG_CHECK_MODULES([BASH_COMPLETION], [bash-completion >= 2.0],
- [BASH_HELPERS_DIR="`eval pkg-config $extra_args --variable=helpersdir bash-completion`"],
- [BASH_HELPERS_DIR="$datadir/bash-completion/helpers"])
+ [
+ BASH_COMPLETION_DIR="`eval pkg-config $extra_args --variable=completionsdir bash-completion`"
+ BASH_HELPERS_DIR="`eval pkg-config $extra_args --variable=helpersdir bash-completion`"
+ ],
+ [
+ BASH_COMPLETION_DIR="$datadir/bash-completion/completions"
+ BASH_HELPERS_DIR="$datadir/bash-completion/helpers"
+ ])
else
BASH_COMPLETION_DIR="$with_bash_completion_dir/completions"
BASH_HELPERS_DIR="$with_bash_completion_dir/helpers"
"$GST_PLUGIN_SCANNER_INSTALLED", [location of the installed gst-plugin-scanner])
AC_SUBST(GST_PLUGIN_SCANNER_INSTALLED)
+dnl completion helper locations
+AS_AC_EXPAND(GST_COMPLETION_HELPER_INSTALLED,${libexecdir}/gstreamer-$GST_API_VERSION/gst-completion-helper)
+AC_DEFINE_UNQUOTED(GST_COMPLETION_HELPER_INSTALLED,
+ "$GST_COMPLETION_HELPER_INSTALLED", [location of the installed gst-completion-helper])
+AC_SUBST(GST_COMPLETION_HELPER_INSTALLED)
+
dnl ptp helper locations
AS_AC_EXPAND(GST_PTP_HELPER_INSTALLED,${libexecdir}/gstreamer-$GST_API_VERSION/gst-ptp-helper)
AC_DEFINE_UNQUOTED(GST_PTP_HELPER_INSTALLED,
AC_CONFIG_FILES(
Makefile
data/Makefile
+data/bash-completion/helpers/gst
gst/Makefile
gst/gstconfig.h
gst/gstversion.h
if ENABLE_BASH_COMPLETION
+bashhelpersdir = $(BASH_HELPERS_DIR)
+dist_bashhelpers_DATA = bash-completion/helpers/gst
bashcompletiondir = $(BASH_COMPLETION_DIR)
-dist_bashcompletion_DATA = completions/gst-inspect-1.0 completions/gst-launch-1.0
+dist_bashcompletion_DATA = bash-completion/completions/gst-inspect-1.0 \
+ bash-completion/completions/gst-launch-1.0
endif
_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
if [[ ! -d "$_GST_HELPERDIR" ]]; then
- _GST_HELPERDIR="$(pkg-config --variable=helpersdir gstreamer-1.0)"
+ _GST_HELPERDIR="$(pkg-config --variable=bashhelpersdir gstreamer-1.0)"
else
_GST_HELPERDIR=`cd "$_GST_HELPERDIR"; pwd`
fi
# Common definitions
. "$_GST_HELPERDIR"/gst
-_GST_HELPER="$_GST_HELPERDIR/gst-completion-helper-1.0"
-
_gst_inspect_all_arguments ()
{
- COMPREPLY=( $(compgen -W "$(gst-inspect-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+ _gst_all_arguments gst-inspect-1.0
}
_gst_inspect_all_elements ()
COMPREPLY=( $(compgen -W "$($_GST_HELPER -l)" -- $cur) )
}
-_gstinspect___atleast_version () { _gst_mandatory_argument; }
+_gstinspect___atleast_version () { _gst_mandatory_argument gst-inspect-1.0; }
_gstinspect___exists ()
{
do
local var
var="${COMP_WORDS[i]}"
- if [[ "$var" == "--"* ]]
+ if [[ "$var" == "-"* ]]
then
command="$var"
fi
function_exists=$?
- if [[ "$cur" == "--"* ]]; then
+ if [[ "$cur" == "-"* ]]
+ then
_gst_inspect_all_arguments
elif [ $function_exists -eq 0 ]
then
_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
if [[ ! -d "$_GST_HELPERDIR" ]]; then
- _GST_HELPERDIR="$(pkg-config --variable=helpersdir gstreamer-1.0)"
+ _GST_HELPERDIR="$(pkg-config --variable=bashhelpersdir gstreamer-1.0)"
else
_GST_HELPERDIR=`cd "$_GST_HELPERDIR"; pwd`
fi
# Common definitions
. "$_GST_HELPERDIR"/gst
-_GST_HELPER="$_GST_HELPERDIR/gst-completion-helper-1.0"
-
_gst_launch_all_arguments ()
{
- COMPREPLY=( $(compgen -W "$(gst-launch-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+ _gst_all_arguments gst-launch-1.0
}
_gst_complete_compatible_elements ()
COMPREPLY=( $(compgen -W "$($_GST_HELPER --element-properties $previous_element)" -- $cur) )
}
-_gstlaunch___exclude_ () { _gst_mandatory_argument; }
+_gstlaunch___exclude_ () { _gst_mandatory_argument gst-launch-1.0; }
_gst_launch_main ()
{
do
local var
var="${COMP_WORDS[i]}"
- if [[ "$var" == "--"* ]]
+ if [[ "$var" == "-"* ]]
then
command="$var"
fi
local var
var="${COMP_WORDS[i]}"
- if [[ "$var" == "--"* ]]
+ if [[ "$var" == "-"* ]]
then
i=$(($i+1))
continue
function_exists=$?
- if [[ "$cur" == "--"* ]]; then
+ if [[ "$cur" == "-"* ]]; then
_gst_launch_all_arguments
elif [ $function_exists -eq 0 ]
then
# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
# Boston, MA 02110-1301, USA.
+_GST_HELPER="@GST_COMPLETION_HELPER_INSTALLED@"
+if [[ ! -x "$_GST_HELPER" ]]
+then
+ helper="$(pkg-config --variable=helpersdir gstreamer-@GST_API_VERSION@)/gst-completion-helper"
+
+ if [ -x "$helper" ]
+ then
+ _GST_HELPER=$helper
+ fi
+fi
+
___gst_debug_level () { _gst_mandatory_argument; }
___gst_debug () { _gst_mandatory_argument; }
___gst_debug_color_mode () { _gst_mandatory_argument; }
___gst_plugin_path () { _gst_mandatory_argument; }
___gst_plugin_load () { _gst_mandatory_argument; }
+_gst_all_arguments ()
+{
+ COMPREPLY=( $(compgen -W "$($1 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*\|-[[:alpha:]],' | cut -d'=' -f1 | cut -d',' -f1)" -- $cur) )
+}
+
_gst_mandatory_argument ()
{
+ __app=$1
+ if [[ -z $__app ]]
+ then
+ __app=gst-launch-1.0
+ fi
+
if [[ "$prev" != "$command" ]]
then
- COMPREPLY=( $(compgen -W "$(gst-launch-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
+ _gst_all_arguments $__app
else
COMPREPLY=("$cur")
fi
gst-plugin-scanner
-gst-completion-helper-?.?*
+gst-completion-helper
gst-ptp-helper
*.o
-if ENABLE_BASH_COMPLETION
-bin_PROGRAMS = gst-completion-helper-@GST_API_VERSION@
-
-gst_completion_helper_@GST_API_VERSION@_SOURCES = gst-completion-helper.c
-gst_completion_helper_@GST_API_VERSION@_CFLAGS = $(GST_OBJ_CFLAGS)
-gst_completion_helper_@GST_API_VERSION@_LDADD = $(GST_OBJ_LIBS)
-
-bashhelpersdir = $(BASH_HELPERS_DIR)
-dist_bashhelpers_DATA = gst
-endif
-
helpers_PROGRAMS = gst-plugin-scanner
helpersdir=$(libexecdir)/gstreamer-$(GST_API_VERSION)
gst_plugin_scanner_CFLAGS = $(GST_OBJ_CFLAGS)
gst_plugin_scanner_LDADD = $(GST_OBJ_LIBS)
+if ENABLE_BASH_COMPLETION
+helpers_PROGRAMS += gst-completion-helper
+gst_completion_helper_SOURCES = gst-completion-helper.c
+gst_completion_helper_CFLAGS = $(GST_OBJ_CFLAGS)
+gst_completion_helper_LDADD = $(GST_OBJ_LIBS)
+endif
+
if HAVE_PTP
helpers_PROGRAMS += gst-ptp-helper
gst_ptp_helper_SOURCES = gst-ptp-helper.c
gst_ptp_helper_LDADD = $(GST_OBJ_LIBS) $(GIO_LIBS) $(CAP_LIBS)
endif
-if ENABLE_BASH_COMPLETION
-install-exec-hook:
- $(MKDIR_P) $(DESTDIR)$(BASH_HELPERS_DIR) && \
- cd $(DESTDIR)$(bindir) && \
- $(INSTALL) `echo "gst-completion-helper-" | sed '$(transform)'`@GST_API_VERSION@$(EXEEXT) \
- $(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT) && \
- rm `echo "gst-completion-helper-" | sed '$(transform)'`@GST_API_VERSION@$(EXEEXT)
-
-uninstall-hook:
- rm -f $(DESTDIR)$(BASH_HELPERS_DIR)/gst-completion-helper-@GST_API_VERSION@$(EXEEXT)
-endif
-
install-data-hook:
if HAVE_PTP
if HAVE_PTP_HELPER_SETUID
toolsdir=@abs_top_builddir@/tools
pluginsdir=@abs_top_builddir@
girdir=@abs_top_builddir@/gst
-completionsdir=@abs_top_builddir@/data/completions
+bashhelpersdir=@abs_top_builddir@/data/bash-completion/helpers
helpersdir=@abs_top_builddir@/libs/gst/helpers
typelibdir=@abs_top_builddir@/gst
datarootdir=${prefix}/share
datadir=${datarootdir}
girdir=${datadir}/gir-1.0
-completionsdir=@BASH_COMPLETION_DIR@
-helpersdir=@BASH_HELPERS_DIR@
typelibdir=${libdir}/girepository-1.0
Name: GStreamer