completion: Place the completion helper in libexec
authorNicolas Dufresne <nicolas.dufresne@collabora.com>
Tue, 4 Apr 2017 17:42:50 +0000 (13:42 -0400)
committerNicolas Dufresne <nicolas.dufresne@collabora.com>
Tue, 4 Apr 2017 18:46:48 +0000 (14:46 -0400)
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).

13 files changed:
configure.ac
data/Makefile.am
data/bash-completion/completions/gst-inspect-1.0 [new file with mode: 0644]
data/bash-completion/completions/gst-launch-1.0 [new file with mode: 0644]
data/bash-completion/helpers/.gitignore [new file with mode: 0644]
data/bash-completion/helpers/gst.in [new file with mode: 0644]
data/completions/gst-inspect-1.0 [deleted file]
data/completions/gst-launch-1.0 [deleted file]
libs/gst/helpers/.gitignore
libs/gst/helpers/Makefile.am
libs/gst/helpers/gst [deleted file]
pkgconfig/gstreamer-uninstalled.pc.in
pkgconfig/gstreamer.pc.in

index 34a797916daa04e415d26b45e209e241d0cc7932..47401f954fcd1f89a8f391ab8098778dfab00303 100644 (file)
@@ -153,11 +153,14 @@ then
     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"
@@ -1013,6 +1016,12 @@ AC_DEFINE_UNQUOTED(GST_PLUGIN_SCANNER_INSTALLED,
     "$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,
@@ -1026,6 +1035,7 @@ AG_GST_CHECK_CHECKS
 AC_CONFIG_FILES(
 Makefile
 data/Makefile
+data/bash-completion/helpers/gst
 gst/Makefile
 gst/gstconfig.h
 gst/gstversion.h
index 7098492a0d6d40621a87a565aac7632c5409a9c8..16214fca74f5331c20de40442e8922ee984e0d12 100644 (file)
@@ -1,4 +1,7 @@
 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
diff --git a/data/bash-completion/completions/gst-inspect-1.0 b/data/bash-completion/completions/gst-inspect-1.0
new file mode 100644 (file)
index 0000000..667e503
--- /dev/null
@@ -0,0 +1,104 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for gst-inspect
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
+
+if [[ ! -d "$_GST_HELPERDIR"  ]]; then
+       _GST_HELPERDIR="$(pkg-config --variable=bashhelpersdir gstreamer-1.0)"
+else
+       _GST_HELPERDIR=`cd "$_GST_HELPERDIR"; pwd`
+fi
+
+# Common definitions
+. "$_GST_HELPERDIR"/gst
+
+_gst_inspect_all_arguments ()
+{
+       _gst_all_arguments gst-inspect-1.0
+}
+
+_gst_inspect_all_elements ()
+{
+       COMPREPLY=( $(compgen -W "$($_GST_HELPER -l)" -- $cur) )
+}
+
+_gstinspect___atleast_version () { _gst_mandatory_argument gst-inspect-1.0; }
+
+_gstinspect___exists ()
+{
+       _gst_inspect_all_elements
+}
+
+__inspect_main ()
+{
+       local i=1 command function_exists completion_func
+
+       while [[ $i -ne $COMP_CWORD ]];
+               do
+                       local var
+                       var="${COMP_WORDS[i]}"
+                       if [[ "$var" == "-"* ]]
+                       then
+                               command="$var"
+                       fi
+               i=$(($i+1))
+               done
+
+       if [[ "$command" == "--gst"* ]]; then
+               completion_func="_${command//-/_}"
+       else
+               completion_func="_gstinspect_${command//-/_}"
+       fi
+
+       declare -f $completion_func >/dev/null 2>&1
+
+       function_exists=$?
+
+       if [[ "$cur" == "-"* ]]
+        then
+               _gst_inspect_all_arguments
+       elif [ $function_exists -eq 0 ]
+       then
+               $completion_func
+       else
+               _gst_inspect_all_elements
+       fi
+}
+
+_gst_inspect_func_wrap ()
+{
+       local cur prev
+       cur="${COMP_WORDS[COMP_CWORD]}"
+       prev="${COMP_WORDS[COMP_CWORD-1]}"
+       $1
+}
+
+# Setup completion for certain functions defined above by setting common
+# variables and workarounds.
+# This is NOT a public function; use at your own risk.
+_gst_inspect_complete ()
+{
+       local wrapper="__inspect_wrap${2}"
+       eval "$wrapper () { _gst_inspect_func_wrap $2 ; }"
+       complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
+               || complete -o default -o nospace -F $wrapper $1
+}
+
+_gst_inspect_complete gst-inspect-1.0 __inspect_main
diff --git a/data/bash-completion/completions/gst-launch-1.0 b/data/bash-completion/completions/gst-launch-1.0
new file mode 100644 (file)
index 0000000..80ad34c
--- /dev/null
@@ -0,0 +1,141 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for gst-launch
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301, USA.
+
+_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
+
+if [[ ! -d "$_GST_HELPERDIR" ]]; then
+       _GST_HELPERDIR="$(pkg-config --variable=bashhelpersdir gstreamer-1.0)"
+else
+       _GST_HELPERDIR=`cd "$_GST_HELPERDIR"; pwd`
+fi
+
+# Common definitions
+. "$_GST_HELPERDIR"/gst
+
+_gst_launch_all_arguments ()
+{
+       _gst_all_arguments gst-launch-1.0
+}
+
+_gst_complete_compatible_elements ()
+{
+       COMPREPLY=( $(compgen -W "$($_GST_HELPER --compatible-with $previous_element)" -- $cur) )
+}
+
+_gst_complete_all_elements ()
+{
+       COMPREPLY=( $(compgen -W "$($_GST_HELPER -l)" -- $cur) )
+}
+
+_gst_complete_element_properties ()
+{
+       COMPREPLY=( $(compgen -W "$($_GST_HELPER --element-properties $previous_element)" -- $cur) )
+}
+
+_gstlaunch___exclude_ () { _gst_mandatory_argument gst-launch-1.0; }
+
+_gst_launch_main ()
+{
+       local i=1 command function_exists previous_element have_previous_element=0 completion_func
+
+       while [[ $i -ne $COMP_CWORD ]];
+               do
+                       local var
+                       var="${COMP_WORDS[i]}"
+                       if [[ "$var" == "-"* ]]
+                       then
+                               command="$var"
+                       fi
+               i=$(($i+1))
+               done
+
+       i=1
+       while [[ $i -ne $COMP_CWORD ]];
+               do
+                       local var
+                       var="${COMP_WORDS[i]}"
+
+                       if [[ "$var" == "-"* ]]
+                       then
+                               i=$(($i+1))
+                               continue
+                       fi
+
+                       $(gst-inspect-1.0 --exists $var)
+                       if [ $? -eq 0 ]
+                       then
+                               previous_element="$var"
+                               have_previous_element=1
+                       fi
+               i=$(($i+1))
+               done
+
+       if [[ "$command" == "--gst"* ]]; then
+               completion_func="_${command//-/_}"
+       else
+               completion_func="_gstlaunch_${command//-/_}"
+       fi
+
+       # Seems like bash doesn't like "exclude" in function names
+       if [[ "$completion_func" == "_gstlaunch___exclude" ]]
+       then
+               completion_func="_gstlaunch___exclude_"
+       fi
+
+       declare -f $completion_func >/dev/null 2>&1
+
+       function_exists=$?
+
+       if [[ "$cur" == "-"* ]]; then
+               _gst_launch_all_arguments
+       elif [ $function_exists -eq 0 ]
+       then
+               $completion_func
+       elif [ $have_previous_element -ne 0 ] && [[ "$prev" == "!" ]]
+       then
+               _gst_complete_compatible_elements
+       elif [ $have_previous_element -ne 0 ]
+       then
+               _gst_complete_element_properties
+       else
+               _gst_complete_all_elements
+       fi
+}
+
+_gst_launch_func_wrap ()
+{
+       local cur prev
+       cur="${COMP_WORDS[COMP_CWORD]}"
+       prev="${COMP_WORDS[COMP_CWORD-1]}"
+       $1
+}
+
+# Setup completion for certain functions defined above by setting common
+# variables and workarounds.
+# This is NOT a public function; use at your own risk.
+_gst_launch_complete ()
+{
+       local wrapper="__launch_wrap${2}"
+       eval "$wrapper () { _gst_launch_func_wrap $2 ; }"
+       complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
+               || complete -o default -o nospace -F $wrapper $1
+}
+
+_gst_launch_complete gst-launch-1.0 _gst_launch_main
diff --git a/data/bash-completion/helpers/.gitignore b/data/bash-completion/helpers/.gitignore
new file mode 100644 (file)
index 0000000..446b11b
--- /dev/null
@@ -0,0 +1 @@
+gst
diff --git a/data/bash-completion/helpers/gst.in b/data/bash-completion/helpers/gst.in
new file mode 100644 (file)
index 0000000..0acca06
--- /dev/null
@@ -0,0 +1,57 @@
+# GStreamer
+# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
+#
+# bash/zsh completion support for common gstreamer options
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Library General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Library General Public License for more details.
+#
+# You should have received a copy of the GNU Library General Public
+# License along with this library; if not, write to the
+# 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
+               _gst_all_arguments $__app
+       else
+               COMPREPLY=("$cur")
+       fi
+}
diff --git a/data/completions/gst-inspect-1.0 b/data/completions/gst-inspect-1.0
deleted file mode 100644 (file)
index 980e140..0000000
+++ /dev/null
@@ -1,105 +0,0 @@
-# GStreamer
-# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
-#
-# bash/zsh completion support for gst-inspect
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public
-# License as published by the Free Software Foundation; either
-# version 2 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with this library; if not, write to the
-# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
-# Boston, MA 02110-1301, USA.
-
-_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
-
-if [[ ! -d "$_GST_HELPERDIR"  ]]; then
-       _GST_HELPERDIR="$(pkg-config --variable=helpersdir 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_inspect_all_elements ()
-{
-       COMPREPLY=( $(compgen -W "$($_GST_HELPER -l)" -- $cur) )
-}
-
-_gstinspect___atleast_version () { _gst_mandatory_argument; }
-
-_gstinspect___exists ()
-{
-       _gst_inspect_all_elements
-}
-
-__inspect_main ()
-{
-       local i=1 command function_exists completion_func
-
-       while [[ $i -ne $COMP_CWORD ]];
-               do
-                       local var
-                       var="${COMP_WORDS[i]}"
-                       if [[ "$var" == "--"* ]]
-                       then
-                               command="$var"
-                       fi
-               i=$(($i+1))
-               done
-
-       if [[ "$command" == "--gst"* ]]; then
-               completion_func="_${command//-/_}"
-       else
-               completion_func="_gstinspect_${command//-/_}"
-       fi
-
-       declare -f $completion_func >/dev/null 2>&1
-
-       function_exists=$?
-
-       if [[ "$cur" == "--"* ]]; then
-               _gst_inspect_all_arguments
-       elif [ $function_exists -eq 0 ]
-       then
-               $completion_func
-       else
-               _gst_inspect_all_elements
-       fi
-}
-
-_gst_inspect_func_wrap ()
-{
-       local cur prev
-       cur="${COMP_WORDS[COMP_CWORD]}"
-       prev="${COMP_WORDS[COMP_CWORD-1]}"
-       $1
-}
-
-# Setup completion for certain functions defined above by setting common
-# variables and workarounds.
-# This is NOT a public function; use at your own risk.
-_gst_inspect_complete ()
-{
-       local wrapper="__inspect_wrap${2}"
-       eval "$wrapper () { _gst_inspect_func_wrap $2 ; }"
-       complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
-               || complete -o default -o nospace -F $wrapper $1
-}
-
-_gst_inspect_complete gst-inspect-1.0 __inspect_main
diff --git a/data/completions/gst-launch-1.0 b/data/completions/gst-launch-1.0
deleted file mode 100644 (file)
index 941cf84..0000000
+++ /dev/null
@@ -1,143 +0,0 @@
-# GStreamer
-# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
-#
-# bash/zsh completion support for gst-launch
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public
-# License as published by the Free Software Foundation; either
-# version 2 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with this library; if not, write to the
-# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
-# Boston, MA 02110-1301, USA.
-
-_GST_HELPERDIR="${BASH_SOURCE[0]%/*}/../helpers"
-
-if [[ ! -d "$_GST_HELPERDIR" ]]; then
-       _GST_HELPERDIR="$(pkg-config --variable=helpersdir 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_complete_compatible_elements ()
-{
-       COMPREPLY=( $(compgen -W "$($_GST_HELPER --compatible-with $previous_element)" -- $cur) )
-}
-
-_gst_complete_all_elements ()
-{
-       COMPREPLY=( $(compgen -W "$($_GST_HELPER -l)" -- $cur) )
-}
-
-_gst_complete_element_properties ()
-{
-       COMPREPLY=( $(compgen -W "$($_GST_HELPER --element-properties $previous_element)" -- $cur) )
-}
-
-_gstlaunch___exclude_ () { _gst_mandatory_argument; }
-
-_gst_launch_main ()
-{
-       local i=1 command function_exists previous_element have_previous_element=0 completion_func
-
-       while [[ $i -ne $COMP_CWORD ]];
-               do
-                       local var
-                       var="${COMP_WORDS[i]}"
-                       if [[ "$var" == "--"* ]]
-                       then
-                               command="$var"
-                       fi
-               i=$(($i+1))
-               done
-
-       i=1
-       while [[ $i -ne $COMP_CWORD ]];
-               do
-                       local var
-                       var="${COMP_WORDS[i]}"
-
-                       if [[ "$var" == "--"* ]]
-                       then
-                               i=$(($i+1))
-                               continue
-                       fi
-
-                       $(gst-inspect-1.0 --exists $var)
-                       if [ $? -eq 0 ]
-                       then
-                               previous_element="$var"
-                               have_previous_element=1
-                       fi
-               i=$(($i+1))
-               done
-
-       if [[ "$command" == "--gst"* ]]; then
-               completion_func="_${command//-/_}"
-       else
-               completion_func="_gstlaunch_${command//-/_}"
-       fi
-
-       # Seems like bash doesn't like "exclude" in function names
-       if [[ "$completion_func" == "_gstlaunch___exclude" ]]
-       then
-               completion_func="_gstlaunch___exclude_"
-       fi
-
-       declare -f $completion_func >/dev/null 2>&1
-
-       function_exists=$?
-
-       if [[ "$cur" == "--"* ]]; then
-               _gst_launch_all_arguments
-       elif [ $function_exists -eq 0 ]
-       then
-               $completion_func
-       elif [ $have_previous_element -ne 0 ] && [[ "$prev" == "!" ]]
-       then
-               _gst_complete_compatible_elements
-       elif [ $have_previous_element -ne 0 ]
-       then
-               _gst_complete_element_properties
-       else
-               _gst_complete_all_elements
-       fi
-}
-
-_gst_launch_func_wrap ()
-{
-       local cur prev
-       cur="${COMP_WORDS[COMP_CWORD]}"
-       prev="${COMP_WORDS[COMP_CWORD-1]}"
-       $1
-}
-
-# Setup completion for certain functions defined above by setting common
-# variables and workarounds.
-# This is NOT a public function; use at your own risk.
-_gst_launch_complete ()
-{
-       local wrapper="__launch_wrap${2}"
-       eval "$wrapper () { _gst_launch_func_wrap $2 ; }"
-       complete -o bashdefault -o default -o nospace -F $wrapper $1 2>/dev/null \
-               || complete -o default -o nospace -F $wrapper $1
-}
-
-_gst_launch_complete gst-launch-1.0 _gst_launch_main
index b6c1ed63de9a0fe9b9add91c1f56d928a19e3d30..2a8656948fc3c70e927087c9cfb447f8166bec50 100644 (file)
@@ -1,4 +1,4 @@
 gst-plugin-scanner
-gst-completion-helper-?.?*
+gst-completion-helper
 gst-ptp-helper
 *.o
index 00677791cf2cba11d70e9621817b3d098120b845..66b19cab513ef510c9aab822412491e19a58ec99 100644 (file)
@@ -1,14 +1,3 @@
-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)
 
@@ -16,6 +5,13 @@ gst_plugin_scanner_SOURCES = gst-plugin-scanner.c
 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
@@ -23,18 +19,6 @@ gst_ptp_helper_CFLAGS = $(GST_OBJ_CFLAGS) $(GIO_CFLAGS)
 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
diff --git a/libs/gst/helpers/gst b/libs/gst/helpers/gst
deleted file mode 100644 (file)
index bd34abf..0000000
+++ /dev/null
@@ -1,35 +0,0 @@
-# GStreamer
-# Copyright (C) 2015 Mathieu Duponchelle <mathieu.duponchelle@opencreed.com>
-#
-# bash/zsh completion support for common gstreamer options
-#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public
-# License as published by the Free Software Foundation; either
-# version 2 of the License, or (at your option) any later version.
-#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-# Library General Public License for more details.
-#
-# You should have received a copy of the GNU Library General Public
-# License along with this library; if not, write to the
-# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
-# Boston, MA 02110-1301, USA.
-
-___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_mandatory_argument ()
-{
-       if [[ "$prev" != "$command" ]]
-       then
-               COMPREPLY=( $(compgen -W "$(gst-launch-1.0 --help-all | grep -oh '[[:graph:]]*--[[:graph:]]*' | cut -d'=' -f1)" -- $cur) )
-       else
-               COMPREPLY=("$cur")
-       fi
-}
index 8f69dd501d52a0e32e742d2b87d1cc33fb6b2798..b8dcdf8e615c02e11e7f715cd57d1a8409562450 100644 (file)
@@ -7,7 +7,7 @@ includedir=@abs_top_builddir@
 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
 
index 78b8aa9de1465dfc4037fb1c2eb6050606b244eb..b949d6ce882eec68931d9023ee66acb12b332aad 100644 (file)
@@ -7,8 +7,6 @@ pluginsdir=@libdir@/gstreamer-@GST_API_VERSION@
 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