From f093c1c8ec1bce50d9338533ce775b564358fbeb Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Sun, 9 Nov 2014 04:44:15 +0000 Subject: [PATCH] auxiliary/vl: add galliumvl_stub.la MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit 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. v2: Rebase. Cc: Christian König Signed-off-by: Emil Velikov --- 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 19037a271ef..bea9c550810 100644 --- a/src/gallium/auxiliary/Makefile.am +++ b/src/gallium/auxiliary/Makefile.am @@ -46,6 +46,11 @@ util/u_format_table.c: $(srcdir)/util/u_format_table.py $(srcdir)/util/u_format_ $(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) + EXTRA_DIST = \ Android.mk SConscript \ indices/u_indices.c \ diff --git a/src/gallium/auxiliary/Makefile.sources b/src/gallium/auxiliary/Makefile.sources index 6becb8daea2..38c39b60a3a 100644 --- a/src/gallium/auxiliary/Makefile.sources +++ b/src/gallium/auxiliary/Makefile.sources @@ -336,6 +336,9 @@ C_SOURCES := \ vl/vl_zscan.c \ vl/vl_zscan.h +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 00000000000..d690eca5688 --- /dev/null +++ b/src/gallium/auxiliary/vl/vl_stubs.c @@ -0,0 +1,147 @@ +#include + +#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.30.2