Commit 2162a793 authored by Gwenole Beauchesne's avatar Gwenole Beauchesne Committed by Austin Yuan

Explicit API extensions versioning from SDS.

Signed-off-by: default avatarAustin Yuan <shengquan.yuan@intel.com>
parent a2523fec
...@@ -28,6 +28,9 @@ m4_define([libva_micro_version], [4]) ...@@ -28,6 +28,9 @@ m4_define([libva_micro_version], [4])
m4_define([libva_version], m4_define([libva_version],
[libva_major_version.libva_minor_version.libva_micro_version]) [libva_major_version.libva_minor_version.libva_micro_version])
# increase this number for each API change
m4_define([libva_sds_version], [2])
# if the library source code has changed, increment revision # if the library source code has changed, increment revision
m4_define([libva_lt_revision], [0]) m4_define([libva_lt_revision], [0])
# if any interface was added/removed/changed, then inc current, reset revision # if any interface was added/removed/changed, then inc current, reset revision
...@@ -52,11 +55,14 @@ AC_SUBST(LIBVA_MINOR_VERSION) ...@@ -52,11 +55,14 @@ AC_SUBST(LIBVA_MINOR_VERSION)
AC_SUBST(LIBVA_MICRO_VERSION) AC_SUBST(LIBVA_MICRO_VERSION)
AC_SUBST(LIBVA_VERSION) AC_SUBST(LIBVA_VERSION)
LIBVA_SDS_VERSION=libva_sds_version
AC_SUBST(LIBVA_SDS_VERSION)
LIBVA_LT_CURRENT=libva_lt_current LIBVA_LT_CURRENT=libva_lt_current
LIBVA_LT_REV=libva_lt_revision LIBVA_LT_REV=libva_lt_revision
LIBVA_LT_AGE=libva_lt_age LIBVA_LT_AGE=libva_lt_age
LIBVA_LT_VERSION="$LIBVA_LT_CURRENT:$LIBVA_LT_REV:$LIBVA_LT_AGE" LIBVA_LT_VERSION="$LIBVA_LT_CURRENT:$LIBVA_LT_REV:$LIBVA_LT_AGE"
LIBVA_LT_LDFLAGS="-version-info $LIBVA_LT_VERSION -release $LIBVA_VERSION" LIBVA_LT_LDFLAGS="-version-info $LIBVA_LT_VERSION -release $LIBVA_VERSION.$LIBVA_SDS_VERSION"
AC_SUBST(LIBVA_LT_VERSION) AC_SUBST(LIBVA_LT_VERSION)
AC_SUBST(LIBVA_LT_LDFLAGS) AC_SUBST(LIBVA_LT_LDFLAGS)
......
...@@ -40,6 +40,7 @@ ...@@ -40,6 +40,7 @@
#define DRIVER_INIT_FUNC "__vaDriverInit_0_30" #define DRIVER_INIT_FUNC "__vaDriverInit_0_30"
#define DRIVER_INIT_FUNC_SDS "__vaDriverInit_0_30_sds"
#define DRIVER_EXTENSION "_drv_video.so" #define DRIVER_EXTENSION "_drv_video.so"
...@@ -165,6 +166,11 @@ static VAStatus va_openDriver(VADisplay dpy, char *driver_name) ...@@ -165,6 +166,11 @@ static VAStatus va_openDriver(VADisplay dpy, char *driver_name)
VADriverInit init_func; VADriverInit init_func;
init_func = (VADriverInit) dlsym(handle, DRIVER_INIT_FUNC); init_func = (VADriverInit) dlsym(handle, DRIVER_INIT_FUNC);
if (!init_func) if (!init_func)
{
/* Then try SDS extensions (VDPAU and XvBA backends) */
init_func = (VADriverInit) dlsym(handle, DRIVER_INIT_FUNC_SDS);
}
if (!init_func)
{ {
va_errorMessage("%s has no function %s\n", driver_path, DRIVER_INIT_FUNC); va_errorMessage("%s has no function %s\n", driver_path, DRIVER_INIT_FUNC);
dlclose(handle); dlclose(handle);
......
...@@ -46,6 +46,13 @@ ...@@ -46,6 +46,13 @@
*/ */
#define VA_MICRO_VERSION (@LIBVA_MICRO_VERSION@) #define VA_MICRO_VERSION (@LIBVA_MICRO_VERSION@)
/**
* VA_SDS_VERSION:
*
* The version of the SDS API extensions to the VA library
*/
#define VA_SDS_VERSION (@LIBVA_SDS_VERSION@)
/** /**
* VA_VERSION: * VA_VERSION:
* *
...@@ -59,7 +66,7 @@ ...@@ -59,7 +66,7 @@
* The full version of the VA library, in string form (suited for * The full version of the VA library, in string form (suited for
* string concatenation) * string concatenation)
*/ */
#define VA_VERSION_S "@LIBVA_VERSION@" #define VA_VERSION_S "@LIBVA_VERSION@-sds@LIBVA_SDS_VERSION@"
/** /**
* VA_VERSION_HEX: * VA_VERSION_HEX:
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment