X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=bootstrap;h=4a9e423b6b3e676ba86eac4f317a9e965d038daa;hb=83c0719ba2aa9b6d29b6f1868505dab963d5fc0a;hp=09b1186b55f4d81abc78a279750a5ad91c3a05b7;hpb=750c81c7bf8a326657899978f822bc7a37e38707;p=vlc diff --git a/bootstrap b/bootstrap index 09b1186b55..4a9e423b6b 100755 --- a/bootstrap +++ b/bootstrap @@ -1,9 +1,11 @@ #! /bin/sh ## bootstrap file for the VLC media player -## $Id: bootstrap,v 1.57 2003/07/01 17:28:50 sam Exp $ +## $Id$ ## -## Authors: Sam Hocevar +## Copyright (C) 2005 the VideoLAN team +## +## Initial author: Sam Hocevar if test "$#" != "0"; then echo "Usage: $0" @@ -20,69 +22,174 @@ export LANG CYGWIN=binmode export CYGWIN +set -e +set -x + ## -## Naively assume our system doesn't suck. Unfortunately it seldom doesn't. +## Check for various tools ## AUTOMAKESUCKS=no INSTALLSUCKS=no -## -## Check that our tools don't suck -## +ACLOCAL_ARGS="-I m4" + +# Check for contrib directory +if test -d extras/contrib/bin; then + export PATH=./extras/contrib/bin:$PATH + ACLOCAL_ARGS="${ACLOCAL_ARGS} -I extras/contrib/share/aclocal" + if test ".`uname -s`" = ".Darwin"; then + export LD_LIBRARY_PATH=./extras/contrib/lib:$LD_LIBRARY_PATH + export DYLD_LIBRARY_PATH=./extras/contrib/lib:$DYLD_LIBRARY_PATH + elif test ".`uname -s`" = ".BeOS"; then + export LIBRARY_PATH=./extras/contrib/lib:$LIBRARY_PATH + export BELIBRARIES=./extras/contrib/lib:$BELIBRARIES + fi +fi + +# Check for automake +amvers="none" +if automake-1.9 --version >/dev/null 2>&1; then + amvers="-1.9" +elif automake-1.8 --version >/dev/null 2>&1; then + amvers="-1.8" +elif automake-1.7 --version >/dev/null 2>&1; then + amvers="-1.7" +elif automake-1.6 --version >/dev/null 2>&1; then + amvers="-1.6" + if expr "`automake-1.6 --version | sed -e '1s/[^0-9]*//' -e q`" "<=" "1.6.1" > /dev/null 2>&1; then + AUTOMAKESUCKS=yes + fi +elif automake-1.5 --version >/dev/null 2>&1; then + INSTALLSUCKS=yes + amvers="-1.5" +elif automake --version > /dev/null 2>&1; then + amvers="" + case "`automake --version | sed -e '1s/[^0-9]*//' -e q`" in + 0|0.*|1|1.[01234]|1.[01234][-.]*) + amvers="none" ;; + 1.5|1.5.*) + INSTALLSUCKS=yes ;; + 1.6|1.6.0|1.6.1) + AUTOMAKESUCKS=yes ;; + 1.9|1.9.2) + ;; + esac +fi + +if test "${amvers}" = "none"; then + set +x + echo "you need automake version 1.5 or later" + exit 1 +fi + +# Check for gettext +if gettextize --version >/dev/null 2>&1; then +# Autopoint is available from 0.11.3, but we need 0.11.5 +if expr `gettextize --version | sed -e '1s/[^0-9]*//' -e q` \ + '>=' 0.11.5 >/dev/null 2>&1; then + # We have gettext, and a recent version! Everything is cool. + autopoint=autopoint + GETTEXT=yes +else + # User's gettext is too old. try to continue anyway. + autopoint=: + GETTEXT=old +fi;else + set +x + echo "you need gettextize (package gettext-devel or gettext)" + exit 1 +fi + +# Check for pkg-config +if pkg-config --version >/dev/null 2>&1; then + # We have pkg-config, everything is cool. + PKGCONFIG=yes +else + PKGCONFIG=no +fi + +aclocal=aclocal${amvers} +automake=automake${amvers} +autoconf=autoconf +autoheader=autoheader ## ## Generate the modules makefile, by parsing modules/**/Modules.am ## -printf "generating modules/**/Makefile.am and m4/private.m4" +set +x +echo "generating modules/**/Makefile.am and m4/private.m4" # Prepare m4/private.m4 rm -f m4/private.m4 && cat > m4/private.m4 << EOF dnl Private VLC macros - generated by bootstrap EOF + +if [ "${PKGCONFIG}" = "no" ]; then cat >> m4/private.m4 << EOF +dnl User does not have pkg-config, so assume package was not found +AC_DEFUN([PKG_CHECK_MODULES],[ifelse([\$4], , :, [\$4])]) + +EOF +fi + +if [ "${GETTEXT}" != "yes" ]; then cat >> m4/private.m4 << EOF +dnl User does not have gettext, so this is a no-op +AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) + +EOF +fi + rm -f m4/private.m4-tmp1 && cat > m4/private.m4-tmp1 << EOF dnl The required AM_CONDITIONAL calls dnl XXX: too many conditionals make the build very slow, disabled them -AC_DEFUN([AX_VLC_CONDITIONALS], [ +AC_DEFUN([VLC_CONDITIONALS], [ EOF rm -f m4/private.m4-tmp2 && cat > m4/private.m4-tmp2 << EOF dnl The required AC_SUBST calls -AC_DEFUN([AX_VLC_SUBSTS], [ +AC_DEFUN([VLC_SUBSTS], [ EOF rm -f m4/private.m4-tmp3 && cat > m4/private.m4-tmp3 << EOF dnl The required AC_OUTPUT calls dnl XXX: this feature is only supported starting from automake-1.7 -AC_DEFUN([AX_VLC_MAKEFILES], [AC_OUTPUT([ +AC_DEFUN([VLC_MAKEFILES], [AC_OUTPUT([ EOF rm -f m4/private.m4-tmp4 && cat > m4/private.m4-tmp4 << EOF dnl Helper macro for vlc-config generation -AC_DEFUN([AX_VLC_CONFIG_HELPER], [ +AC_DEFUN([VLC_CONFIG_HELPER], [ cat >> vlc-config.in << BLAH EOF modules="" -count=0 rm -f modules/Makefile.am && cat > modules/Makefile.am << EOF # Autogenerated by bootstrap - DO NOT EDIT EXTRA_DIST = LIST SUBDIRS = `sed -ne 's,modules/\([^/]*\)/Makefile,\1,p' configure.ac | xargs` -#DIST_SUBDIRS = \$(SUBDIRS) EOF for dir in `sed -ne 's,modules/\(.*\)/Makefile,\1,p' configure.ac` do printf "." - mf="modules/${dir}/Modules.am" - basedir="`echo ${dir} | cut -f1 -d/`" + modf="modules/${dir}/Modules.am" + makf="modules/${dir}/Makefile.am" + basedir="`echo "${dir}" | cut -f1 -d/`" # automake will not recurse for make dist if we don't define SUBDIRS = . subdirs="`sed -ne 's,'modules/${dir}'/\([^/]*\)/Makefile,\1,p' configure.ac | xargs`" - #parent=`echo ${dir} | sed -e 's@[^/]*@..@g'` - #echo " modules/${dir}/Makefile" >> m4/private.m4-tmp3 - rm -f modules/${dir}/Makefile.am && cat > modules/${dir}/Makefile.am << EOF + mods="`sed -n -e 's/^ *SOURCES_\([^ ]*\).*/\1/p' < "${modf}" | xargs`" + extra_libs="" + for mod in $mods + do + extra_libs="${extra_libs} lib${mod}_plugin.a" + extra_libs="${extra_libs} lib${mod}.a lib${mod}_pic.a" + done + rm -f "${makf}" && cat > "${makf}" << EOF -# Autogenerated by bootstrap - DO NOT EDIT - edit Modules.am instead +# ${makf} automatically generated from ${modf} by bootstrap +# DO NOT EDIT - edit Modules.am or \$(top_srcdir)/bootstrap instead + +basedir = ${basedir} +mods = ${mods} NULL = libvlc_LIBRARIES = @@ -91,23 +198,115 @@ noinst_HEADERS = EXTRA_DIST = Modules.am BUILT_SOURCES = SUBDIRS = ${subdirs} -#DIST_SUBDIRS = \$(SUBDIRS) -libvlcdir = \$(libdir)/vlc/${basedir} +SUFFIXES = _plugin\$(LIBEXT) _plugin.a + +libvlcdir = \$(libdir)/vlc/\$(basedir) + +EXTRA_LIBRARIES = ${extra_libs} include Modules.am + +all: all-modules + +# Find out which modules were enabled and tell make to build them +all-modules: + @set fnord \$\$MAKEFLAGS; amf=\$\$2; targets=\`\\ + if test "\$(plugin)" != "no"; then z=\$\$(\$(VLC_CONFIG) --list plugin); for mod in \$(mods); do case "\$\$z " in *\ \$\${mod}\ *) echo lib\$\${mod}_plugin\$(LIBEXT);; esac; done; fi; \\ + if test "\$(builtin)" != "no"; then z=\$\$(\$(VLC_CONFIG) --list builtin); for mod in \$(mods); do case "\$\$z " in *\ \$\${mod}\ *) echo lib\$\${mod}.a;; esac; done; fi; \\ + if test "\$(pic)" = "pic"; then z=\$\$(\$(VLC_CONFIG) --list builtin); for mod in \$(mods); do case "\$\$z " in *\ \$\${mod}\ *) echo lib\$\${mod}_pic.a;; esac; done; fi; \\ + \`; case "\$\$targets" in *lib*) \$(MAKE) \$(AM_MAKEFLAGS) \$\$targets || case "\$\$amf" in *=*) exit 1;; *k*) fail=yes;; *) exit 1;; esac; ;; esac; \\ + test -z "\$\$fail" + +# Build a plugin with the adequate linker and linker's flags +_plugin.a_plugin\$(LIBEXT): + @mod="\$*" ; mod=\$\${mod#lib} ; \ + ldfl="\`\$(VLC_CONFIG) --libs plugin \$\$mod\` -u \$(SYMPREF)\$(VLC_ENTRY)" ; \ + case \`\$(VLC_CONFIG) --linkage \$\$mod\` in \\ + c++) ld="\$(CXXLINK)" ;; \ + objc) ld="\$(OBJCLINK)" ;; \ + c|*) ld="\$(LINK)" ;; \ + esac ; \ + echo \$\$ld \$< \$\$ldfl ; \ + \$\$ld \$< \$\$ldfl + +if MAINTAINER_MODE +\$(srcdir)/Makefile.am: \$(srcdir)/Modules.am \$(top_srcdir)/bootstrap + cd \$(top_srcdir) && \$(SHELL) ./bootstrap +endif + +mostlyclean-local: + -rm -f *.a *\$(LIBEXT) + +### automake creates libvlcdir after running install-*-local +### so we have to create it ourselves first +install-exec-local: all-modules + mkdir -p -- "\$(DESTDIR)\$(libvlcdir)" + @z=\$\$(\$(VLC_CONFIG) --list plugin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo \$(INSTALL_PROGRAM) "lib\$\${mod}_plugin\$(LIBEXT)" "\$(DESTDIR)\$(libvlcdir)/" ; \ + \$(INSTALL_PROGRAM) "lib\$\${mod}_plugin\$(LIBEXT)" "\$(DESTDIR)\$(libvlcdir)/" || exit \$\$?; \ + ;; \ + esac; \ + done + @z=\$\$(\$(VLC_CONFIG) --list builtin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo \$(INSTALL_DATA) "lib\$\${mod}.a" "\$(DESTDIR)\$(libdir)/vlc/" ; \ + \$(INSTALL_DATA) "lib\$\${mod}.a" "\$(DESTDIR)\$(libdir)/vlc/" || exit \$\$?; \ + ;; \ + esac; \ + done +if BUILD_MOZILLA + @z=\$\$(\$(VLC_CONFIG) --list builtin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo \$(INSTALL_DATA) "lib\$\${mod}_pic.a" "\$(DESTDIR)\$(libdir)/vlc/" ; \ + \$(INSTALL_DATA) "lib\$\${mod}_pic.a" "\$(DESTDIR)\$(libdir)/vlc/" || exit \$\$?; \ + ;; \ + esac; \ + done +endif + +uninstall-local: + @z=\$\$(\$(VLC_CONFIG) --list plugin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo rm -f "\$(DESTDIR)\$(libvlcdir)/lib\$\${mod}_plugin\$(LIBEXT)" ; \ + rm -f "\$(DESTDIR)\$(libvlcdir)/lib\$\${mod}_plugin\$(LIBEXT)" || true; \ + ;; \ + esac; \ + done + @z=\$\$(\$(VLC_CONFIG) --list builtin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo rm -f "\$(DESTDIR)\$(libdir)/vlc/lib\$\${mod}.a" ; \ + rm -f "\$(DESTDIR)\$(libdir)/vlc/lib\$\${mod}.a" || true; \ + ;; \ + esac; \ + done +if BUILD_MOZILLA + @z=\$\$(\$(VLC_CONFIG) --list builtin); \ + for mod in \$(mods); do \ + case "\$\$z " \ + in *\ \$\${mod}\ *) \ + echo rm -f "\$(DESTDIR)\$(libdir)/vlc/lib\$\${mod}_pic.a" ; \ + rm -f "\$(DESTDIR)\$(libdir)/vlc/lib\$\${mod}_pic.a" || true; \ + ;; \ + esac; \ + done +endif + EOF - for mod in `sed -n -e 's/^ *SOURCES_\([^ ]*\).*/\1/p' < ${mf}` + for mod in $mods do - count="`expr ${count} + 1`" - if grep '^SOURCES_'${mod}'.*=.*PRIVATE' < ${mf} >/dev/null 2>&1; then - PRIVATE='#'; else - PRIVATE=''; fi - if grep '^nodist_SOURCES_'${mod}'' < ${mf} >/dev/null 2>&1; then + if grep '^nodist_SOURCES_'${mod}'' < "${modf}" >/dev/null 2>&1; then NODIST=''; else NODIST='#'; fi -# cat >> m4/private.m4-tmp1 << EOF -#dnl AM_CONDITIONAL(${mod}_p, test x\$${mod}_p = xyes) -#dnl AM_CONDITIONAL(${mod}_b, test x\$${mod}_b = xyes) -#EOF cat >> m4/private.m4-tmp4 << EOF ${mod}) list="\\\${list} ${dir}/lib${mod}" ;; EOF @@ -118,90 +317,60 @@ EOF # the resulting file size. # - *_CFLAGS, *_CXXFLAGS etc. because per-object CPPFLAGS does not seem to # work properly with any automake version I tested. - cat >> modules/${dir}/Makefile.am << EOF + cat >> "${makf}" << EOF # The ${mod} plugin -all: all-${mod} - -all-${mod}: - if \$(VLC_CONFIG) --target plugin | grep "${dir}/lib${mod}_plugin" >/dev/null 2>&1 ; then \$(MAKE) \$(AM_MAKEFLAGS) lib${mod}_plugin\$(LIBEXT); fi - if \$(VLC_CONFIG) --target builtin | grep "${dir}/lib${mod}\\.a" >/dev/null 2>&1 ; then \$(MAKE) \$(AM_MAKEFLAGS) lib${mod}.a; fi -if BUILD_MOZILLA - if \$(VLC_CONFIG) --target builtin pic | grep "${dir}/lib${mod}_pic\\.a" >/dev/null 2>&1 ; then \$(MAKE) \$(AM_MAKEFLAGS) lib${mod}_pic.a; fi -endif - -if UNTRUE -L${count}p = lib${mod}_plugin.a -D${count}p = lib${mod}_plugin\$(LIBEXT) -L${count}b = lib${mod}.a -L${count}pic = lib${mod}_pic.a EOF - if [ "${NODIST}" != "#" ]; then cat >> modules/${dir}/Makefile.am << EOF -B${count}p = \$(nodist_SOURCES_${mod}) -B${count}b = \$(nodist_SOURCES_${mod}) -EOF - fi - cat >> modules/${dir}/Makefile.am << EOF -endif + if [ "${NODIST}" != "#" ]; then cat >> "${makf}" << EOF +clean-local: clean-${mod} +clean-${mod}: + -test -z "\$(nodist_SOURCES_${mod})" || rm -f \$(nodist_SOURCES_${mod}) EOF - if [ "${NODIST}" != "#" ]; then cat >> modules/${dir}/Makefile.am << EOF -${PRIVATE}BUILT_SOURCES += \$(B${count}p) \$(B${count}b) + fi + if [ "${NODIST}" != "#" ]; then cat >> "${makf}" << EOF +BUILT_SOURCES += \$(B${mod}) EOF fi - cat >> modules/${dir}/Makefile.am << EOF -${PRIVATE}lib${mod}_plugin_a_SOURCES = \$(SOURCES_${mod}) + cat >> "${makf}" << EOF +lib${mod}_plugin_a_SOURCES = \$(SOURCES_${mod}) EOF - if [ "${NODIST}" != "#" ]; then cat >> modules/${dir}/Makefile.am << EOF -${PRIVATE}nodist_lib${mod}_plugin_a_SOURCES = \$(nodist_SOURCES_${mod}) + if [ "${NODIST}" != "#" ]; then cat >> "${makf}" << EOF +nodist_lib${mod}_plugin_a_SOURCES = \$(nodist_SOURCES_${mod}) EOF fi - cat >> modules/${dir}/Makefile.am << EOF + cat >> "${makf}" << EOF lib${mod}_plugin_a_CFLAGS = \`\$(VLC_CONFIG) --cflags plugin ${mod}\` lib${mod}_plugin_a_CXXFLAGS = \`\$(VLC_CONFIG) --cxxflags plugin ${mod}\` lib${mod}_plugin_a_OBJCFLAGS = \`\$(VLC_CONFIG) --objcflags plugin ${mod}\` -lib${mod}_pic_a_SOURCES = ${PRIVATE}\$(SOURCES_${mod}) +lib${mod}_pic_a_SOURCES = \$(SOURCES_${mod}) EOF - if [ "${NODIST}" != "#" ]; then cat >> modules/${dir}/Makefile.am << EOF -nodist_lib${mod}_pic_a_SOURCES = ${PRIVATE}\$(nodist_SOURCES_${mod}) + if [ "${NODIST}" != "#" ]; then cat >> "${makf}" << EOF +nodist_lib${mod}_pic_a_SOURCES = \$(nodist_SOURCES_${mod}) EOF fi - cat >> modules/${dir}/Makefile.am << EOF + cat >> "${makf}" << EOF lib${mod}_pic_a_CFLAGS = \`\$(VLC_CONFIG) --cflags builtin pic ${mod}\` lib${mod}_pic_a_CXXFLAGS = \`\$(VLC_CONFIG) --cxxflags builtin pic ${mod}\` lib${mod}_pic_a_OBJCFLAGS = \`\$(VLC_CONFIG) --objcflags builtin pic ${mod}\` lib${mod}_a_SOURCES = ${PRIVATE}\$(SOURCES_${mod}) EOF - if [ "${NODIST}" != "#" ]; then cat >> modules/${dir}/Makefile.am << EOF + if [ "${NODIST}" != "#" ]; then cat >> "${makf}" << EOF nodist_lib${mod}_a_SOURCES = ${PRIVATE}\$(nodist_SOURCES_${mod}) EOF fi - cat >> modules/${dir}/Makefile.am << EOF + cat >> "${makf}" << EOF lib${mod}_a_CFLAGS = \`\$(VLC_CONFIG) --cflags builtin ${mod}\` lib${mod}_a_CXXFLAGS = \`\$(VLC_CONFIG) --cxxflags builtin ${mod}\` lib${mod}_a_OBJCFLAGS = \`\$(VLC_CONFIG) --objcflags builtin ${mod}\` -libvlc_LIBRARIES += \$(L${count}b) \$(L${count}pic) -lib${mod}_DATA = \$(D${count}p) - -lib${mod}dir = \$(libdir)/vlc/${topdir} -${PRIVATE}noinst_LIBRARIES += \$(L${count}p) -${PRIVATE}lib${mod}_plugin\$(LIBEXT): \$(lib${mod}_plugin_a_OBJECTS) -${PRIVATE} case \`\$(VLC_CONFIG) --linkage ${mod}\` in \\ -${PRIVATE} c++) \$(CXXLINK) \$(lib${mod}_plugin_a_OBJECTS) \`\$(VLC_CONFIG) --libs plugin ${mod}\` ;; \\ -${PRIVATE} objc) \$(OBJCLINK) \$(lib${mod}_plugin_a_OBJECTS) \`\$(VLC_CONFIG) --libs plugin ${mod}\` ;; \\ -${PRIVATE} c|*) \$(LINK) \$(lib${mod}_plugin_a_OBJECTS) \`\$(VLC_CONFIG) --libs plugin ${mod}\` ;; \\ -${PRIVATE} esac - - EOF done done cat >> m4/private.m4-tmp1 << EOF - AM_CONDITIONAL(UNTRUE, false) ]) EOF cat m4/private.m4-tmp1 >> m4/private.m4 && rm -f m4/private.m4-tmp1 @@ -219,7 +388,7 @@ BLAH EOF cat m4/private.m4-tmp4 >> m4/private.m4 && rm -f m4/private.m4-tmp4 -echo "done." +echo " done." ### ### classic bootstrap stuff @@ -227,140 +396,53 @@ echo "done." set -x # remove autotools cruft -rm -f aclocal.m4 configure configure.ac.in config.log Modules.am +rm -f aclocal.m4 configure config.log config.h config.h.in +rm -Rf autom4te*.cache # remove old autotools extra cruft rm -f config.guess config.sub missing mkinstalldirs compile depcomp install-sh # remove new autotools extra cruft -(cd autotools && rm -f config.guess config.sub missing mkinstalldirs compile depcomp install-sh) +rm -Rf autotools +mkdir autotools # remove libtool cruft rm -f ltmain.sh libtool ltconfig # remove gettext cruft -rm -f m4/oldgettext.m4 ABOUT-NLS +rm -f ABOUT-NLS rm -Rf intl +# remove old vlc cruft +rm -f m4/oldgettext.m4 stamp-pic configure.ac.in Modules.am +# remove new vlc cruft +rm -f stamp-builtin stamp-h* mozilla/stamp-pic -# Check for gettext -if gettextize --version >/dev/null 2>&1; then -# Autopoint is available from 0.11.3, but we need 0.11.5 -if expr `gettextize --version | sed -e '1s/[^0-9]*//' -e q` \ - '>=' 0.11.5 >/dev/null 2>&1; then - # We have gettext, and a recent version! Everything is cool. - autopoint || exit 1 - GETTEXT=yes -else - # User's gettext is too old. try to continue anyway. - echo > ABOUT-NLS - mkdir -p intl - echo > intl/Makefile.am - cat >> m4/private.m4 << EOF -dnl User's gettext is too old, so this is a no-op -AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) - -EOF - GETTEXT=old -fi;else - # we don't have gettext. grmbl. try to continue anyway. - echo > ABOUT-NLS - mkdir -p intl - echo > intl/Makefile.am - cat >> m4/private.m4 << EOF -dnl User does not have gettext, so this is a no-op -AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) - -EOF - GETTEXT=no -fi - -# Check for pkg-config -if pkg-config --version >/dev/null 2>&1; then - # We have pkg-config, everything is cool. - PKGCONFIG=yes -else - # Not present, use a workaround. - cat >> m4/private.m4 << EOF -dnl User does not have pkg-config, so this is a no-op -AC_DEFUN([PKG_CHECK_MODULES], []) - -EOF - PKGCONFIG=no -fi - -# Check for automake -amvers="none" -if automake-1.7 --version >/dev/null 2>&1; then - amvers="-1.7" - # If we also have 1.6, use it instead because it is faster - if automake-1.6 --version >/dev/null 2>&1; then - if expr "`automake-1.6 --version | sed -e '1s/[^0-9]*//' -e q`" ">" "1.6.1" > /dev/null 2>&1 - then amvers="-1.6" - fi - fi -elif automake-1.6 --version >/dev/null 2>&1; then - amvers="-1.6" - if expr "`automake-1.6 --version | sed -e '1s/[^0-9]*//' -e q`" "<=" "1.6.1" > /dev/null 2>&1 - then AUTOMAKESUCKS=yes - fi -elif automake-1.5 --version >/dev/null 2>&1; then - INSTALLSUCKS=yes - amvers="-1.5" -elif automake --version > /dev/null 2>&1; then - amvers="" - case "`automake --version | sed -e '1s/[^0-9]*//' -e q`" in - 0|0.*|1|1.[01234]|1.[01234][-.]*) - amvers="none" ;; - 1.5|1.5.*) - INSTALLSUCKS=yes ;; - 1.6|1.6.0|1.6.1) - AUTOMAKESUCKS=yes ;; - esac -fi - -if test "${amvers}" = "none"; then - set +x - echo "you need automake version 1.5 or later" - exit 1 -fi - -# Automake complains if this is not present +# Automake complains if these are not present rm -f vlc-config.in && printf "" > vlc-config.in +if [ "$GETTEXT" != "yes" ]; then + test -d intl || mkdir intl + printf "" > intl/Makefile.am + printf "" > ABOUT-NLS +fi # Do the rest -aclocal${amvers} -I m4 || exit 1 -autoheader || exit 1 - -automake${amvers} --add-missing --copy - -autoconf || exit 1 +${autopoint} -f +${aclocal} ${ACLOCAL_ARGS} +${autoconf} +${autoheader} +${automake} --add-missing --copy ## ## files which need to be regenerated ## rm -f vlc-config.in vlc-config -rm -f src/misc/modules_builtin.h src/misc/modules_plugin.h -rm -f include/vlc_symbols.h +rm -f src/misc/modules_builtin.h rm -f mozilla/vlcintf.h -## -## Shut up -## +# Shut up set +x ## ## Tell the user about gettext, pkg-config and sed ## -case "${GETTEXT}" in - yes) - ;; - no) - cat << EOF - -=========================================================== -IMPORTANT NOTE: you do not have gettext installed on your -system. The vlc build will work, but you will not have -internationalization support. We suggest installing gettext. -EOF - ;; - old) - cat << EOF +if [ "${GETTEXT}" = "old" ]; then + cat << EOF ========================================================== NOTE: you have an old version of gettext installed on your @@ -368,28 +450,20 @@ system. The vlc build will work, but if your system does not have libintl you will not have internationalization support. We suggest upgrading to gettext 0.11.5 or later. EOF - ;; -esac +fi -case "$PKGCONFIG" in - yes) - ;; - no) - cat << EOF +if [ "$PKGCONFIG" = "no" ]; then + cat << EOF ============================================================== NOTE: you do not have the "pkg-config" utility on your system; detection of the Gtk-2.0 and GNOME 2.0 libraries will not be reliable. EOF - ;; -esac +fi -case "$AUTOMAKESUCKS" in - no) - ;; - yes) - cat << EOF +if [ "$AUTOMAKESUCKS" = "yes" ]; then + cat << EOF ============================================================= IMPORTANT NOTE: your version of automake has a bug which will @@ -397,14 +471,10 @@ prevent proper plugin compilation. Either compile VLC with the --disable-plugins flag, or use a version of automake newer than 1.6.1 (1.6.2 is OK, and so are the 1.5 series). EOF - ;; -esac +fi -case "$INSTALLSUCKS" in - no) - ;; - yes) - cat << EOF +if [ "$INSTALLSUCKS" = "yes" ]; then + cat << EOF ============================================================= IMPORTANT NOTE: your version of automake has a bug which will @@ -412,6 +482,5 @@ prevent proper installation. Do not use "make install" with this version of automake, or use a version of automake newer than 1.5 (such as 1.6 or 1.7). EOF - ;; -esac +fi