+##
+## Fix glade2-generated files
+##
+if test "${action}" = "glade2"
+then
+ for file in modules/gui/gtk2/gnome2.glade modules/gui/gtk2/gtk2.glade modules/gui/pda/pda.glade
+ do
+ echo "generating code from $file"
+ glade-2 -w $file || exit 1
+ done
+
+ for file in modules/gui/pda/pda_interface.c
+ do
+ 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
+ done
+
+ exit 0
+fi
+
+##
+## Fix flexml-generated files
+##
+if test "${action}" = "flexml"
+then
+ cd modules/gui/skins/parser
+ flexml -SH -a skin.act skin.dtd
+ # comment the dummy main function
+ file=skin.c
+ sed 's@int main@//int main@' < $file > $file.$$.bak
+ mv -f $file.$$.bak $file
+ flex -oflex.c -BLs skin.l
+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.spec.mdk -a -f debian/rules || exit 1
+ # let's rock!
+ find . -type f '(' -name '*.[oa]' -o -name '*.so' -o -name '*.sl' -o -name '*.dylib' -o -name '*.dll' -o -name .dirstamp -o -name Makefile.in -o -name 'stamp-h*' -o -name '*~' -o -name '*.bak' -o -name '*.moc.cpp' ')' -exec rm -f '{}' ';'
+ (cd autotools && find . -name '[a-z]*' -exec rm -f '{}' ';')
+ (cd debian && find . -type d -name '[a-z]*' -maxdepth 1 -exec rm -Rf '{}' ';')
+ 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 '{}' ';'
+ # 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
+ rm -f mozilla/vlcintf.h mozilla/vlcintf.xpt
+ # FIXME: a lot of Makefiles are still there
+fi
+
+##
+## Build a woody-friendly package
+##
+if test "${action}" = "woody"
+then
+ set -ex
+ test -d "$1"
+
+ # changelog: replace (1.2.3-4) with (1.2.3-0woody.4)
+ sed -e 's/^vlc (\([^)]*\)-\([^-)]*\))/vlc-woody (\1-0woody.\2)/' \
+ -e 's/ unstable; / stable; /' \
+ < "$1/debian/changelog" > "$1/debian/changelog.woody"
+ mv "$1/debian/changelog.woody" "$1/debian/changelog"
+
+ # control: replace liba52-*-dev with a52dec-dev (>=0.7.3)
+ # libdv*-dev with libdv-dev
+ # kdelibs4-dev with kdelibs-dev
+ # libqt3-mt-dev libqt3-compat-headers with libqt-dev
+ # libarts1-dev with libarts-dev
+ # libdvdread3-dev with libdvdread2-dev
+ # libdvdplay0-dev (>=1.0.1-2) with libdvdplay0-dev
+ # libxosd-dev (>=2.2.4-1.3) with libxosd-dev
+ # ttf-freefonts with ttf-thryomanes
+ # dvb-dev (>= 1.0.1-6) with dvb-dev
+ # remove libwxgtk2.4-dev
+ # libflac-dev
+ # libidl0 (workaround for mozilla-dev's bad deps)
+ # libglib2.0-0 (workaround for mozilla-dev's bad deps)
+ # libmatroska-dev
+ # libspeex-dev
+ # change Source: vlc with Source: vlc-woody
+ # Section: gnome with Section: graphics
+ # Section: kde with Section: kde
+ # Section: libdevel with Section: devel
+ sed -e 's/liba52-[^-]*-dev/a52dec-dev (>=0.7.3)/' \
+ -e 's/libdv[0-9]*-dev/libdv-dev/' \
+ -e 's/kdelibs[0-9]*-dev/kdelibs-dev/' \
+ -e 's/libqt[0-9]*-mt-dev/libqt-dev/' \
+ -e 's/, libqt[0-9]*-compat-headers[^,]*//' \
+ -e 's/libarts[0-9]*-dev/libarts-dev/' \
+ -e 's/libdvdread[0-9]*-dev/libdvdread2-dev/' \
+ -e 's/, libdvdplay0-dev[^,]*/, libdvdplay0-dev/' \
+ -e 's/, libxosd-dev[^,]*/, libxosd-dev/' \
+ -e 's/, ttf-freefonts[^,]*/, ttf-thryomanes/' \
+ -e 's/, dvb-dev[^,]*/, dvb-dev/' \
+ -e 's/, libwx[^,]*//' \
+ -e '/Package: wxvlc/,/^ *$/d' \
+ -e 's/, libflac-dev[^,]*//' \
+ -e 's/, libidl0[^,]*//' \
+ -e 's/, libglib2.0-0[^,]*//' \
+ -e 's/, libmatroska-dev[^,]*//' \
+ -e 's/, libspeex-dev[^,]*//' \
+ -e 's/Source: vlc/Source: vlc-woody/' \
+ -e 's/Section: gnome/Section: graphics/' \
+ -e 's/Section: kde/Section: graphics/' \
+ -e 's/Section: libdevel/Section: devel/' \
+ < "$1/debian/control" > "$1/debian/control.woody"
+ mv "$1/debian/control.woody" "$1/debian/control"
+
+ # rules: remove wxwindows and skins stuff
+ # remove flac support
+ # remove matroska support
+ sed -e '/# Package: wxvlc/,/^ *$/d' \
+ -e 's,--enable-wxwindows,--disable-wxwindows,' \
+ -e 's,--enable-skins,--disable-skins,' \
+ -e 's,--enable-flac,--disable-flac,' \
+ -e 's,--enable-mkv,--disable-mkv,' \
+ -e 's,--enable-speex,--disable-speex,' \
+ < "$1/debian/rules" > "$1/debian/rules.woody"
+ mv "$1/debian/rules.woody" "$1/debian/rules"
+ chmod 0755 "$1/debian/rules"
+
+ # modules/misc/freetype.c: replace the default font
+ sed -e 's,FreeSerifBold.ttf,thryomanes/thryb___.ttf,' \
+ < "$1/modules/misc/freetype.c" > "$1/modules/misc/freetype.c.woody"
+ mv "$1/modules/misc/freetype.c.woody" "$1/modules/misc/freetype.c"
+fi
+