[vlc-devel] commit: zsh_completion.sh: remove automatic install ( Rafaël Carré )

git version control git at videolan.org
Mon Jan 4 23:30:31 CET 2010


vlc | branch: master | Rafaël Carré <rafael.carre at gmail.com> | Mon Jan  4 23:29:31 2010 +0100| [b2e6a7327b4d7d77c4b66f8d72e5942e7eed6feb] | committer: Rafaël Carré 

zsh_completion.sh: remove automatic install

instead print where the script should be for zsh to find it
some cleaning of the script & its output

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=b2e6a7327b4d7d77c4b66f8d72e5942e7eed6feb
---

 extras/analyser/zsh_completion.sh |   80 ++++++++++++-------------------------
 1 files changed, 26 insertions(+), 54 deletions(-)

diff --git a/extras/analyser/zsh_completion.sh b/extras/analyser/zsh_completion.sh
index 78cdc72..91a359e 100755
--- a/extras/analyser/zsh_completion.sh
+++ b/extras/analyser/zsh_completion.sh
@@ -15,105 +15,77 @@ case $HOST in
         SUFFIX=so
     ;;
     *)
-        echo WARNING: Unknown platform: \'$HOST\'
+        echo "WARNING: Unknown platform: \'$HOST\', can't check for libraries"
     ;;
 esac
 
-if test -z "$SUFFIX"; then
-    echo "ERROR: unknown suffix for shared objects
-Please run \"SUFFIX=xxx $0\"
-where xxx is the shared object extension on your platform."
-    exit 1
-fi
-
 #Distributors can run BUILDDIR=XXX ./zsh_completion.sh
-if test -z "$BUILDDIR"; then
-    BUILDDIR=../../
-fi
+[ -z "$BUILDDIR" ] && BUILDDIR=../../
 
 function find_libvlc {
+    [ -z "$SUFFIX" ] && return 0 # linking will fail if lib isn't found
     for i in $BUILDDIR/src/.libs/libvlc.$SUFFIX $BUILDDIR/src/libvlc.$SUFFIX; do
-        test -e $i && LIBVLC=$i && return 0
+        [ -e $i ] && LIBVLC=$i && return 0
     done
     return 1
 }
 
 function find_libvlccore {
+    [ -z "$SUFFIX" ] && return 0 # linking will fail if lib isn't found
     for i in $BUILDDIR/src/.libs/libvlccore.$SUFFIX $BUILDDIR/src/libvlccore.$SUFFIX; do
-        test -e $i && LIBVLCCORE=$i && return 0
+        [ -e $i ] && LIBVLCCORE=$i && return 0
     done
     return 1
 }
 
-while test -z "$LIBVLC"; do
+while [ -z "$LIBVLC" ]; do
     if ! find_libvlc; then
-        /bin/echo -n "Please enter the directory where you built vlc: "
+        printf "Please enter the directory where you built vlc: "
         read BUILDDIR
     fi
 done
 
-echo "libvlc found !"
-
 if ! find_libvlccore; then
-    /bin/echo -n "libvlccore not found ! Linking will fail !"
+    echo "libvlccore not found !"
+    exit 1
 fi
 
 export LD_LIBRARY_PATH=$BUILDDIR/src/.libs
 
-if test -e ../../extras/contrib/config.mak -a ! "`grep HOST ../../extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "$HOST"; then
-    echo "contribs found !"
+if [ -e ../../extras/contrib/config.mak -a ! "`grep HOST ../../extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "$HOST" ]; then
     CPPFLAGS="-I../../extras/contrib/include"
 fi
 
-if test -z "$CXX"; then
-    CXX=g++
-fi
+[ -z "$CXX" ] && CXX=g++
 
-ZSH_BUILD="$CXX $CPPFLAGS $CXXFLAGS -D__LIBVLC__ -DHAVE_CONFIG_H -I$BUILDDIR -I$BUILDDIR/include -I../../include zsh.cpp $LIBVLC $LIBVLCCORE -o zsh_gen"
+ZSH_BUILD="$CXX $CXXFLAGS -D__LIBVLC__ -DHAVE_CONFIG_H -I$BUILDDIR -I$BUILDDIR/include -I../../include zsh.cpp $LIBVLC $LIBVLCCORE -o zsh_gen"
 
-echo "Building zsh completion generator ...  "
 echo $ZSH_BUILD
 echo
 eval $ZSH_BUILD || exit 1
 
-echo "Generating zsh completion ..."
+printf "Generating zsh completion in _vlc ... "
+
 if ! ./zsh_gen --plugin-path=$BUILDDIR >_vlc 2>/dev/null; then
-    echo "ERROR: the generation failed.... :(
+    echo "
+ERROR: the generation failed.... :(
 Please press enter to verify that all the VLC modules are shown"
     read i
-    ./zsh_gen --plugin-path=$BUILDDIR -vvv --list
+    ./zsh_gen --plugin-path=$BUILDDIR -vv --list
     echo "
 If they are shown, press enter to see if you can debug the problem
 It will be reproduced by running \"./zsh_gen --plugin-path=$BUILDDIR -vvv\""
     read i
-    ./zsh_gen --plugin-path=$BUILDDIR -vvv
-    exit 1
-fi
-
-echo "zsh completion is `echo \`wc -l _vlc\`` lines long !"
-
-test -z "$NOINSTALL" || exit 0
-#Distributors can run NOINSTALL=mg ./zsh_completion.sh
-
-if ! /usr/bin/which zsh >/dev/null 2>&1; then
-    echo "ERROR: zsh not found, you'll have to copy the _vlc file manually"
+    ./zsh_gen --plugin-path=$BUILDDIR -vv
     exit 1
 fi
 
-test -z "$ZSH_FPATH" && ZSH_FPATH=`zsh -c "echo \\$fpath|cut -d\" \" -f1"`
-if test -z "$ZSH_FPATH"; then
-    echo "ERROR: Could not find a directory where to install completion
-Please run \"ZSH_FPATH=path $0\"
-where path is the directory where you want to install completion"
-    exit 1
-fi
+echo "done"
 
-echo "completion will be installed in $ZSH_FPATH , using root privileges
-Press Ctrl+C to abort installation, and copy _vlc manually"
-read i
-echo "Installing completion ..."
-sudo sh -c "chown 0:0 _vlc && chmod 0644 _vlc && mv _vlc $ZSH_FPATH" || exit 1
+ZSH_FPATH=`echo $fpath|cut -d\  -f1`
+[ -z "$ZSH_FPATH" ] && exit 0 # don't know where to install
 
-echo "zsh completion for VLC successfully installed :)"
-echo "Restart running zsh instances after removing ~/.zcompdump, or"
-echo "run \"compinit\" to start using it."
+echo "
+You should now copy _vlc to $ZSH_FPATH and then
+remove ~/.zcompdump and restart your running zsh instances,
+or run \"compinit\" to start using vlc completion immediately."




More information about the vlc-devel mailing list