+##
+## Update the potfiles because no one ever does it
+##
+if test "${action}" = "po"
+then
+ # find out the source files
+ echo "WARNING: you should run \"make update-po\" instead!" >&2
+ make update-po
+ exit $?
+fi
+
+##
+## Create include files
+##
+if test "${action}" = "includes"
+then
+ #set -x
+
+ if test -z "${srcdir}"; then
+ srcdir="`sed -ne 's/^srcdir *= *//p' < Makefile`"
+ fi
+ if test -z "${builddir}"; then
+ builddir="`sed -ne 's/^top_builddir *= *//p' < Makefile`"
+ fi
+ BUILTINS=`sed -ne 's/.*builtins *= *" *\([^"]*\)".*/\1/p' ${builddir}/vlc-config`
+
+ file="${builddir}/src/modules/builtin.h"
+
+ rm -f "${file}.tmp"
+ mkdir -p -- "${builddir}/src/modules"
+ cat "${srcdir}/src/modules/builtin.h.in" > "${file}.tmp" || exit 1
+ if test -n "${BUILTINS}"
+ then
+ for i in `echo ${BUILTINS}`
+ do
+ echo "int vlc_entry__`echo $i | sed -e 'y@/@_@' -e 's@\..*@@'`( module_t* );" >> "${file}.tmp"
+ done
+ echo "" >> "${file}.tmp"
+ fi
+ echo "#define ALLOCATE_ALL_BUILTINS() \\" >> ${file}.tmp
+ echo " do \\" >> "${file}.tmp"
+ echo " { \\" >> "${file}.tmp"
+ if test -n "${BUILTINS}"
+ then
+ for i in `echo ${BUILTINS}`
+ do
+ echo " ALLOCATE_BUILTIN(`echo $i | sed -e 'y@/@_@' -e 's@\..*@@'`); \\" >> "${file}.tmp"
+ done
+ fi
+ echo " } while( 0 );" >> "${file}.tmp"
+ echo "" >> "${file}.tmp" || exit 1
+ if diff >/dev/null 2>&1 "${file}" "${file}.tmp"
+ then
+ rm -f "${file}.tmp"
+ else
+ echo "creating new ${file}"
+ mv -f "${file}.tmp" "${file}"
+ fi
+
+ exit 0
+fi
+
+##
+## Fix glade2-generated files
+##
+if test "${action}" = "glade2"
+then
+ file="modules/gui/pda/pda.glade"
+ echo "generating code from $file"
+ glade-2 -w "$file" || exit 1
+
+ file="modules/gui/pda/pda_interface.c"
+ echo "fixing $file"
+ if grep "DO NOT EDIT THIS FILE" "$file" >/dev/null 2>&1
+ then
+ rm -f -- "$file.$$.bak"
+ cat > "$file.$$.bak" << EOF
+/* This file was created automatically by glade2 and fixed by bootstrap */
+
+#include <vlc/vlc.h>
+EOF
+ sed -e 1,7d \
+ -e 's#_(\(".:..:.."\))#\1#' \
+ -e 's#_(\("[a-z0-9]*://[^"]*"\))#\1#' \
+ -e 's#_("---")#"---"#' \
+ -e 's#_("--")#"--"#' \
+ -e 's#_(\("/dev/[^"]*"\))#\1#' \
+ -e 's#_(\("./."\))#\1#' \
+ < "$file" >> "$file.$$.bak"
+ mv -f "$file.$$.bak" "$file"
+ fi
+
+ exit 0
+fi
+
+##
+## Make distclean
+##
+if test "${action}" = "distclean"
+then
+ set -x
+ # a naive sanity check to make sure we are in a VLC tree
+ test -f vlc.mandriva.spec -a -f vlc.win32.nsi.in || exit 1
+ # let's rock!
+ find . -false -path './extras/contrib/*' -type f '(' -name '*.[oa]' -o -name '*.l[oa]' -o -name '*.so' -o -name '*.sl' -o -name '*.dylib' -o -name '*.dll' -o -name .dirstamp -o '(' '(' ! -path '\./doc/developer/Makefile\.in' ')' -a -name Makefile.in ')' -o -name 'stamp-h*' -o -name '*~' -o -name '*.bak' -o -name '*.moc.cpp' ')' -exec rm -f '{}' ';'
+ (cd autotools && find . -maxdepth 1 -name '[a-z]*' -exec rm -f '{}' ';')
+ find msvc -type f -name '*.dsp' -exec rm -f '{}' ';'
+ find evc -type f -name '*.vcp' -exec rm -f '{}' ';'
+ find . -type d -name '.deps' -exec rm -Rf '{}' ';'
+ find . -type d -name '.libs' -exec rm -Rf '{}' ';'
+ # there's some more cruft all around
+ rm -f config.h config.log config.status
+ rm -f vlc vlc-config Makefile Modules.am
+ rm -Rf autom4te.cache
+ echo "\`toolbox --distclean\' is known to be broken."
+ echo "Don't complain if it does not work, or better yet, don't use it."
+ echo "You were warned."
+ # FIXME: a lot of Makefiles are still there
+fi
+
+##
+## Add the extras/contrib dir to the distribution
+##
+if test "${action}" = "contrib"
+then
+ set -x
+ if test ! -d "${distdir}/extras"
+ then
+ mkdir "${distdir}/extras"
+ fi
+ if test ! -d "${distdir}/extras/contrib"
+ then
+ mkdir "${distdir}/extras/contrib"
+ fi
+ cp "${srcdir}/extras/contrib/Makefile" "${distdir}/extras/contrib/Makefile"
+ cp "${srcdir}/extras/contrib/README" "${distdir}/extras/contrib/README"
+ cp "${srcdir}/extras/contrib/bootstrap" "${distdir}/extras/contrib/bootstrap"
+ cp "${srcdir}/extras/contrib/change_prefix.sh" "${distdir}/extras/contrib/change_prefix.sh"
+ if test ! -d "${distdir}/extras/contrib/src"
+ then
+ mkdir "${distdir}/extras/contrib/src"
+ fi
+ cp "${srcdir}/extras/contrib/src/Makefile" "${distdir}/extras/contrib/src/Makefile"
+ cp "${srcdir}/extras/contrib/src/packages.mak" "${distdir}/extras/contrib/src/packages.mak"
+ if test ! -d "${distdir}/extras/contrib/src/Patches"
+ then
+ mkdir "${distdir}/extras/contrib/src/Patches"
+ fi
+ cp ${srcdir}/extras/contrib/src/Patches/* "${distdir}/extras/contrib/src/Patches/"
+fi
+