summaryrefslogtreecommitdiffstats
path: root/src/gallium/targets/va
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2014-07-02 16:35:28 -0400
committerLeo Liu <leo.liu@amd.com>2014-10-01 13:21:36 -0400
commit3867933ecbc34ed1f68d735282580ca1e4eedea1 (patch)
tree369b448f538296e2fa3193af921b0666ae75912d /src/gallium/targets/va
parent0eb8f8998114855d8d200a70c357d482e8f444fc (diff)
downloadexternal_mesa3d-3867933ecbc34ed1f68d735282580ca1e4eedea1.zip
external_mesa3d-3867933ecbc34ed1f68d735282580ca1e4eedea1.tar.gz
external_mesa3d-3867933ecbc34ed1f68d735282580ca1e4eedea1.tar.bz2
st/va: skeleton VAAPI state tracker
This patch adds a skeleton VA-API state tracker, which is filled with live in the subsequent patches. v2: fixes in configure.ac and va state_tracker Makefile.am v3: do not link against libva. detect libva version, and correctly set driver entrypoint name. rebase(cleanup) targets/va/Makefile.am v4: cleanup va version auto detection add back targets/va/va.sym Signed-off-by: Christian König <christian.koenig@amd.com> Signed-off-by: Leo Liu <leo.liu@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src/gallium/targets/va')
-rw-r--r--src/gallium/targets/va/Makefile.am63
-rw-r--r--src/gallium/targets/va/target.c1
-rw-r--r--src/gallium/targets/va/va.sym6
3 files changed, 70 insertions, 0 deletions
diff --git a/src/gallium/targets/va/Makefile.am b/src/gallium/targets/va/Makefile.am
new file mode 100644
index 0000000..8112f78
--- /dev/null
+++ b/src/gallium/targets/va/Makefile.am
@@ -0,0 +1,63 @@
+include $(top_srcdir)/src/gallium/Automake.inc
+
+AM_CFLAGS = \
+ $(GALLIUM_TARGET_CFLAGS)
+
+vadir = $(VA_LIB_INSTALL_DIR)
+va_LTLIBRARIES = gallium_drv_video.la
+
+nodist_EXTRA_gallium_drv_video_la_SOURCES = dummy.cpp
+gallium_drv_video_la_SOURCES = \
+ $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c
+
+gallium_drv_video_la_LDFLAGS = \
+ -shared \
+ -module \
+ -no-undefined \
+ -avoid-version \
+ $(GC_SECTIONS) \
+ $(LD_NO_UNDEFINED)
+
+if HAVE_LD_VERSION_SCRIPT
+gallium_drv_video_la_LDFLAGS += \
+ -Wl,--version-script=$(top_srcdir)/src/gallium/targets/va/va.sym
+endif # HAVE_LD_VERSION_SCRIPT
+
+gallium_drv_video_la_LIBADD = \
+ $(top_builddir)/src/gallium/state_trackers/va/libvatracker.la \
+ $(top_builddir)/src/gallium/auxiliary/libgallium.la \
+ $(top_builddir)/src/util/libmesautil.la \
+ $(VA_LIBS) \
+ $(GALLIUM_COMMON_LIB_DEPS)
+
+if HAVE_GALLIUM_STATIC_TARGETS
+
+TARGET_DRIVERS =
+TARGET_CPPFLAGS =
+TARGET_LIB_DEPS = $(top_builddir)/src/loader/libloader.la
+
+include $(top_srcdir)/src/gallium/drivers/r600/Automake.inc
+include $(top_srcdir)/src/gallium/drivers/radeonsi/Automake.inc
+
+gallium_drv_video_la_SOURCES += target.c
+gallium_drv_video_la_CPPFLAGS = $(TARGET_CPPFLAGS) -DGALLIUM_STATIC_TARGETS=1
+gallium_drv_video_la_LIBADD += $(TARGET_LIB_DEPS) \
+ $(TARGET_RADEON_WINSYS) $(TARGET_RADEON_COMMON)
+
+else # HAVE_GALLIUM_STATIC_TARGETS
+
+gallium_drv_video_la_CPPFLAGS = \
+ $(GALLIUM_PIPE_LOADER_DEFINES) \
+ -DPIPE_SEARCH_DIR=\"$(libdir)/gallium-pipe\"
+
+gallium_drv_video_la_LIBADD += \
+ $(top_builddir)/src/gallium/auxiliary/pipe-loader/libpipe_loader.la \
+ $(GALLIUM_PIPE_LOADER_WINSYS_LIBS) \
+ $(GALLIUM_PIPE_LOADER_LIBS)
+
+endif # HAVE_GALLIUM_STATIC_TARGETS
+
+if HAVE_MESA_LLVM
+gallium_drv_video_la_LIBADD += $(LLVM_LIBS)
+gallium_drv_video_la_LDFLAGS += $(LLVM_LDFLAGS)
+endif
diff --git a/src/gallium/targets/va/target.c b/src/gallium/targets/va/target.c
new file mode 100644
index 0000000..fde4a4a
--- /dev/null
+++ b/src/gallium/targets/va/target.c
@@ -0,0 +1 @@
+#include "target-helpers/inline_drm_helper.h"
diff --git a/src/gallium/targets/va/va.sym b/src/gallium/targets/va/va.sym
new file mode 100644
index 0000000..c925b2e
--- /dev/null
+++ b/src/gallium/targets/va/va.sym
@@ -0,0 +1,6 @@
+{
+ global:
+ __vaDriverInit_*_*;
+ local:
+ *;
+};