From cb4e3c8e3f5799d28912835d2c96b82c98fdafb8 Mon Sep 17 00:00:00 2001 From: Thomas Vander Stichele Date: Wed, 6 Feb 2002 18:18:16 +0000 Subject: [PATCH] more build fixing Original commit message from CVS: more build fixing --- ChangeLog | 4 + autogen.sh | 211 ++++++++++++--------------------------------------- configure.ac | 61 +++------------ 3 files changed, 62 insertions(+), 214 deletions(-) diff --git a/ChangeLog b/ChangeLog index 88d930111f..c54708595d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2002-02-06 Thomas Vander Stichele + + * more build cleanup : merging over changes from gst-player + 2002-01-17 Bastien Nocera * sys/Makefile.am: make the qcam plugin build only diff --git a/autogen.sh b/autogen.sh index 0b80f9947e..a7c1246475 100755 --- a/autogen.sh +++ b/autogen.sh @@ -3,173 +3,54 @@ DIE=0 package=gstreamer-plugins -srcfile=sys/oss/Makefile.am -#DEBUG=defined +srcfile=gst/law/alaw.c -for i in $@; do - if test "$i" = "--autogen-noconfigure"; then - NOCONFIGURE=defined - echo "+ configure run disabled" - elif test "$i" = "--autogen-nocheck"; then - NOCHECK=defined - echo "+ autotools version check disabled" - elif test "$i" = "--autogen-debug"; then - DEBUG=defined - echo "+ debug output enabled" - elif test "$i" = "--help"; then - echo "autogen.sh help options: " - echo " --autogen-noconfigure don't run the configure script" - echo " --autogen-nocheck don't do version checks" - echo " --autogen-debug debug the autogen process" - echo "continuing with the autogen in order to get configure help messages..." - fi -done - -debug () -# print out a debug message if DEBUG is a defined variable -{ - if test ! -z "$DEBUG" - then - echo "DEBUG: $1" - fi -} - -version_check () -# check the version of a package -# first argument : package name (executable) -# second argument : source download url -# rest of arguments : major, minor, micro version -{ - PACKAGE=$1 - URL=$2 - MAJOR=$3 - MINOR=$4 - MICRO=$5 - - WRONG= - - debug "major $MAJOR minor $MINOR micro $MICRO" - VERSION=$MAJOR - if test ! -z "$MINOR"; then VERSION=$VERSION.$MINOR; else MINOR=0; fi - if test ! -z "$MICRO"; then VERSION=$VERSION.$MICRO; else MICRO=0; fi - - debug "major $MAJOR minor $MINOR micro $MICRO" - - test -z "$NOCHECK" && { - echo -n "+ checking for $1 >= $VERSION ... " - } || { - return 0 - } - - ($PACKAGE --version) < /dev/null > /dev/null 2>&1 || - { - echo - echo "You must have $PACKAGE installed to compile $package." - echo "Download the appropriate package for your distribution," - echo "or get the source tarball at $URL" - return 1 - } - # the following line is carefully crafted sed magic - pkg_version=`$PACKAGE --version|head -n 1|sed 's/^[a-zA-z\.\ ()]*//;s/ .*$//'` - debug "pkg_version $pkg_version" - pkg_major=`echo $pkg_version | cut -d. -f1` - pkg_minor=`echo $pkg_version | cut -d. -f2` - pkg_micro=`echo $pkg_version | cut -d. -f3` - test -z "$pkg_minor" && pkg_minor=0 - test -z "$pkg_micro" && pkg_micro=0 - - debug "found major $pkg_major minor $pkg_minor micro $pkg_micro" - - #start checking the version - debug "version check" - - if [ ! "$pkg_major" -gt "$MAJOR" ]; then - debug "$pkg_major -le $MAJOR" - if [ "$pkg_major" -lt "$MAJOR" ]; then - WRONG=1 - elif [ ! "$pkg_minor" -gt "$MINOR" ]; then - if [ "$pkg_minor" -lt "$MINOR" ]; then - WRONG=1 - elif [ "$pkg_micro" -lt "$MICRO" ]; then - WRONG=1 - fi - fi - fi - - if test ! -z "$WRONG"; then - echo "found $pkg_version, not ok !" - echo - echo "You must have $PACKAGE $VERSION or greater to compile $package." - echo "Get the latest version from $URL" - return 1 - else - echo "found $pkg_version, ok." - fi -} - -# autoconf 2.52d has a weird issue involving a yes:no error -# so don't allow it's use -ac_version=`autoconf --version|head -n 1|sed 's/^[a-zA-z\.\ ()]*//;s/ .*$//'` -if test "$ac_version" = "2.52d"; then - echo "autoconf 2.52d has an issue with our current build." - echo "We don't know who's to blame however. So until we do, get a" - echo "regular version. RPM's of a working version are on the gstreamer site." +# source helper functions +if test ! -e common/gst-autogen.sh; +then + echo There is something wrong with your source tree. + echo You are missing common/gst-autogen.sh exit 1 fi +. common/gst-autogen.sh +autogen_options $@ +echo -n "+ check for build tools" +if test ! -z $NOCHECK; then echo " skipped"; else echo; fi version_check "autoconf" "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 52 || DIE=1 version_check "automake" "ftp://ftp.gnu.org/pub/gnu/automake/" 1 5 || DIE=1 version_check "libtool" "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 4 0 || DIE=1 version_check "pkg-config" "http://www.freedesktop.org/software/pkgconfig" 0 8 0 || DIE=1 -if test "$DIE" -eq 1; then - exit 1 -fi - -test -f $srcfile || { - echo "You must run this script in the top-level $package directory" - exit 1 -} - -if test -z "$*"; then - echo "I am going to run ./configure with no arguments - if you wish " - echo "to pass any to it, please specify them on the $0 command line." -fi - -echo "+ running aclocal ..." -cat m4/*.m4 >acinclude.m4;aclocal $ACLOCAL_FLAGS || { - echo - echo "aclocal failed - check that all needed development files are present on system" - exit 1 -} - -# FIXME : why does libtoolize keep complaining about aclocal ? -## echo "+ running libtoolize ..." -## libtoolize --copy --force - -echo "+ running autoheader ... " -autoheader || { - echo - echo "autoheader failed" - exit 1 -} -# touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo -echo timestamp > stamp-h.in 2> /dev/null -echo "+ running autoconf ... " -autoconf || { - echo - echo "autoconf failed" - exit 1 -} -echo "+ running automake ... " -automake -a -c || { - echo - echo "automake failed" - exit 1 -} +autoconf_2.52d_check || DIE=1 CONFIGURE_OPT='--enable-maintainer-mode --enable-plugin-builddir --enable-debug --enable-DEBUG' +# if no arguments specified then this will be printed + +if test -z "$*"; then + echo "+ Checking for autogen.sh options" + echo " This autogen script will automatically run ./configure as:" + echo " ./configure $CONFIGURE_DEF_OPT" + echo " To pass any additional options, please specify them on the $0" + echo " command line." +fi + +toplevel_check $srcfile + +tool_run "aclocal" "-I common/m4 $ACLOCAL_FLAGS" + +# FIXME : why does libtoolize keep complaining about aclocal ? + +echo "+ not running libtoolize until libtool fix has flown downstream" +# tool_run "libtoolize" "--copy --force" +tool_run "autoheader" + +# touch the stamp-h.in build stamp so we don't re-run autoheader in maintainer mode -- wingo +echo timestamp > stamp-h.in 2> /dev/null + +tool_run "autoconf" +tool_run "automake" "-a -c" # if enable exists, add an -enable option for each of the lines in that file if test -f enable; then @@ -185,22 +66,24 @@ if test -f disable; then done fi +# a quick cvs co if necessary to alleviate the pain - may remove this +# when developers get a clue ;) +if test ! -d common; then cvs co common; fi + test -n "$NOCONFIGURE" && { - echo "skipping configure stage for package $package, as requested." - echo "autogen.sh done." + echo "+ skipping configure stage for package $package, as requested." + echo "+ autogen.sh done." exit 0 } echo "+ running configure ... " -echo "./configure default flags: $CONFIGURE_OPT" -echo "using: $CONFIGURE_OPT $@" +test ! -z "$CONFIGURE_DEF_OPT" && echo " ./configure default flags: $CONFIGURE_DEF_OPT" +test ! -z "$CONFIGURE_EXT_OPT" && echo " ./configure external flags: $CONFIGURE_EXT_OPT" echo -./configure $CONFIGURE_OPT "$@" || { - echo - echo "configure failed" - exit 1 +./configure $CONFIGURE_OPT $CONFIGURE_EXT_OPT || { + echo " configure failed" + exit 1 } -echo echo "Now type 'make' to compile $package." diff --git a/configure.ac b/configure.ac index a8b4c93d48..88ddbfa509 100644 --- a/configure.ac +++ b/configure.ac @@ -1,55 +1,29 @@ -dnl autoconf configuration file for plugins +dnl autoconf configuration file for gst-plugins AC_INIT -dnl FIXME take something else ? -AC_CONFIG_SRCDIR([COPYING]) - AC_CANONICAL_TARGET([]) +dnl when going to/from release please set the nano (fourth number) right ! +AS_VERSION(gst-plugins, GST_PLUGINS, 0, 3, 2, 1) + + +dnl FIXME take something else ? +AC_CONFIG_SRCDIR([gst/law/alaw.c]) AM_CONFIG_HEADER(config.h) -GST_VERSION_MAJOR=0 -GST_VERSION_MINOR=3 -GST_VERSION_MICRO=2 - -dnl we use a datestamped release tag and a fourth version ".1" number -dnl during CVS development -GST_VERSION_RELEASE=`date +%Y%m%d` -GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO.1 -dnl we use a normal release tag increased manually when releasing -dnl GST_VERSION_RELEASE=1 -dnl GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_MICRO - -PACKAGE=gst-plugins -VERSION=$GST_VERSION - -AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") -AC_DEFINE_UNQUOTED(VERSION, "$VERSION") -AC_SUBST(PACKAGE) -AC_SUBST(VERSION) -AC_DEFINE_UNQUOTED(GST_VERSION_RELEASE, "$GST_VERSION_RELEASE") -AC_SUBST(GST_VERSION_RELEASE) - dnl libtool GST_CURRENT=2 GST_REVISION=0 GST_AGE=0 GST_LIBVERSION=$GST_CURRENT:$GST_REVISION:$GST_AGE - -AM_INIT_AUTOMAKE($PACKAGE, $VERSION) -dnl Add parameters for aclocal -dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL) -ACLOCAL="cat m4/*.m4 >acinclude.m4;$ACLOCAL $ACLOCAL_FLAGS" - -AC_SUBST(GST_VERSION_MAJOR) -AC_SUBST(GST_VERSION_MINOR) -AC_SUBST(GST_VERSION_MICRO) -AC_SUBST(GST_VERSION) - AC_SUBST(GST_CURRENT) AC_SUBST(GST_REVISION) AC_SUBST(GST_AGE) AC_SUBST(GST_LIBVERSION) +dnl Add parameters for aclocal +dnl (This must come after AM_INIT_AUTOMAKE, since it modifies ACLOCAL) +ACLOCAL="cat m4/*.m4 >acinclude.m4;$ACLOCAL $ACLOCAL_FLAGS" + AM_MAINTAINER_MODE AC_PROG_CC @@ -424,7 +398,6 @@ GST_CHECK_FEATURE(FLAC, [FLAC lossless audio], flacenc flacdec, [ ]) dnl *** Gnome VFS *** -dnl this check uses the GST_CHECK_CONFIGPROG macro with gnome-config vfs translit(dnm, m, l) AM_CONDITIONAL(USE_GNOME_VFS, true) GST_CHECK_FEATURE(GNOME_VFS, [Gnome VFS], gnomevfssrc, [ PKG_CHECK_MODULES(GNOME_VFS, gnome-vfs-2.0, HAVE_GNOME_VFS="yes", HAVE_GNOME_VFS="no") @@ -544,7 +517,6 @@ GST_CHECK_FEATURE(RTP, [RTP library], rtpenc rtpdec,[ AC_SUBST(RTP_LIBS) ]) - dnl FIXME header check needs to use GLIB_CFLAGS in order to succeed for rtp dnl can use GST_* which should have GLIB_* info dnl AC_CHECK_HEADERS(rtp/rtp.h, HAVE_LIBRTP=yes, HAVE_LIBRTP=no) @@ -716,8 +688,6 @@ AM_CONDITIONAL(HAVE_ATOMIC_H, test "x$USE_ATOMIC_H" = "xyes") AM_CONDITIONAL(EXPERIMENTAL, test "$EXPERIMENTAL" = "$xyes") AM_CONDITIONAL(BROKEN, test "$BROKEN" = "$xyes") -AM_CONDITIONAL(HAVE_LIBMIKMOD, test "x$HAVE_LIBMIKMOD" = "xyes") -AM_CONDITIONAL(HAVE_LIBSDL, test "x$HAVE_LIBSDL" = "xyes") AM_CONDITIONAL(HAVE_NASM, test "x$HAVE_NASM" = "xyes") AM_CONDITIONAL(HAVE_LIBGLADE_GNOME, test "x$HAVE_LIBGLADE_GNOME" = "xyes") AM_CONDITIONAL(HAVE_GNOME, test "x$HAVE_GNOME" = "xyes") @@ -727,20 +697,11 @@ AM_CONDITIONAL(BUILD_DOCS, test "x$BUILD_DOCS" = "xyes") AM_CONDITIONAL(BUILD_TESTS, test "x$BUILD_TESTS" = "xyes") AM_CONDITIONAL(BUILD_EXAMPLES, test "x$BUILD_EXAMPLES" = "xyes") AM_CONDITIONAL(BUILD_PLUGIN_DOCS, test "x$BUILD_PLUGIN_DOCS" = "xyes") -AM_CONDITIONAL(HAVE_PDFXMLTEX, $HAVE_PDFXMLTEX) -AM_CONDITIONAL(HAVE_PDFTOPS, $HAVE_PDFTOPS) -AM_CONDITIONAL(HAVE_XSLTPROC, $HAVE_XSLTPROC) AM_CONDITIONAL(HAVE_FIG2DEV_PNG, $HAVE_FIG2DEV_PNG) AM_CONDITIONAL(HAVE_FIG2DEV_PDF, $HAVE_FIG2DEV_PDF) -AM_CONDITIONAL(HAVE_LIBRTP, test "x$HAVE_LIBRTP" = "xyes") -AM_CONDITIONAL(HAVE_ARTS, test "x$HAVE_ARTS" = "xyes") AM_CONDITIONAL(HAVE_RAW1394, test "x$HAVE_RAW1394" = "xyes") -AM_CONDITIONAL(HAVE_LIBDV, test "x$HAVE_LIBDV" = "xyes") -AM_CONDITIONAL(HAVE_GNOME_VFS, test "x$HAVE_GNOME_VFS" = "xyes") -AM_CONDITIONAL(HAVE_LIBGSM, test "x$HAVE_LIBGSM" = "xyes") AM_CONDITIONAL(PLUGINS_USE_BUILDDIR, test "x$PLUGINS_USE_BUILDDIR" = "xyes") - GST_CFLAGS="$GST_CFLAGS -I\$(top_srcdir)/gst-libs -Wall" AC_SUBST(GST_LIBS) AC_SUBST(GST_CFLAGS)