Blame common/m4/gst-package-release-datetime.m4

Packit 971217
dnl macros to set GST_PACKAGE_RELEASE_DATETIME
Packit 971217
Packit 971217
dnl ===========================================================================
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME
Packit 971217
dnl
Packit 971217
dnl Usage:
Packit 971217
dnl
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME()
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([no]...)
Packit 971217
dnl sets the release datetime to the current date
Packit 971217
dnl (no = this is not a release, but git or prerelease)
Packit 971217
dnl
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([YYYY-MM-DD])
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [YYYY-MM-DD])
Packit 971217
dnl sets the release datetime to the specified date (and time, if given)
Packit 971217
dnl (yes = this is a release, not git or prerelease)
Packit 971217
dnl
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [DOAP-FILE], [RELEASE-VERSION])
Packit 971217
dnl sets the release date to the release date associated with version
Packit 971217
dnl RELEASE-VERSION in the .doap file DOAP-FILE
Packit 971217
dnl (yes = this is a release, not git or prerelease)
Packit 971217
dnl
Packit 971217
dnl We need to treat pre-releases like git because there won't be an entry
Packit 971217
dnl in the .doap file for pre-releases yet, and we don't want to use the
Packit 971217
dnl date of the last release either.
Packit 971217
dnl ===========================================================================
Packit 971217
AC_DEFUN([AG_GST_SET_PACKAGE_RELEASE_DATETIME],
Packit 971217
[
Packit 971217
  dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME()
Packit 971217
  dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([no]...)
Packit 971217
  if test "x$1" = "xno" -o "x$1" = "x"; then
Packit 971217
    GST_PACKAGE_RELEASE_DATETIME=`date -u "+%Y-%m-%dT%H:%MZ"`
Packit 971217
  elif test "x$1" = "xyes"; then
Packit 971217
    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [YYYY-MM-DD])
Packit 971217
    dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [DOAP-FILE], [RELEASE-VERSION])
Packit 971217
changequote(<<, >>)dnl
Packit 971217
    if ( echo $2 | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
Packit 971217
changequote([, ])dnl
Packit 971217
      GST_PACKAGE_RELEASE_DATETIME=$2
Packit 971217
    else
Packit 971217
      dnl we assume the .doap file contains the date as YYYY-MM-DD
Packit 971217
      YYYY_MM_DD=`sh "${srcdir}/common/extract-release-date-from-doap-file" $3 $2`;
Packit 971217
      if test "x$YYYY_MM_DD" != "x"; then
Packit 971217
        GST_PACKAGE_RELEASE_DATETIME=$YYYY_MM_DD
Packit 971217
      else
Packit 971217
        AC_MSG_ERROR([SET_PACKAGE_RELEASE_DATETIME: could not extract
Packit 971217
            release date for release version $3 from $2])
Packit 971217
        GST_PACKAGE_RELEASE_DATETIME=""
Packit 971217
      fi
Packit 971217
    fi
Packit 971217
  dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([YYYY-MM-DD])
Packit 971217
changequote(<<, >>)dnl
Packit 971217
  elif ( echo $1 | grep '^20[1-9][0-9]-[0-1][0-9]-[0-3][0-9]' >/dev/null ) ; then
Packit 971217
changequote([, ])dnl
Packit 971217
    GST_PACKAGE_RELEASE_DATETIME=$1
Packit 971217
  else
Packit 971217
    AC_MSG_WARN([SET_PACKAGE_RELEASE_DATETIME: invalid first argument])
Packit 971217
    GST_PACKAGE_RELEASE_DATETIME=""
Packit 971217
  fi
Packit 971217
Packit 971217
  if test "x$GST_PACKAGE_RELEASE_DATETIME" = "x"; then
Packit 971217
    AC_MSG_WARN([Invalid package release date time: $GST_PACKAGE_RELEASE_DATETIME])
Packit 971217
  else
Packit 971217
    AC_MSG_NOTICE([Setting GST_PACKAGE_RELEASE_DATETIME to $GST_PACKAGE_RELEASE_DATETIME])
Packit 971217
Packit 971217
    AC_DEFINE_UNQUOTED([GST_PACKAGE_RELEASE_DATETIME],
Packit 971217
        ["$GST_PACKAGE_RELEASE_DATETIME"],
Packit 971217
        [GStreamer package release date/time for plugins as YYYY-MM-DD])
Packit 971217
  fi
Packit 971217
])
Packit 971217
Packit 971217
dnl ===========================================================================
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO
Packit 971217
dnl
Packit 971217
dnl Usage:
Packit 971217
dnl
Packit 971217
dnl AG_GST_SET_PACKAGE_RELEASE_DATETIME([NANO-VERSION], [DOAP-FILE], [RELEASE-VERSION])
Packit 971217
dnl if NANO-VERSION is 0, sets the release date to the release date associated
Packit 971217
dnl with version RELEASE-VERSION in the .doap file DOAP-FILE, otherwise sets
Packit 971217
dnl the release date and time to the current date/time.
Packit 971217
dnl
Packit 971217
dnl We need to treat pre-releases like git because there won't be an entry
Packit 971217
dnl in the .doap file for pre-releases yet, and we don't want to use the
Packit 971217
dnl date of the last release either.
Packit 971217
dnl ===========================================================================
Packit 971217
AC_DEFUN([AG_GST_SET_PACKAGE_RELEASE_DATETIME_WITH_NANO],
Packit 971217
[
Packit 971217
  if test "x$1" = "x0"; then
Packit 971217
    AG_GST_SET_PACKAGE_RELEASE_DATETIME([yes], [ $2 ], [ $3 ])
Packit 971217
  else
Packit 971217
    AG_GST_SET_PACKAGE_RELEASE_DATETIME([no])
Packit 971217
  fi
Packit 971217
])