3 ## bootstrap.sh file for vlc, the VideoLAN Client
4 ## $Id: bootstrap,v 1.11 2002/08/28 15:30:57 sam Exp $
6 ## Authors: Samuel Hocevar <sam@zoy.org>
9 ### get a sane environment
17 while test $# -gt 0; do
23 echo "unknown option $1"
33 rm -f aclocal.m4 configure config.guess config.log config.sub ltmain.sh libtool ltconfig missing mkinstalldirs depcomp install-sh
36 if gettextize --version >/dev/null 2>&1
38 if expr `gettextize --version | sed -e '1s/[^0-9]*//' -e q` \
39 '>' 0.11.3 >/dev/null 2>&1
41 # We have gettext, and a recent version! Everything is cool.
45 # What?! User is not using a recent version of gettext? We'll have to
48 gettextize --copy --force | grep '^from the' | cut -f3 -d' '
50 test -f po/ChangeLog~ && mv po/ChangeLog~ po/ChangeLog
52 echo 'AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])' > m4/oldgettext.m4
55 # we don't have gettext. grmbl. try to continue anyway.
57 echo > intl/Makefile.am
58 echo 'AC_DEFUN([AM_GNU_GETTEXT_VERSION], [])' > m4/oldgettext.m4
63 if automake-1.6 --version >/dev/null 2>&1
66 else if automake-1.5 --version >/dev/null 2>&1
71 echo "you need automake version 1.5 or later"
76 aclocal-${amvers} -I m4
78 automake-${amvers} --foreign --add-missing --copy
81 # nuahahahahaha !! overwriting Makefile.in with what *I* want!
82 cp Makefile.old Makefile.in
85 ## headers which need to be regenerated because of the VLC_EXPORT macro
87 file=src/misc/modules_plugin.h
89 sed -e 's#.*\$[I][d]:.*# * Automatically generated from '$file'.in by bootstrap.sh#' < $file.in > $file
90 echo '#define STORE_SYMBOLS( p_symbols ) \' >> $file
91 cat include/*.h | grep '^ *VLC_EXPORT.*;' | \
92 sed -e 's/VLC_EXPORT( *\([^,]*\), *\([^,]*\), *\(.*\));.*/ (p_symbols)->\2_inner = \2; \\/' >> $file
95 file=include/vlc_symbols.h
96 rm -f $file && touch $file
97 echo '/* DO NOT EDIT THIS FILE ! It was generated by bootstrap.sh */' >> $file
99 echo 'struct module_symbols_t' >> $file
101 cat include/*.h | grep '^ *VLC_EXPORT.*;' | \
102 sed -e 's/VLC_EXPORT( *\([^,]*\), *\([^,]*\), *\(.*\));.*/ \1 (* \2_inner) \3;/' | sort >> $file
105 echo '#ifdef __PLUGIN__' >> $file
106 cat include/*.h | grep '^ *VLC_EXPORT.*;' | \
107 sed -e 's/VLC_EXPORT( *\([^,]*\), *\([^,]*\), *\(.*\));.*/# define \2 p_symbols->\2_inner/' | sort >> $file
108 echo '#endif /* __PLUGIN__ */' >> $file
113 ## Glade sometimes sucks
115 for file in gnome_interface.c gtk_interface.c
117 if grep "DO NOT EDIT THIS FILE" modules/gui/gtk/$file 2>&1 > /dev/null
119 rm -f /tmp/$$.$file.bak
120 cat > /tmp/$$.$file.bak << EOF
121 /* This file was created automatically by glade and fixed by bootstrap.sh */
126 -e 's#_("-:--:--")#"-:--:--"#' \
127 -e 's#_("---")#"---"#' \
128 -e 's#_("--")#"--"#' \
129 -e 's#_("/dev/dvd")#"/dev/dvd"#' \
130 -e 's#_(\("./."\))#\1#' \
131 < modules/gui/gtk/$file >> /tmp/$$.$file.bak
132 mv -f /tmp/$$.$file.bak modules/gui/gtk/$file
137 if grep "DO NOT EDIT THIS FILE" modules/gui/gtk/$file 2>&1 > /dev/null
139 rm -f /tmp/$$.$file.bak
140 sed -e 's/DO NOT EDIT THIS FILE.*/This file was created automatically by glade and fixed by bootstrap.sh/ ; s/#if.*ENABLE_NLS.*/#if defined( ENABLE_NLS ) \&\& defined ( HAVE_GETTEXT )/' < modules/gui/gtk/$file > /tmp/$$.$file.bak
141 mv -f /tmp/$$.$file.bak modules/gui/gtk/$file
150 ## Update the potfiles because no one ever does it
152 if test "$do_po" = "no"
154 echo "not updating potfiles. use --update-po to force doing it."
157 make update-po 2>&1 | grep '^[^:]*:$' | cut -f1 -d: | tr '\n' ' ' | sed 's/ $//'
162 ## Tell the user about gettext
169 echo "==========================================================="
170 echo "IMPORTANT NOTE: you do not have gettext installed on your"
171 echo "system. The vlc build will work, but you will not have"
172 echo "internationalization support. We suggest installing gettext."
176 echo "=========================================================="
177 echo "NOTE: you have an old version of gettext installed on your"
178 echo "system. We suggest upgrading to gettext 0.11.3 or later."