From ca7b6551b5675e702b1db007c1fe6eb57a086662 Mon Sep 17 00:00:00 2001 From: Edward Hervey Date: Tue, 7 Dec 2010 18:14:22 +0100 Subject: [PATCH] autogen/configure: Bring more in sync to standard gst module behaviour --- autogen.sh | 76 +++++++++++++++++++++++++++++++++--------------------------- configure.ac | 33 +++++++++++++++++++++----- 2 files changed, 69 insertions(+), 40 deletions(-) diff --git a/autogen.sh b/autogen.sh index 737032a..edb1dd1 100755 --- a/autogen.sh +++ b/autogen.sh @@ -5,16 +5,13 @@ DIE=0 package=gst-rtsp srcfile=gst/rtsp-server/rtsp-server.c -# a quick cvs co to ease the transition -if test ! -d common; +# Make sure we have common +if test ! -f common/gst-autogen.sh; then - echo "+ getting common/ from cvs" - if test -e CVS/Tag - then - TAG="-r `tail -c +2 CVS/Tag`" - fi - cvs co $TAG common + echo "+ Setting up common submodule" + git submodule init fi +git submodule update # source helper functions if test ! -f common/gst-autogen.sh; @@ -25,18 +22,25 @@ then fi . common/gst-autogen.sh +# install pre-commit hook for doing clean commits +if test ! \( -x .git/hooks/pre-commit -a -L .git/hooks/pre-commit \); +then + rm -f .git/hooks/pre-commit + ln -s ../../common/hooks/pre-commit.hook .git/hooks/pre-commit +fi + CONFIGURE_DEF_OPT='--enable-maintainer-mode --enable-gtk-doc' autogen_options $@ -echo -n "+ check for build tools" +printf "+ check for build tools" if test ! -z "$NOCHECK"; then echo ": skipped version checks"; else echo; fi -version_check "autoconf" "$AUTOCONF autoconf autoconf259 autoconf257 autoconf-2.54 autoconf-2.53 autoconf253 autoconf-2.52 autoconf252" \ - "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 52 || DIE=1 -version_check "automake" "$AUTOMAKE automake automake-1.9 automake19 automake-1.8 automake18 automake-1.7 automake17 automake-1.6 automake16" \ - "ftp://ftp.gnu.org/pub/gnu/automake/" 1 7 || DIE=1 +version_check "autoconf" "$AUTOCONF autoconf autoconf270 autoconf269 autoconf268 autoconf267 autoconf266 autoconf265 autoconf264 autoconf263 autoconf262 autoconf261 autoconf260" \ + "ftp://ftp.gnu.org/pub/gnu/autoconf/" 2 60 || DIE=1 +version_check "automake" "$AUTOMAKE automake automake-1.11 automake-1.10" \ + "ftp://ftp.gnu.org/pub/gnu/automake/" 1 10 || DIE=1 version_check "autopoint" "autopoint" \ - "ftp://ftp.gnu.org/pub/gnu/gettext/" 0 11 5 || DIE=1 + "ftp://ftp.gnu.org/pub/gnu/gettext/" 0 17 || DIE=1 version_check "libtoolize" "libtoolize libtoolize15 glibtoolize" \ "ftp://ftp.gnu.org/pub/gnu/libtool/" 1 5 0 || DIE=1 version_check "pkg-config" "" \ @@ -61,43 +65,47 @@ fi toplevel_check $srcfile -tool_run "$aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS" +# autopoint +# older autopoint (< 0.12) has a tendency to complain about mkinstalldirs +if test -x mkinstalldirs; then rm mkinstalldirs; fi +# first remove patch if necessary, then run autopoint, then reapply +if test -f po/Makefile.in.in; +then + patch -p0 -R --forward < common/gettext.patch +fi +tool_run "$autopoint" "--force" "patch -p0 < common/gettext.patch" +patch -p0 < common/gettext.patch + +# aclocal +# if test -f acinclude.m4; then rm acinclude.m4; fi + tool_run "$libtoolize" "--copy --force" +tool_run "$aclocal" "-I m4 -I common/m4 $ACLOCAL_FLAGS" 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 - for a in `cat enable`; do - CONFIGURE_FILE_OPT="--enable-$a" - done -fi - -# if disable exists, add an -disable option for each of the lines in that file -if test -f disable; then - for a in `cat disable`; do - CONFIGURE_FILE_OPT="$CONFIGURE_FILE_OPT --disable-$a" - done -fi +debug "automake: $automake" +tool_run "$automake" "--add-missing --copy" 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 ... " test ! -z "$CONFIGURE_DEF_OPT" && echo " ./configure default flags: $CONFIGURE_DEF_OPT" test ! -z "$CONFIGURE_EXT_OPT" && echo " ./configure external flags: $CONFIGURE_EXT_OPT" -test ! -z "$CONFIGURE_FILE_OPT" && echo " ./configure enable/disable flags: $CONFIGURE_FILE_OPT" echo -./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT $CONFIGURE_FILE_OPT || { +echo ./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT +./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT || { echo " configure failed" exit 1 } + +echo "Now type 'make' to compile $package." + diff --git a/configure.ac b/configure.ac index fd09ff0..27bfdaa 100644 --- a/configure.ac +++ b/configure.ac @@ -3,8 +3,9 @@ dnl initialize autoconf dnl when going to/from release please set the nano (fourth number) right ! dnl releases only do Wall, cvs and prerelease does Werror too AC_INIT(Gst-RTSP, 0.10.7.1, - http://gstreamer.net/, + http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer, gst-rtsp) +AG_GST_INIT dnl initialize automake AM_INIT_AUTOMAKE([-Wno-portability 1.10]) @@ -13,7 +14,7 @@ dnl define PACKAGE_VERSION_* variables AS_VERSION dnl check if this is a release version -AS_NANO(GST_CVS="no", GST_CVS="yes") +AS_NANO(GST_GIT="no", GST_GIT="yes") dnl can autoconf find the source ? AC_CONFIG_SRCDIR([gst/rtsp-server/rtsp-server.c]) @@ -52,6 +53,12 @@ AS_AUTOTOOLS_ALTERNATE dnl Add parameters for aclocal AC_SUBST(ACLOCAL_AMFLAGS, "-I m4 -I common/m4") +dnl set up gettext +dnl the version check needs to stay here because autopoint greps for it +AM_GNU_GETTEXT_VERSION([0.17]) +AM_GNU_GETTEXT([external]) +AG_GST_GETTEXT([gstreamer-$GST_MAJORMINOR]) + dnl *** check for arguments to configure *** AG_GST_ARG_DEBUG @@ -71,8 +78,22 @@ AC_PROG_CC AM_PROG_CC_C_O dnl check for python -AM_PATH_PYTHON(2.3) -AM_CHECK_PYTHON_HEADERS([HAVE_PYTHON_HEADERS="yes"], [HAVE_PYTHON_HEADERS="no"]) +AM_PATH_PYTHON +AC_MSG_CHECKING(for python >= 2.3) +prog=" +import sys, string +minver = (2,3,0,'final',0) +if sys.version_info < minver: + sys.exit(1) +sys.exit(0)" + +if $PYTHON -c "$prog" 1>&AC_FD_CC 2>&AC_FD_CC +then + AC_MSG_RESULT(okay) +else + AC_MSG_ERROR(too old) +fi +AM_CHECK_PYTHON_HEADERS(,[AC_MSG_ERROR(could not find Python headers)]) AC_PATH_PROG(VALGRIND_PATH, valgrind, no) AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno") @@ -190,10 +211,10 @@ dnl set location of plugin directory AG_GST_SET_PLUGINDIR dnl define an ERROR_CFLAGS Makefile variable -AG_GST_SET_ERROR_CFLAGS($GST_CVS) +AG_GST_SET_ERROR_CFLAGS($GST_GIT) dnl define correct level for debugging messages -AG_GST_SET_LEVEL_DEFAULT($GST_CVS) +AG_GST_SET_LEVEL_DEFAULT($GST_GIT) dnl used in examples AG_GST_DEFAULT_ELEMENTS -- 2.7.4