#! /bin/sh
## toolbox for the VLC media player
-## $Id: toolbox,v 1.48 2003/11/04 15:26:04 sam Exp $
+## $Id$
##
## Authors: Samuel Hocevar <sam@zoy.org>
--update-glade generate and fix Glade code
--update-glade2 generate and fix Glade 2 code
--update-flexml generate and fix flexml and flex code
- --changelog update the CVS changelog
--distclean "make distclean" on steroids
--make-woody <dir> change distdir <dir> to a woody distdir
EOF
##
if test "${action}" = "changelog"
then
- set -e
- set -x
- cvs2cl --help >/dev/null 2>&1 || exit 1
- rm -f ChangeLog ChangeLog.tmp
- cvs2cl --utc --hide-filenames --no-wrap -w --stdout -g -z9 | \
- sed -e 's/^[^0-9]/ /' -e 's/^ *$//' | \
- uniq > ChangeLog.tmp
- YEAR=`sed -e 's/\(....\)-..-.*/\1/;q' ChangeLog.tmp`
- LASTYEAR="$((${YEAR} - 1))"
- sed -ne "/^${YEAR}-..-../,/^${LASTYEAR}-..-../{/^${LASTYEAR}-..-../d;p}" \
- < ChangeLog.tmp > ChangeLog
- rm -f ChangeLog.tmp
+ YEAR="`date +%Y`"
+ echo "toolbox --changelog no longer required. use this instead:"
+ echo " svn log -v -r '{$YEAR-01-01}:{$YEAR-12-31}' > ChangeLog"
exit 0
- # To generate changelog for the year 2001:
- # sed -ne '/^2001/,/^2000/{/^2000/d;p}'
fi
##
LIBVLC_PKG_HEADERS=`getfiles dist_pkginclude_HEADERS`
# Clean up
- rm -f evc/*.vcp msvc/*.dsp
+ rm -f evc/*.vcp msvc/*.dsp msvc/*.vcproj msvc/*.sln msvc/*.ncb
# config files
for target in evc/config.h msvc/config.h
EOF
for file in `for i in ${LIBVLC_SOURCES} ; do echo $i ; done | grep "/${subdir}/"`
do
+ subdir="`echo ${file} | sed -e 's%/[^/]*$%/%' | sed -e 's%/%\\\\%g'`"
if test "${target}" = "evc/libvlc.vcp"
then
cat >> ${target} << EOF
# Begin Source File${M}
SOURCE="..\\modules\\`echo ${dir}/${cfile} | sed 's,/,\\\\,g'`"${M}
# ADD CPP /D "__VLC__" /D "__PLUGIN__" /D "MODULE_NAME=${mod}" /D "MODULE_NAME_IS_${mod}" ${M}
+!IF "\$(CFG)" == "plugin_${mod} - Win32 Release"${M}
+# PROP Output_Dir "Release\\modules\\`echo ${dir} | sed 's,/,\\\\,g'`"${M}
+# PROP Intermediate_Dir "Release\\modules\\`echo ${dir} | sed 's,/,\\\\,g'`"${M}
+!ELSEIF "\$(CFG)" == "plugin_${mod} - Win32 Debug"${M}
+# PROP Output_Dir "Debug\\modules\\`echo ${dir} | sed 's,/,\\\\,g'`"${M}
+# PROP Intermediate_Dir "Debug\\modules\\`echo ${dir} | sed 's,/,\\\\,g'`"${M}
# End Source File${M}
EOF
done
echo "" >> po/POTFILES.in
echo "# modules" >> po/POTFILES.in
find modules -name '*.[chm]' -o -name '*.[ch]pp' \
- | grep -v '\(gui/win32/\)' \
+ | grep -v '\(gui/wxwindows/wizard\|\.moc\.\|gui/gtk2/\)' \
| sort >> po/POTFILES.in
# clean old potfiles
cd po
-e 's#_(\("[a-z0-9]*://[^"]*"\))#\1#' \
-e 's#_("---")#"---"#' \
-e 's#_("--")#"--"#' \
- -e 's#_("/dev/dvd")#"/dev/dvd"#' \
+ -e 's#_(\("/dev/[^"]*"\))#"\1"#' \
-e 's#_(\("./."\))#\1#' \
< $file >> $file.$$.bak
mv -f $file.$$.bak $file
##
if test "${action}" = "glade2"
then
- for file in modules/gui/gtk2/gnome2.glade modules/gui/gtk2/gtk2.glade
+ 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
- exit 0
-fi
+ 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 */
-##
-## 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
+#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
##
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 autotools && find . -name '[a-z]*' -maxdepth 1 -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 '{}' ';'
# 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
+ # ttf-freefont 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
+ # gcc-3.2 (workaround for an ICE in gcc-3.3)
+ # change 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/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/, ttf-freefont[^,]*/, 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/, gcc-3.2[^,]*//' \
-e 's/Section: gnome/Section: graphics/' \
-e 's/Section: kde/Section: graphics/' \
-e 's/Section: libdevel/Section: devel/' \
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,' \
+ sed -e 's,freefont/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