auxiliary/vl: add galliumvl_stub.la

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 <christian.koenig@amd.com>
Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
This commit is contained in:
Emil Velikov 2014-11-09 04:44:15 +00:00
parent 2dbaedaf10
commit f093c1c8ec
3 changed files with 155 additions and 0 deletions

View File

@ -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 \

View File

@ -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 \

View File

@ -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};