more build cleanups (using as-version and as-libtool) some release doc notes from the previous release

Original commit message from CVS:
* more build cleanups (using as-version and as-libtool)
* some release doc notes from the previous release
This commit is contained in:
Thomas Vander Stichele 2002-02-09 21:05:12 +00:00
parent a90f908bbf
commit f985019e4c
16 changed files with 71 additions and 226 deletions

1
TODO
View file

@ -1,4 +1,3 @@
- property proxy in compount elements.
- implement events in all plugins.
- app must be able to catch events?

View file

@ -1,5 +1,6 @@
#undef PACKAGE
#undef VERSION
#undef GST_VERSION
#undef GST_VERSION_RELEASE
/* Gettext stuff */

View file

@ -2,189 +2,62 @@
# Run this to generate all the initial makefiles, etc.
DIE=0
package=GStreamer
srcfile=gst/gstobject.h
#DEBUG=defined
package=gstreamer
srcfile=gst/gst.c
# a quick cvs co to ease the transition
if test ! -d common; then
echo "+ getting common from cvs"; cvs co common
fi
if test ! -d libs/ext/cothreads; then
echo "+ getting cothreads from cvs"; cvs co -d libs/ext cothreads
echo "+ getting cothreads from cvs"; cvs co gst-cothreads
fi
CONFIGURE_OPT='--enable-maintainer-mode --enable-plugin-builddir'
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 ! -f 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 $@
if test -z "$*"; then
echo "This autogen script will automatically run ./configure as:"
echo "./configure $CONFIGURE_OPT"
echo "To pass any other options, please specify them on the $0"
echo "command line."
echo
fi
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
autoconf_2.52d_check || DIE=1
CONFIGURE_DEF_OPT='--enable-maintainer-mode --enable-plugin-builddir'
# 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
test -f $srcfile || {
echo "You must run this script in the top-level $package directory"
exit 1
}
toplevel_check $srcfile
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
}
tool_run "aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS"
# FIXME : why does libtoolize keep complaining about aclocal ?
echo "+ not running libtoolize until libtool fix has flown downstream"
#echo "+ running libtoolize ..."
#libtoolize --copy --force || {
# echo
# echo "libtoolize failed"
# exit 1
#}
echo "+ running autoheader ... "
autoheader || {
echo
echo "autoheader failed"
exit 1
}
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
echo "+ running autoconf ... "
autoconf || {
echo
echo "autoconf failed"
exit 1
}
echo "+ running automake ... "
automake -a -c || {
echo
echo "automake failed"
exit 1
}
tool_run "autoconf"
tool_run "automake" "-a -c"
echo
echo "+ running autogen.sh in libs/ext/cothreads..."
@ -198,21 +71,20 @@ popd > /dev/null
echo
test -n "$NOCONFIGURE" && {
echo "skipping configure stage for package $package, as requested."
echo "autogen.sh done."
exit 0
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."

2
common

@ -1 +1 @@
Subproject commit c2d7711457d468d527890f2057883c133b50c3b7
Subproject commit 49b794f8334e88f00ad5adc04570a433dd61ea7b

View file

@ -1,54 +1,18 @@
dnl Note: this file is now the main autoconf file
AC_INIT
AC_CONFIG_SRCDIR([gst/gstobject.h])
AC_CANONICAL_TARGET([])
dnl when going to/from release please set the nano (fourth number) right !
AS_VERSION(gstreamer, GST_VERSION, 0, 3, 2, 1)
AS_LIBTOOL(GST, 0, 0, 0, yes)
AC_CONFIG_SRCDIR([gst/gst.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=gstreamer
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=0
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)
AM_MAINTAINER_MODE
AC_PROG_CC
@ -62,8 +26,6 @@ AC_ISC_POSIX
dnl We disable static building for development, for time savings
dnl *NOTE*: dnl this line before release, so release does static too
dnl AM_DISABLE_STATIC
AC_LIBTOOL_DLOPEN
AM_PROG_LIBTOOL
AC_HEADER_STDC([])

View file

@ -20,8 +20,14 @@ system stabilizes.
* add release notes to cvs -- why?
* take a FRESH cvs checkout
* make distcheck should pass
* test suite should pass
* rpms should build and install
* autotools have latest config.{guess,sub}
This is needed in order to support newer platforms.
On Debian install the autotools-dev package to get these.
@ -39,6 +45,9 @@ registers fine, runs the media tests fine, and uninstalls as well
http://gstreamer.net/dev/cvs.php
add tag to above page
* relink current and cvs in the redhat dir and copy the symlinks from the
current to the new release treee
* update web site release notes: added to cvs
- change the releases/current symbolic link
- text version of release announcement can be made from

View file

@ -159,6 +159,6 @@ libgst_la_CFLAGS = -D_GNU_SOURCE -DGST_CONFIG_DIR=\""$(GST_CONFIG_DIR)"\" \
libcothreads_la_CFLAGS = $(libgst_la_CFLAGS) -O2
libgst_la_LIBADD = $(LIBGST_LIBS) libcothreads.la
libgst_la_LDFLAGS = -version-info $(GST_LIBVERSION) -release $(GST_VERSION)
libgst_la_LDFLAGS = @GST_LT_LDFLAGS@ -version @GST_LIBVERSION@
EXTRA_DIST = ROADMAP

View file

@ -10,27 +10,27 @@ plugin_LTLIBRARIES = \
libgststaticautoplug_la_SOURCES = gststaticautoplug.c
libgststaticautoplug_la_CFLAGS = $(GST_CFLAGS)
libgststaticautoplug_la_LIBADD = $(GST_LIBS)
libgststaticautoplug_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgststaticautoplug_la_LDFLAGS = @GST_LT_LDFLAGS@
libgststaticautoplugrender_la_SOURCES = gststaticautoplugrender.c
libgststaticautoplugrender_la_CFLAGS = $(GST_CFLAGS)
libgststaticautoplugrender_la_LIBADD = $(GST_LIBS)
libgststaticautoplugrender_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgststaticautoplugrender_la_LDFLAGS = @GST_LT_LDFLAGS@
libgstautoplugcache_la_SOURCES = gstautoplugcache.c
libgstautoplugcache_la_CFLAGS = $(GST_CFLAGS)
libgstautoplugcache_la_LIBADD = $(GST_LIBS)
libgstautoplugcache_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgstautoplugcache_la_LDFLAGS = @GST_LT_LDFLAGS@
libgstautoplugger_la_SOURCES = gstautoplugger.c
libgstautoplugger_la_CFLAGS = $(GST_CFLAGS)
libgstautoplugger_la_LIBADD = $(GST_LIBS)
libgstautoplugger_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgstautoplugger_la_LDFLAGS = @GST_LT_LDFLAGS@
libgstspider_la_SOURCES = gstspider.c gstspideridentity.c gstsearchfuncs.c
libgstspider_la_CFLAGS = $(GST_CFLAGS)
libgstspider_la_LIBADD = $(GST_LIBS)
libgstspider_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgstspider_la_LDFLAGS = @GST_LT_LDFLAGS@
noinst_HEADERS = gststaticautoplug.h gststaticautoplugrender.h \
gstspider.h gstspideridentity.h gstsearchfuncs.h

View file

@ -20,7 +20,7 @@ libgstelements_la_SOURCES = \
gstmd5sink.c
libgstelements_la_CFLAGS = $(GST_CFLAGS)
libgstelements_la_LIBADD = $(GST_LIBS)
libgstelements_la_LDFLAGS = @GST_PLUGIN_LDFLAGS@
libgstelements_la_LDFLAGS = @GST_PLUGIN_LDFLAGS@ @GST_LT_LDFLAGS@
noinst_HEADERS = \
gstfakesrc.h \

View file

@ -5,4 +5,4 @@ plugin_LTLIBRARIES = libgstbasicscheduler.la
libgstbasicscheduler_la_SOURCES = gstbasicscheduler.c
libgstbasicscheduler_la_CFLAGS = $(GST_CFLAGS)
libgstbasicscheduler_la_LIBADD = $(GST_LIBS)
libgstbasicscheduler_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgstbasicscheduler_la_LDFLAGS = @GST_LT_LDFLAGS@

View file

@ -5,4 +5,4 @@ plugin_LTLIBRARIES = libgsttypes.la
libgsttypes_la_SOURCES = gsttypes.c
libgsttypes_la_CFLAGS = $(GST_CFLAGS)
libgsttypes_la_LIBADD = $(GST_LIBS)
libgsttypes_la_LDFLAGS = -version-info $(GST_LIBVERSION)
libgsttypes_la_LDFLAGS = @GST_LT_LDFLAGS@

View file

@ -20,7 +20,7 @@ libgstelements_la_SOURCES = \
gstmd5sink.c
libgstelements_la_CFLAGS = $(GST_CFLAGS)
libgstelements_la_LIBADD = $(GST_LIBS)
libgstelements_la_LDFLAGS = @GST_PLUGIN_LDFLAGS@
libgstelements_la_LDFLAGS = @GST_PLUGIN_LDFLAGS@ @GST_LT_LDFLAGS@
noinst_HEADERS = \
gstfakesrc.h \

View file

@ -1,5 +1,5 @@
# FIXME : refcounting threads bytestream cleanup
SUBDIRS = caps plugin # elements
SUBDIRS = caps plugin elements
testprogs = test_gst_init

View file

@ -4,6 +4,7 @@ TESTS = $(testprogs)
check_PROGRAMS = $(testprogs)
EXTRA_DIST = events.h
LDADD = $(GST_LIBS)
CFLAGS = $(GST_CFLAGS)

View file

@ -1,5 +1,5 @@
# FIXME : refcounting threads bytestream cleanup
SUBDIRS = caps plugin # elements
SUBDIRS = caps plugin elements
testprogs = test_gst_init

View file

@ -4,6 +4,7 @@ TESTS = $(testprogs)
check_PROGRAMS = $(testprogs)
EXTRA_DIST = events.h
LDADD = $(GST_LIBS)
CFLAGS = $(GST_CFLAGS)