more build fixing

Original commit message from CVS:
more build fixing
This commit is contained in:
Thomas Vander Stichele 2002-02-06 18:18:16 +00:00
parent d614471bef
commit cb4e3c8e3f
3 changed files with 62 additions and 214 deletions

View file

@ -1,3 +1,7 @@
2002-02-06 Thomas Vander Stichele <thomas@apestaart.org>
* more build cleanup : merging over changes from gst-player
2002-01-17 Bastien Nocera <hadess@hadess.net>
* sys/Makefile.am: make the qcam plugin build only

View file

@ -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."

View file

@ -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)