2 # Helper script to install zsh completion for VLC media player
3 # © 2008 Rafaël Carré <funman@videolanorg>
6 HOST
=`gcc -dumpmachine`
18 echo "WARNING: Unknown platform: \'$HOST\', can't check for libraries"
22 #Distributors can run BUILDDIR=XXX ./zsh_completion.sh
23 [ -z "$BUILDDIR" ] && BUILDDIR
=..
/..
/
25 VLC_PLUGIN_PATH
="$BUILDDIR"
26 export VLC_PLUGIN_PATH
28 function find_libvlc
{
29 [ -z "$SUFFIX" ] && return 0 # linking will fail if lib isn't found
30 for i
in $BUILDDIR/lib
/.libs
/libvlc.
$SUFFIX $BUILDDIR/lib
/libvlc.
$SUFFIX; do
31 [ -e $i ] && LIBVLC
=$i && return 0
36 function find_libvlccore
{
37 [ -z "$SUFFIX" ] && return 0 # linking will fail if lib isn't found
38 for i
in $BUILDDIR/src
/.libs
/libvlccore.
$SUFFIX $BUILDDIR/src
/libvlccore.
$SUFFIX; do
39 [ -e $i ] && LIBVLCCORE
=$i && return 0
44 while [ -z "$LIBVLC" ]; do
45 if ! find_libvlc
; then
46 printf "Please enter the directory where you built vlc: "
51 if ! find_libvlccore
; then
52 echo "libvlccore not found !"
56 export LD_LIBRARY_PATH
=$BUILDDIR/src
/.libs
:$BUILDDIR/lib
/.libs
57 CXXFLAGS
="$CXXFLAGS -g -O0"
59 if [ -e ..
/..
/extras
/contrib
/config.mak
-a ! "`grep HOST ../../extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "$HOST" ]; then
60 CXXFLAGS
="-I../../extras/contrib/include"
63 [ -z "$CXX" ] && CXX
=g
++
65 ZSH_BUILD
="$CXX $CXXFLAGS -DHAVE_CONFIG_H -I$BUILDDIR -I$BUILDDIR/include -I../../include zsh.cpp $LIBVLC $LIBVLCCORE -o zsh_gen"
69 eval $ZSH_BUILD ||
exit 1
71 printf "Generating zsh completion in _vlc ... "
73 VLC_PLUGIN_PATH
=$BUILDDIR/modules
74 if ! .
/zsh_gen
>_vlc
2>/dev
/null
; then
76 ERROR: the generation failed.... :(
77 Please press enter to verify that all the VLC modules are shown"
81 If they are shown, press enter to see if you can debug the problem
82 It will be reproduced by running \"./zsh_gen -vv\""
90 ZSH_FPATH
=`echo $fpath|cut -d\ -f1`
91 [ -z "$ZSH_FPATH" ] && exit 0 # don't know where to install
94 You should now copy _vlc to $ZSH_FPATH and then
95 remove ~/.zcompdump and restart your running zsh instances,
96 or run \"compinit\" to start using vlc completion immediately."