Similar to previous two commits. TODO: - Correctly set the role and profile names.
Christian, * Recommendation about the following names ? - OMX_VID_{ENC,DEC}_BASE_NAME - OMX_VID_{ENC,DEC}_{MPEG2,H264}_NAME * (Related) We do we strcpy string literals at vid_{enc,dec}_LoaderComponent. IMHO we're safe to drop it and use direct assignment for {name,role}_specific. * Do we want a single libomx_gallium or per driver ones libomx_nouveau, libomx_r600... Leaning towards the former. Cc: Christian König <christian.koe...@amd.com> Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> --- configure.ac | 5 +-- src/gallium/Automake.inc | 17 -------- src/gallium/auxiliary/vl/vl_winsys_dri.c | 8 ---- src/gallium/targets/Makefile.am | 16 ++------ src/gallium/targets/omx-nouveau/Makefile.am | 45 --------------------- src/gallium/targets/omx-nouveau/target.c | 18 --------- src/gallium/targets/omx.sym | 6 --- src/gallium/targets/omx/Makefile.am | 56 +++++++++++++++++++++++++++ src/gallium/targets/omx/omx.sym | 6 +++ src/gallium/targets/omx/target.c | 1 + src/gallium/targets/r600/omx/Makefile.am | 46 ---------------------- src/gallium/targets/r600/omx/drm_target.c | 1 - src/gallium/targets/radeonsi/omx/Makefile.am | 46 ---------------------- src/gallium/targets/radeonsi/omx/drm_target.c | 1 - 14 files changed, 69 insertions(+), 203 deletions(-) delete mode 100644 src/gallium/targets/omx-nouveau/Makefile.am delete mode 100644 src/gallium/targets/omx-nouveau/target.c delete mode 100644 src/gallium/targets/omx.sym create mode 100644 src/gallium/targets/omx/Makefile.am create mode 100644 src/gallium/targets/omx/omx.sym create mode 100644 src/gallium/targets/omx/target.c delete mode 100644 src/gallium/targets/r600/omx/Makefile.am delete mode 120000 src/gallium/targets/r600/omx/drm_target.c delete mode 100644 src/gallium/targets/radeonsi/omx/Makefile.am delete mode 120000 src/gallium/targets/radeonsi/omx/drm_target.c diff --git a/configure.ac b/configure.ac index 471c776..ec9fcdb8 100644 --- a/configure.ac +++ b/configure.ac @@ -1355,6 +1355,7 @@ AM_CONDITIONAL(HAVE_ST_VDPAU, test "x$enable_vdpau" = xyes) if test "x$enable_omx" = xyes; then PKG_CHECK_MODULES([OMX], [libomxil-bellagio >= $LIBOMXIL_BELLAGIO_REQUIRED x11-xcb xcb-dri2 >= $XCBDRI2_REQUIRED]) GALLIUM_STATE_TRACKERS_DIRS="$GALLIUM_STATE_TRACKERS_DIRS omx" + enable_gallium_loader=yes fi AM_CONDITIONAL(HAVE_ST_OMX, test "x$enable_omx" = xyes) @@ -2140,16 +2141,14 @@ AC_CONFIG_FILES([Makefile src/gallium/targets/dri-vmwgfx/Makefile src/gallium/targets/egl-static/Makefile src/gallium/targets/gbm/Makefile + src/gallium/targets/omx/Makefile src/gallium/targets/opencl/Makefile - src/gallium/targets/omx-nouveau/Makefile src/gallium/targets/osmesa/Makefile src/gallium/targets/osmesa/osmesa.pc src/gallium/targets/pipe-loader/Makefile src/gallium/targets/radeonsi/dri/Makefile - src/gallium/targets/radeonsi/omx/Makefile src/gallium/targets/r300/dri/Makefile src/gallium/targets/r600/dri/Makefile - src/gallium/targets/r600/omx/Makefile src/gallium/targets/libgl-xlib/Makefile src/gallium/targets/vdpau/Makefile src/gallium/targets/xa/Makefile diff --git a/src/gallium/Automake.inc b/src/gallium/Automake.inc index a9e2554..786495e 100644 --- a/src/gallium/Automake.inc +++ b/src/gallium/Automake.inc @@ -60,15 +60,6 @@ GALLIUM_DRI_LINKER_FLAGS = \ -Wl,--version-script=$(top_srcdir)/src/gallium/targets/dri.sym \ $(GC_SECTIONS) -GALLIUM_OMX_LINKER_FLAGS = \ - -shared \ - -module \ - -no-undefined \ - -avoid-version \ - -Wl,--version-script=$(top_srcdir)/src/gallium/targets/omx.sym \ - $(GC_SECTIONS) \ - $(LD_NO_UNDEFINED) - GALLIUM_COMMON_LIB_DEPS = \ -lm \ $(CLOCK_LIB) \ @@ -83,12 +74,6 @@ GALLIUM_DRI_LIB_DEPS = \ $(EXPAT_LIBS) \ $(GALLIUM_COMMON_LIB_DEPS) -GALLIUM_OMX_LIB_DEPS = \ - $(top_builddir)/src/gallium/auxiliary/libgallium.la \ - $(top_builddir)/src/gallium/state_trackers/omx/libomxtracker.la \ - $(OMX_LIBS) \ - $(GALLIUM_COMMON_LIB_DEPS) - GALLIUM_WINSYS_CFLAGS = \ -I$(top_srcdir)/include \ -I$(top_srcdir)/src/gallium/include \ @@ -203,10 +188,8 @@ endif if HAVE_MESA_LLVM GALLIUM_DRI_LINKER_FLAGS += $(LLVM_LDFLAGS) -GALLIUM_OMX_LINKER_FLAGS += $(LLVM_LDFLAGS) GALLIUM_DRI_LIB_DEPS += $(LLVM_LIBS) -GALLIUM_OMX_LIB_DEPS += $(LLVM_LIBS) endif diff --git a/src/gallium/auxiliary/vl/vl_winsys_dri.c b/src/gallium/auxiliary/vl/vl_winsys_dri.c index 6c60756..a5f9fd2 100644 --- a/src/gallium/auxiliary/vl/vl_winsys_dri.c +++ b/src/gallium/auxiliary/vl/vl_winsys_dri.c @@ -376,16 +376,12 @@ vl_screen_create(Display *display, int screen) if (authenticate == NULL || !authenticate->authenticated) goto free_authenticate; -#if SPLIT_TARGETS - scrn->base.pscreen = driver_descriptor.create_screen(fd); -#else #if GALLIUM_STATIC_TARGETS scrn->base.pscreen = dd_create_screen(fd); #else if (pipe_loader_drm_probe_fd(&scrn->base.dev, fd, true)) scrn->base.pscreen = pipe_loader_create_screen(scrn->base.dev, PIPE_SEARCH_DIR); #endif -#endif if (!scrn->base.pscreen) goto release_pipe; @@ -402,12 +398,10 @@ vl_screen_create(Display *display, int screen) return &scrn->base; release_pipe: -#if !SPLIT_TARGETS #if !GALLIUM_STATIC_TARGETS if (scrn->base.dev) pipe_loader_release(&scrn->base.dev, 1); #endif -#endif free_authenticate: free(authenticate); free_connect: @@ -435,10 +429,8 @@ void vl_screen_destroy(struct vl_screen *vscreen) vl_dri2_destroy_drawable(scrn); scrn->base.pscreen->destroy(scrn->base.pscreen); -#if !SPLIT_TARGETS #if !GALLIUM_STATIC_TARGETS pipe_loader_release(&scrn->base.dev, 1); #endif -#endif FREE(scrn); } diff --git a/src/gallium/targets/Makefile.am b/src/gallium/targets/Makefile.am index b4d6171..0c779f8 100644 --- a/src/gallium/targets/Makefile.am +++ b/src/gallium/targets/Makefile.am @@ -34,6 +34,10 @@ if HAVE_GALLIUM_GBM SUBDIRS += gbm endif +if HAVE_ST_OMX +SUBDIRS += omx +endif + if HAVE_ST_VDPAU SUBDIRS += vdpau endif @@ -84,30 +88,18 @@ if HAVE_GALLIUM_R600 if HAVE_DRI SUBDIRS += r600/dri endif - -if HAVE_ST_OMX -SUBDIRS += r600/omx -endif endif if HAVE_GALLIUM_RADEONSI if HAVE_DRI SUBDIRS += radeonsi/dri endif - -if HAVE_ST_OMX -SUBDIRS += radeonsi/omx -endif endif if HAVE_GALLIUM_NOUVEAU if HAVE_DRI SUBDIRS += dri-nouveau endif - -if HAVE_ST_OMX -SUBDIRS += omx-nouveau -endif endif if HAVE_GALLIUM_SOFTPIPE diff --git a/src/gallium/targets/omx-nouveau/Makefile.am b/src/gallium/targets/omx-nouveau/Makefile.am deleted file mode 100644 index 3b2a1a5..0000000 --- a/src/gallium/targets/omx-nouveau/Makefile.am +++ /dev/null @@ -1,45 +0,0 @@ -# Copyright © 2012 Intel Corporation -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice (including the next -# paragraph) shall be included in all copies or substantial portions of the -# Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -# DEALINGS IN THE SOFTWARE. - -include $(top_srcdir)/src/gallium/Automake.inc - -AM_CPPFLAGS = \ - -DSPLIT_TARGETS=1 -AM_CFLAGS = \ - $(GALLIUM_VIDEO_CFLAGS) - -omxdir = $(OMX_LIB_INSTALL_DIR) -omx_LTLIBRARIES = libomx_nouveau.la - -nodist_EXTRA_libomx_nouveau_la_SOURCES = dummy.cpp -libomx_nouveau_la_SOURCES = \ - target.c \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - -libomx_nouveau_la_LDFLAGS = $(GALLIUM_OMX_LINKER_FLAGS) - -libomx_nouveau_la_LIBADD = \ - $(top_builddir)/src/gallium/winsys/nouveau/drm/libnouveaudrm.la \ - $(top_builddir)/src/gallium/drivers/nouveau/libnouveau.la \ - $(GALLIUM_OMX_LIB_DEPS) \ - $(LIBDRM_LIBS) \ - $(NOUVEAU_LIBS) diff --git a/src/gallium/targets/omx-nouveau/target.c b/src/gallium/targets/omx-nouveau/target.c deleted file mode 100644 index d580b10..0000000 --- a/src/gallium/targets/omx-nouveau/target.c +++ /dev/null @@ -1,18 +0,0 @@ -#include "state_tracker/drm_driver.h" -#include "target-helpers/inline_debug_helper.h" -#include "nouveau/drm/nouveau_drm_public.h" - -static struct pipe_screen *create_screen(int fd) -{ - struct pipe_screen *screen; - - screen = nouveau_drm_screen_create(fd); - if (!screen) - return NULL; - - screen = debug_screen_wrap(screen); - - return screen; -} - -DRM_DRIVER_DESCRIPTOR("nouveau", "nouveau", create_screen, NULL) diff --git a/src/gallium/targets/omx.sym b/src/gallium/targets/omx.sym deleted file mode 100644 index af22aed..0000000 --- a/src/gallium/targets/omx.sym +++ /dev/null @@ -1,6 +0,0 @@ -{ - global: - omx_component_library_Setup; - local: - *; -}; diff --git a/src/gallium/targets/omx/Makefile.am b/src/gallium/targets/omx/Makefile.am new file mode 100644 index 0000000..0eddd26 --- /dev/null +++ b/src/gallium/targets/omx/Makefile.am @@ -0,0 +1,56 @@ +include $(top_srcdir)/src/gallium/Automake.inc + +AM_CFLAGS = \ + $(GALLIUM_VIDEO_CFLAGS) + +omxdir = $(OMX_LIB_INSTALL_DIR) +omx_LTLIBRARIES = libomx_gallium.la + +nodist_EXTRA_libomx_gallium_la_SOURCES = dummy.cpp +libomx_gallium_la_SOURCES = \ + $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c + +libomx_gallium_la_LDFLAGS = \ + -shared \ + -module \ + -no-undefined \ + -avoid-version \ + -Wl,--version-script=$(top_srcdir)/src/gallium/targets/omx/omx.sym \ + $(GC_SECTIONS) \ + $(LD_NO_UNDEFINED) + +libomx_gallium_la_LIBADD = \ + $(top_builddir)/src/gallium/state_trackers/omx/libomxtracker.la \ + $(top_builddir)/src/gallium/auxiliary/libgallium.la \ + $(OMX_LIBS) \ + $(GALLIUM_COMMON_LIB_DEPS) + +if HAVE_GALLIUM_STATIC_TARGETS + +libomx_gallium_la_SOURCES += target.c +libomx_gallium_la_CPPFLAGS = $(STATIC_TARGET_CPPFLAGS) +libomx_gallium_la_LIBADD += $(STATIC_TARGET_LIB_DEPS) + +if HAVE_GALLIUM_R300 +libomx_gallium_la_LIBADD += \ + $(top_builddir)/src/gallium/drivers/r300/libr300-helper.la +endif + +else # HAVE_GALLIUM_STATIC_TARGETS + +libomx_gallium_la_CPPFLAGS = \ + $(GALLIUM_PIPE_LOADER_DEFINES) \ + -DPIPE_SEARCH_DIR=\"$(libdir)/gallium-pipe\" + +# XXX: Use the pipe-loader-client over pipe-loader ? +libomx_gallium_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 +libomx_gallium_la_LIBADD += $(LLVM_LIBS) +libomx_gallium_la_LDFLAGS += $(LLVM_LDFLAGS) +endif diff --git a/src/gallium/targets/omx/omx.sym b/src/gallium/targets/omx/omx.sym new file mode 100644 index 0000000..af22aed --- /dev/null +++ b/src/gallium/targets/omx/omx.sym @@ -0,0 +1,6 @@ +{ + global: + omx_component_library_Setup; + local: + *; +}; diff --git a/src/gallium/targets/omx/target.c b/src/gallium/targets/omx/target.c new file mode 100644 index 0000000..fde4a4a --- /dev/null +++ b/src/gallium/targets/omx/target.c @@ -0,0 +1 @@ +#include "target-helpers/inline_drm_helper.h" diff --git a/src/gallium/targets/r600/omx/Makefile.am b/src/gallium/targets/r600/omx/Makefile.am deleted file mode 100644 index 8d011cc..0000000 --- a/src/gallium/targets/r600/omx/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright © 2012 Intel Corporation -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice (including the next -# paragraph) shall be included in all copies or substantial portions of the -# Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -# DEALINGS IN THE SOFTWARE. - -include $(top_srcdir)/src/gallium/Automake.inc - -AM_CPPFLAGS = \ - -DSPLIT_TARGETS=1 -AM_CFLAGS = \ - $(GALLIUM_VIDEO_CFLAGS) - -omxdir = $(OMX_LIB_INSTALL_DIR) -omx_LTLIBRARIES = libomx_r600.la - -nodist_EXTRA_libomx_r600_la_SOURCES = dummy.cpp -libomx_r600_la_SOURCES = \ - drm_target.c \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - -libomx_r600_la_LDFLAGS = $(GALLIUM_OMX_LINKER_FLAGS) - -libomx_r600_la_LIBADD = \ - $(top_builddir)/src/gallium/drivers/radeon/libradeon.la \ - $(top_builddir)/src/gallium/drivers/r600/libr600.la \ - $(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \ - $(GALLIUM_OMX_LIB_DEPS) \ - $(LIBDRM_LIBS) \ - $(RADEON_LIBS) diff --git a/src/gallium/targets/r600/omx/drm_target.c b/src/gallium/targets/r600/omx/drm_target.c deleted file mode 120000 index 6955421..0000000 --- a/src/gallium/targets/r600/omx/drm_target.c +++ /dev/null @@ -1 +0,0 @@ -../common/drm_target.c \ No newline at end of file diff --git a/src/gallium/targets/radeonsi/omx/Makefile.am b/src/gallium/targets/radeonsi/omx/Makefile.am deleted file mode 100644 index 3c8cf11..0000000 --- a/src/gallium/targets/radeonsi/omx/Makefile.am +++ /dev/null @@ -1,46 +0,0 @@ -# Copyright © 2012 Intel Corporation -# -# Permission is hereby granted, free of charge, to any person obtaining a -# copy of this software and associated documentation files (the "Software"), -# to deal in the Software without restriction, including without limitation -# the rights to use, copy, modify, merge, publish, distribute, sublicense, -# and/or sell copies of the Software, and to permit persons to whom the -# Software is furnished to do so, subject to the following conditions: -# -# The above copyright notice and this permission notice (including the next -# paragraph) shall be included in all copies or substantial portions of the -# Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, -# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT -# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, -# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -# DEALINGS IN THE SOFTWARE. - -include $(top_srcdir)/src/gallium/Automake.inc - -AM_CPPFLAGS = \ - -DSPLIT_TARGETS=1 -AM_CFLAGS = \ - $(GALLIUM_VIDEO_CFLAGS) - -omxdir = $(OMX_LIB_INSTALL_DIR) -omx_LTLIBRARIES = libomx_radeonsi.la - -nodist_EXTRA_libomx_radeonsi_la_SOURCES = dummy.cpp -libomx_radeonsi_la_SOURCES = \ - drm_target.c \ - $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_dri.c - -libomx_radeonsi_la_LDFLAGS = $(GALLIUM_OMX_LINKER_FLAGS) - -libomx_radeonsi_la_LIBADD = \ - $(top_builddir)/src/gallium/drivers/radeon/libradeon.la \ - $(top_builddir)/src/gallium/drivers/radeonsi/libradeonsi.la \ - $(top_builddir)/src/gallium/winsys/radeon/drm/libradeonwinsys.la \ - $(GALLIUM_OMX_LIB_DEPS) \ - $(LIBDRM_LIBS) \ - $(RADEON_LIBS) diff --git a/src/gallium/targets/radeonsi/omx/drm_target.c b/src/gallium/targets/radeonsi/omx/drm_target.c deleted file mode 120000 index 6955421..0000000 --- a/src/gallium/targets/radeonsi/omx/drm_target.c +++ /dev/null @@ -1 +0,0 @@ -../common/drm_target.c \ No newline at end of file -- 1.9.2 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev