display: dump gstreamer-vaapi version for debugging purposes.

This commit is contained in:
Gwenole Beauchesne 2013-01-18 14:17:34 +01:00
parent 732320d878
commit 655f400e1c
4 changed files with 91 additions and 0 deletions

View file

@ -114,6 +114,10 @@ dnl Check for tools
AC_PROG_CC
AM_PROG_CC_C_O
AC_ARG_VAR([GIT], [Path to git program, if any])
AC_PATH_PROG([GIT], [git])
AM_CONDITIONAL([HAVE_GIT], [test -n "$GIT"])
dnl Initialize libtool
LT_PREREQ([2.2])
LT_INIT

View file

@ -117,6 +117,7 @@ libgstvaapi_source_priv_h = \
gstvaapiobject_priv.h \
gstvaapisurface_priv.h \
gstvaapiutils.h \
gstvaapiversion.h \
gstvaapiworkarounds.h \
sysdeps.h \
$(NULL)
@ -369,5 +370,41 @@ libgstvaapi_wayland_@GST_MAJORMINOR@_la_LDFLAGS = \
$(GST_VAAPI_LT_LDFLAGS) \
$(NULL)
VERSION_FILE = .VERSION
OLD_VERSION_FILE = $(VERSION_FILE).old
NEW_VERSION_FILE = $(VERSION_FILE).new
PKG_VERSION_FILE = $(VERSION_FILE).pkg
gstvaapiversion.h: gen-version
$(AM_V_GEN) \
OV=`[ -f $(OLD_VERSION_FILE) ] && cat $(OLD_VERSION_FILE) || :`; \
NV=`cat $(NEW_VERSION_FILE)`; \
if [ "$$OV" != "$$NV" -o ! -f gstvaapiversion.h ]; then \
cp -f $(NEW_VERSION_FILE) $(OLD_VERSION_FILE); \
$(SED) -e "s|\@GST_VAAPI_VERSION_ID\@|$${NV}|" \
$(srcdir)/gstvaapiversion.h.in > gstvaapiversion.h; \
fi
gen-version:
@echo $(VERSION) > $(NEW_VERSION_FILE)
if HAVE_GIT
@[ -d $(top_srcdir)/.git ] && \
(cd $(top_srcdir) && $(GIT) describe --tags) > $(NEW_VERSION_FILE) || :
endif
@[ -f $(srcdir)/$(PKG_VERSION_FILE) ] && \
cp -f $(srcdir)/$(PKG_VERSION_FILE) $(NEW_VERSION_FILE) || :
$(PKG_VERSION_FILE): $(NEW_VERSION_FILE)
@cp -f $< $@
BUILT_SOURCES = gstvaapiversion.h
EXTRA_DIST = gstvaapiversion.h.in $(PKG_VERSION_FILE)
CLEANFILES = \
$(OLD_VERSION_FILE) \
$(NEW_VERSION_FILE) \
$(PKG_VERSION_FILE) \
$(NULL)
# Extra clean files so that maintainer-clean removes *everything*
MAINTAINERCLEANFILES = Makefile.in

View file

@ -32,6 +32,7 @@
#include "gstvaapidisplay.h"
#include "gstvaapidisplay_priv.h"
#include "gstvaapiworkarounds.h"
#include "gstvaapiversion.h"
#define DEBUG 1
#include "gstvaapidebug.h"
@ -95,6 +96,20 @@ get_color_balance(GstVaapiDisplay *display, guint prop_id, gfloat *v);
static gboolean
set_color_balance(GstVaapiDisplay *display, guint prop_id, gfloat v);
static void
dump_version(void)
{
static gsize g_once = FALSE;
if (!g_once_init_enter(&g_once))
return;
/* Dump gstreamer-vaapi version for debugging purposes */
GST_INFO("gstreamer-vaapi version %s", GST_VAAPI_VERSION_ID);
g_once_init_leave(&g_once, TRUE);
}
static inline GstVaapiDisplayCache *
get_display_cache(void)
{
@ -885,6 +900,8 @@ gst_vaapi_display_class_init(GstVaapiDisplayClass *klass)
GST_DEBUG_CATEGORY_INIT(gst_debug_vaapi, "vaapi", 0, "VA-API helper");
dump_version();
g_type_class_add_private(klass, sizeof(GstVaapiDisplayPrivate));
object_class->finalize = gst_vaapi_display_finalize;

View file

@ -0,0 +1,33 @@
/*
* gstvaapiversion.h - Versioning
*
* Copyright (C) 2013 Intel Corporation
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public License
* as published by the Free Software Foundation; either version 2.1
* of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free
* Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
* Boston, MA 02110-1301 USA
*/
#ifndef GST_VAAPI_VERSION_H
#define GST_VAAPI_VERSION_H
/**
* GST_VAAPI_VERSION_ID:
*
* The full version identifier of gstreamer-vaapi, in string form
* (suitable for string concatenation).
*/
#define GST_VAAPI_VERSION_ID "@GST_VAAPI_VERSION_ID@"
#endif /* GST_VAAPI_VERSION_H */