[Mesa-dev] [PATCH 3/5] auxiliary/vl: add galliumvl_stub.la
Emil Velikov
emil.l.velikov at gmail.com
Sat Nov 8 20:44:15 PST 2014
Will be used by the non-VL targets, to stub out the functions called
by the drivers. The entry point to those are within the VL
state-trackers, yet the compiler cannot determine that at link time.
Thus we'll need to stub them out to prevent unresolved symbols in the
dri, egl, gbm and pipe-loader targets.
Cc: Christian König <christian.koenig at amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
---
src/gallium/auxiliary/Makefile.am | 5 ++
src/gallium/auxiliary/Makefile.sources | 3 +
src/gallium/auxiliary/vl/vl_stubs.c | 147 +++++++++++++++++++++++++++++++++
3 files changed, 155 insertions(+)
create mode 100644 src/gallium/auxiliary/vl/vl_stubs.c
diff --git a/src/gallium/auxiliary/Makefile.am b/src/gallium/auxiliary/Makefile.am
index 4d8ba89..1e268b2 100644
--- a/src/gallium/auxiliary/Makefile.am
+++ b/src/gallium/auxiliary/Makefile.am
@@ -46,3 +46,8 @@ indices/u_unfilled_gen.c: $(srcdir)/indices/u_unfilled_gen.py
util/u_format_table.c: $(srcdir)/util/u_format_table.py $(srcdir)/util/u_format_pack.py $(srcdir)/util/u_format_parse.py $(srcdir)/util/u_format.csv
$(AM_V_at)$(MKDIR_P) util
$(AM_V_GEN) $(PYTHON2) $(srcdir)/util/u_format_table.py $(srcdir)/util/u_format.csv > $@
+
+
+noinst_LTLIBRARIES += libgalliumvl_stub.la
+libgalliumvl_stub_la_SOURCES = \
+ $(VL_STUB_SOURCES)
diff --git a/src/gallium/auxiliary/Makefile.sources b/src/gallium/auxiliary/Makefile.sources
index f6621ef..9625ee5 100644
--- a/src/gallium/auxiliary/Makefile.sources
+++ b/src/gallium/auxiliary/Makefile.sources
@@ -159,6 +159,9 @@ C_SOURCES := \
vl/vl_video_buffer.c \
vl/vl_deint_filter.c
+VL_STUB_SOURCES := \
+ vl/vl_stubs.c
+
GENERATED_SOURCES := \
indices/u_indices_gen.c \
indices/u_unfilled_gen.c \
diff --git a/src/gallium/auxiliary/vl/vl_stubs.c b/src/gallium/auxiliary/vl/vl_stubs.c
new file mode 100644
index 0000000..d690eca
--- /dev/null
+++ b/src/gallium/auxiliary/vl/vl_stubs.c
@@ -0,0 +1,147 @@
+#include <assert.h>
+
+#include "vl_decoder.h"
+#include "vl_mpeg12_bitstream.h"
+#include "vl_mpeg12_decoder.h"
+#include "vl_video_buffer.h"
+#include "vl_zscan.h"
+
+
+/*
+ * vl_decoder stubs
+ */
+bool
+vl_profile_supported(struct pipe_screen *screen,
+ enum pipe_video_profile profile,
+ enum pipe_video_entrypoint entrypoint)
+{
+ assert(0);
+ return false;
+}
+
+int
+vl_level_supported(struct pipe_screen *screen,
+ enum pipe_video_profile profile)
+{
+ assert(0);
+ return 0;
+}
+
+struct pipe_video_codec *
+vl_create_decoder(struct pipe_context *pipe,
+ const struct pipe_video_codec *templat)
+{
+ assert(0);
+ return NULL;
+}
+
+
+/*
+ * vl_video_buffer stubs
+ */
+const enum pipe_format *
+vl_video_buffer_formats(struct pipe_screen *screen, enum pipe_format format)
+{
+ assert(0);
+ return NULL;
+}
+
+boolean
+vl_video_buffer_is_format_supported(struct pipe_screen *screen,
+ enum pipe_format format,
+ enum pipe_video_profile profile,
+ enum pipe_video_entrypoint entrypoint)
+{
+ assert(0);
+ return false;
+}
+
+unsigned
+vl_video_buffer_max_size(struct pipe_screen *screen)
+{
+ assert(0);
+ return 0;
+}
+
+void
+vl_video_buffer_set_associated_data(struct pipe_video_buffer *vbuf,
+ struct pipe_video_codec *vcodec,
+ void *associated_data,
+ void (*destroy_associated_data)(void *))
+{
+ assert(0);
+}
+
+void *
+vl_video_buffer_get_associated_data(struct pipe_video_buffer *vbuf,
+ struct pipe_video_codec *vcodec)
+{
+ assert(0);
+ return NULL;
+}
+
+void
+vl_video_buffer_template(struct pipe_resource *templ,
+ const struct pipe_video_buffer *tmpl,
+ enum pipe_format resource_format,
+ unsigned depth, unsigned array_size,
+ unsigned usage, unsigned plane)
+{
+ assert(0);
+}
+
+struct pipe_video_buffer *
+vl_video_buffer_create(struct pipe_context *pipe,
+ const struct pipe_video_buffer *tmpl)
+{
+ assert(0);
+ return NULL;
+}
+
+struct pipe_video_buffer *
+vl_video_buffer_create_ex2(struct pipe_context *pipe,
+ const struct pipe_video_buffer *tmpl,
+ struct pipe_resource *resources[VL_NUM_COMPONENTS])
+{
+ assert(0);
+ return NULL;
+}
+
+
+/*
+ * vl_mpeg12_bitstream stubs
+ */
+void
+vl_mpg12_bs_init(struct vl_mpg12_bs *bs, struct pipe_video_codec *decoder)
+{
+ assert(0);
+}
+
+void
+vl_mpg12_bs_decode(struct vl_mpg12_bs *bs,
+ struct pipe_video_buffer *target,
+ struct pipe_mpeg12_picture_desc *picture,
+ unsigned num_buffers,
+ const void * const *buffers,
+ const unsigned *sizes)
+{
+ assert(0);
+}
+
+
+/*
+ * vl_mpeg12_decoder stubs
+ */
+struct pipe_video_codec *
+vl_create_mpeg12_decoder(struct pipe_context *pipe,
+ const struct pipe_video_codec *templat)
+{
+ assert(0);
+ return NULL;
+}
+
+/*
+ * vl_zscan
+ */
+const int vl_zscan_normal[] = {0};
+const int vl_zscan_alternate[] = {0};
--
2.1.3
More information about the mesa-dev
mailing list