--- src/gallium/targets/dri-freedreno/Makefile.am | 2 +- src/gallium/targets/dri-i915/Makefile.am | 2 +- src/gallium/targets/dri-ilo/Makefile.am | 2 +- src/gallium/targets/dri-nouveau/Makefile.am | 2 +- src/gallium/targets/dri-r300/Makefile.am | 2 +- src/gallium/targets/dri-r600/Makefile.am | 2 +- src/gallium/targets/dri-radeonsi/Makefile.am | 2 +- src/gallium/targets/dri-swrast/Makefile.am | 2 +- src/gallium/targets/dri-vmwgfx/Makefile.am | 2 +- src/gallium/targets/gbm/Makefile.am | 4 +-- src/gallium/targets/libgl-xlib/Makefile.am | 2 +- src/gallium/targets/opencl/Makefile.am | 2 ++ src/gallium/targets/vdpau-nouveau/Makefile.am | 2 +- src/gallium/targets/vdpau-r300/Makefile.am | 2 +- src/gallium/targets/vdpau-r600/Makefile.am | 2 +- src/gallium/targets/vdpau-radeonsi/Makefile.am | 2 +- src/gallium/targets/vdpau-softpipe/Makefile.am | 10 +++++--- src/gallium/targets/vdpau-softpipe/target.c | 35 ++++++++++++++++++++++++++ src/gallium/targets/xorg-i915/Makefile.am | 2 +- src/gallium/targets/xorg-nouveau/Makefile.am | 2 +- src/gallium/targets/xorg-r600/Makefile.am | 2 +- src/gallium/targets/xorg-radeonsi/Makefile.am | 2 +- src/gallium/targets/xvmc-nouveau/Makefile.am | 2 +- src/gallium/targets/xvmc-r300/Makefile.am | 2 +- src/gallium/targets/xvmc-r600/Makefile.am | 2 +- src/gallium/targets/xvmc-softpipe/Makefile.am | 2 +- src/glx/Makefile.am | 5 +--- src/mesa/drivers/x11/Makefile.am | 5 ++-- 28 files changed, 72 insertions(+), 33 deletions(-) create mode 100644 src/gallium/targets/vdpau-softpipe/target.c
diff --git a/src/gallium/targets/dri-freedreno/Makefile.am b/src/gallium/targets/dri-freedreno/Makefile.am index ac27969..b549ec1 100644 --- a/src/gallium/targets/dri-freedreno/Makefile.am +++ b/src/gallium/targets/dri-freedreno/Makefile.am @@ -39,7 +39,7 @@ AM_CPPFLAGS = \ dridir = $(DRI_DRIVER_INSTALL_DIR) dri_LTLIBRARIES = kgsl_dri.la msm_dri.la -COMMON_LDFLAGS = -module -avoid-version -shared -no-undefined +COMMON_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared COMMON_LIBADD = \ $(top_builddir)/src/mesa/drivers/dri/common/libdricommon.la \ diff --git a/src/gallium/targets/dri-i915/Makefile.am b/src/gallium/targets/dri-i915/Makefile.am index 113cbbd..7ad3ff5 100644 --- a/src/gallium/targets/dri-i915/Makefile.am +++ b/src/gallium/targets/dri-i915/Makefile.am @@ -44,7 +44,7 @@ dri_LTLIBRARIES = i915_dri.la i915_dri_la_SOURCES = target.c -i915_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +i915_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared i915_dri_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \ diff --git a/src/gallium/targets/dri-ilo/Makefile.am b/src/gallium/targets/dri-ilo/Makefile.am index c7ab9bf..89f3a77 100644 --- a/src/gallium/targets/dri-ilo/Makefile.am +++ b/src/gallium/targets/dri-ilo/Makefile.am @@ -42,7 +42,7 @@ noinst_LTLIBRARIES = ilo_dri.la ilo_dri_la_SOURCES = target.c # need -rpath to create a noinst shared library -ilo_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined \ +ilo_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared \ -rpath $(abs_builddir) ilo_dri_la_LIBADD = \ diff --git a/src/gallium/targets/dri-nouveau/Makefile.am b/src/gallium/targets/dri-nouveau/Makefile.am index 1e1487f..8402320 100644 --- a/src/gallium/targets/dri-nouveau/Makefile.am +++ b/src/gallium/targets/dri-nouveau/Makefile.am @@ -42,7 +42,7 @@ nodist_EXTRA_nouveau_dri_la_SOURCES = dummy.cpp nouveau_dri_la_SOURCES = target.c -nouveau_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +nouveau_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared nouveau_dri_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \ diff --git a/src/gallium/targets/dri-r300/Makefile.am b/src/gallium/targets/dri-r300/Makefile.am index 88b6846..691dfb3 100644 --- a/src/gallium/targets/dri-r300/Makefile.am +++ b/src/gallium/targets/dri-r300/Makefile.am @@ -42,7 +42,7 @@ dri_LTLIBRARIES = r300_dri.la nodist_EXTRA_r300_dri_la_SOURCES = dummy.cpp r300_dri_la_SOURCES = target.c -r300_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +r300_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared r300_dri_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \ diff --git a/src/gallium/targets/dri-r600/Makefile.am b/src/gallium/targets/dri-r600/Makefile.am index 1e3e4d2..2ad460f 100644 --- a/src/gallium/targets/dri-r600/Makefile.am +++ b/src/gallium/targets/dri-r600/Makefile.am @@ -42,7 +42,7 @@ dri_LTLIBRARIES = r600_dri.la r600_dri_la_SOURCES = target.c -r600_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +r600_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared r600_dri_la_LIBADD = \ $(top_builddir)/src/gallium/drivers/r600/libr600.la \ diff --git a/src/gallium/targets/dri-radeonsi/Makefile.am b/src/gallium/targets/dri-radeonsi/Makefile.am index fbb67e1..ab104c8 100644 --- a/src/gallium/targets/dri-radeonsi/Makefile.am +++ b/src/gallium/targets/dri-radeonsi/Makefile.am @@ -42,7 +42,7 @@ dri_LTLIBRARIES = radeonsi_dri.la nodist_EXTRA_radeonsi_dri_la_SOURCES = dummy.cpp radeonsi_dri_la_SOURCES = target.c -radeonsi_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +radeonsi_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared radeonsi_dri_la_LIBADD = \ $(top_builddir)/src/gallium/drivers/radeonsi/libradeonsi.la \ diff --git a/src/gallium/targets/dri-swrast/Makefile.am b/src/gallium/targets/dri-swrast/Makefile.am index 39bad77..471c36a 100644 --- a/src/gallium/targets/dri-swrast/Makefile.am +++ b/src/gallium/targets/dri-swrast/Makefile.am @@ -47,7 +47,7 @@ swrast_dri_la_SOURCES = \ $(top_srcdir)/src/mesa/drivers/dri/common/xmlconfig.c -swrast_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +swrast_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared swrast_dri_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/dri/sw/libdrisw.la \ diff --git a/src/gallium/targets/dri-vmwgfx/Makefile.am b/src/gallium/targets/dri-vmwgfx/Makefile.am index 535eae8..440e47d 100644 --- a/src/gallium/targets/dri-vmwgfx/Makefile.am +++ b/src/gallium/targets/dri-vmwgfx/Makefile.am @@ -42,7 +42,7 @@ vmwgfx_dri_la_SOURCES = \ target.c \ vmw_powf.c -vmwgfx_dri_la_LDFLAGS = -module -avoid-version -shared -no-undefined +vmwgfx_dri_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared vmwgfx_dri_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/dri/drm/libdridrm.la \ diff --git a/src/gallium/targets/gbm/Makefile.am b/src/gallium/targets/gbm/Makefile.am index 0be49eb..94aa5a4 100644 --- a/src/gallium/targets/gbm/Makefile.am +++ b/src/gallium/targets/gbm/Makefile.am @@ -46,7 +46,7 @@ gbm_gallium_drm_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/gbm/libgbm.la \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ $(LIBUDEV_LIBS) \ - $(LIBDRM_LIBS) \ - -lm + -lXext \ + -lX11 gbm_gallium_drm_la_LDFLAGS = -Wl,--no-undefined -shared -module -avoid-version diff --git a/src/gallium/targets/libgl-xlib/Makefile.am b/src/gallium/targets/libgl-xlib/Makefile.am index 8cebfb4..5dc85af 100644 --- a/src/gallium/targets/libgl-xlib/Makefile.am +++ b/src/gallium/targets/libgl-xlib/Makefile.am @@ -42,7 +42,7 @@ AM_CFLAGS = $(X11_CFLAGS) lib_LTLIBRARIES = libGL.la libGL_la_SOURCES = xlib.c -libGL_la_LDFLAGS = -version-number $(GL_MAJOR):$(GL_MINOR):$(GL_TINY) -no-undefined +libGL_la_LDFLAGS = -Wl,--no-undefined -version-number $(GL_MAJOR):$(GL_MINOR):$(GL_TINY) libGL_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/glx/libxlib.la \ diff --git a/src/gallium/targets/opencl/Makefile.am b/src/gallium/targets/opencl/Makefile.am index 845babe..f4c532d 100644 --- a/src/gallium/targets/opencl/Makefile.am +++ b/src/gallium/targets/opencl/Makefile.am @@ -12,6 +12,8 @@ libOpenCL_la_LIBADD = \ $(top_builddir)/src/gallium/state_trackers/clover/libclover.la \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ $(GALLIUM_PIPE_LOADER_LIBS) $(LIBUDEV_LIBS) $(LLVM_OPENCL_LIBS) \ + -lXext \ + -lX11 \ -ldl \ -lclangCodeGen \ -lclangFrontendTool \ diff --git a/src/gallium/targets/vdpau-nouveau/Makefile.am b/src/gallium/targets/vdpau-nouveau/Makefile.am index 38f9bfb..e9c4d33 100644 --- a/src/gallium/targets/vdpau-nouveau/Makefile.am +++ b/src/gallium/targets/vdpau-nouveau/Makefile.am @@ -42,7 +42,7 @@ libvdpau_nouveau_la_LDFLAGS = \ -module \ -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libvdpau_nouveau_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/vdpau-r300/Makefile.am b/src/gallium/targets/vdpau-r300/Makefile.am index 9a3e4bc..c22448c 100644 --- a/src/gallium/targets/vdpau-r300/Makefile.am +++ b/src/gallium/targets/vdpau-r300/Makefile.am @@ -42,7 +42,7 @@ libvdpau_r300_la_LDFLAGS = \ -module \ -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libvdpau_r300_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/vdpau-r600/Makefile.am b/src/gallium/targets/vdpau-r600/Makefile.am index e768605..14298a0 100644 --- a/src/gallium/targets/vdpau-r600/Makefile.am +++ b/src/gallium/targets/vdpau-r600/Makefile.am @@ -41,7 +41,7 @@ libvdpau_r600_la_LDFLAGS = \ -module \ -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libvdpau_r600_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/vdpau-radeonsi/Makefile.am b/src/gallium/targets/vdpau-radeonsi/Makefile.am index 798f74a..0777044 100644 --- a/src/gallium/targets/vdpau-radeonsi/Makefile.am +++ b/src/gallium/targets/vdpau-radeonsi/Makefile.am @@ -42,7 +42,7 @@ libvdpau_radeonsi_la_LDFLAGS = \ -module \ -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libvdpau_radeonsi_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/vdpau-softpipe/Makefile.am b/src/gallium/targets/vdpau-softpipe/Makefile.am index f01cfce..2b59cfe 100644 --- a/src/gallium/targets/vdpau-softpipe/Makefile.am +++ b/src/gallium/targets/vdpau-softpipe/Makefile.am @@ -29,28 +29,32 @@ AM_CFLAGS = \ AM_CPPFLAGS = \ -DGALLIUM_SOFTPIPE \ -I$(top_srcdir)/src/gallium/drivers \ - -I$(top_srcdir)/src/gallium/winsys + -I$(top_srcdir)/src/gallium/winsys \ + -I$(top_srcdir)/src/gallium/winsys/sw/dri vdpaudir = $(VDPAU_LIB_INSTALL_DIR) vdpau_LTLIBRARIES = libvdpau_softpipe.la libvdpau_softpipe_la_SOURCES = \ + target.c \ $(top_srcdir)/src/gallium/auxiliary/vl/vl_winsys_xsp.c libvdpau_softpipe_la_LDFLAGS = \ -module \ -version-number $(VDPAU_MAJOR):$(VDPAU_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libvdpau_softpipe_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ $(top_builddir)/src/gallium/state_trackers/vdpau/libvdpautracker.la \ $(top_builddir)/src/gallium/winsys/sw/xlib/libws_xlib.la \ $(top_builddir)/src/gallium/drivers/softpipe/libsoftpipe.la \ + $(top_builddir)/src/gallium/winsys/sw/dri/libswdri.la \ $(VDPAU_LIBS) \ $(DLOPEN_LIBS) \ - $(LIBDRM_LIBS) + $(LIBDRM_LIBS) \ + -lXext nodist_EXTRA_libvdpau_softpipe_la_SOURCES = dummy.cpp diff --git a/src/gallium/targets/vdpau-softpipe/target.c b/src/gallium/targets/vdpau-softpipe/target.c new file mode 100644 index 0000000..a2685f1 --- /dev/null +++ b/src/gallium/targets/vdpau-softpipe/target.c @@ -0,0 +1,35 @@ +#include "pipe/p_compiler.h" +#include "util/u_memory.h" +#include "dri_sw_winsys.h" + +#include "target-helpers/inline_debug_helper.h" +#include "target-helpers/inline_sw_helper.h" + +#include "state_tracker/drm_driver.h" + +DRM_DRIVER_DESCRIPTOR("swrast", NULL, NULL, NULL); + +struct pipe_screen * +drisw_create_screen(struct drisw_loader_funcs *lf) +{ + struct sw_winsys *winsys = NULL; + struct pipe_screen *screen = NULL; + + winsys = dri_create_sw_winsys(lf); + if (winsys == NULL) + return NULL; + + screen = sw_screen_create(winsys); + if (!screen) + goto fail; + + screen = debug_screen_wrap(screen); + + return screen; + +fail: + if (winsys) + winsys->destroy(winsys); + + return NULL; +} diff --git a/src/gallium/targets/xorg-i915/Makefile.am b/src/gallium/targets/xorg-i915/Makefile.am index 3109f95..f0f132d 100644 --- a/src/gallium/targets/xorg-i915/Makefile.am +++ b/src/gallium/targets/xorg-i915/Makefile.am @@ -41,7 +41,7 @@ i915_drv_la_SOURCES = \ intel_target.c \ intel_xorg.c -i915_drv_la_LDFLAGS = -module -avoid-version -shared -no-undefined +i915_drv_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared i915_drv_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xorg-nouveau/Makefile.am b/src/gallium/targets/xorg-nouveau/Makefile.am index df4ac10..1626ebb 100644 --- a/src/gallium/targets/xorg-nouveau/Makefile.am +++ b/src/gallium/targets/xorg-nouveau/Makefile.am @@ -41,7 +41,7 @@ nouveau2_drv_la_SOURCES = \ nouveau_target.c \ nouveau_xorg.c -nouveau2_drv_la_LDFLAGS = -module -avoid-version -shared -no-undefined +nouveau2_drv_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared nouveau2_drv_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xorg-r600/Makefile.am b/src/gallium/targets/xorg-r600/Makefile.am index 4bf8cc5..00ab315 100644 --- a/src/gallium/targets/xorg-r600/Makefile.am +++ b/src/gallium/targets/xorg-r600/Makefile.am @@ -41,7 +41,7 @@ r600g_drv_la_SOURCES = \ target.c \ xorg.c -r600g_drv_la_LDFLAGS = -module -avoid-version -shared -no-undefined +r600g_drv_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared r600g_drv_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xorg-radeonsi/Makefile.am b/src/gallium/targets/xorg-radeonsi/Makefile.am index 1f46bee..f322afd 100644 --- a/src/gallium/targets/xorg-radeonsi/Makefile.am +++ b/src/gallium/targets/xorg-radeonsi/Makefile.am @@ -42,7 +42,7 @@ radeonsi_drv_la_SOURCES = \ target.c \ xorg.c -radeonsi_drv_la_LDFLAGS = -module -avoid-version -shared -no-undefined +radeonsi_drv_la_LDFLAGS = -Wl,--no-undefined -module -avoid-version -shared radeonsi_drv_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xvmc-nouveau/Makefile.am b/src/gallium/targets/xvmc-nouveau/Makefile.am index 4550ea9..0d5ebe3 100644 --- a/src/gallium/targets/xvmc-nouveau/Makefile.am +++ b/src/gallium/targets/xvmc-nouveau/Makefile.am @@ -40,7 +40,7 @@ libXvMCnouveau_la_SOURCES = \ libXvMCnouveau_la_LDFLAGS = \ -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libXvMCnouveau_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xvmc-r300/Makefile.am b/src/gallium/targets/xvmc-r300/Makefile.am index dfa0082..b7dc95a 100644 --- a/src/gallium/targets/xvmc-r300/Makefile.am +++ b/src/gallium/targets/xvmc-r300/Makefile.am @@ -43,7 +43,7 @@ libXvMCr300_la_LDFLAGS = \ -module \ -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libXvMCr300_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xvmc-r600/Makefile.am b/src/gallium/targets/xvmc-r600/Makefile.am index ba86bb1..6ea4cf4 100644 --- a/src/gallium/targets/xvmc-r600/Makefile.am +++ b/src/gallium/targets/xvmc-r600/Makefile.am @@ -41,7 +41,7 @@ libXvMCr600_la_LDFLAGS = \ -module \ -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libXvMCr600_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/gallium/targets/xvmc-softpipe/Makefile.am b/src/gallium/targets/xvmc-softpipe/Makefile.am index 7c68591..e466f46 100644 --- a/src/gallium/targets/xvmc-softpipe/Makefile.am +++ b/src/gallium/targets/xvmc-softpipe/Makefile.am @@ -41,7 +41,7 @@ libXvMCsoftpipe_la_LDFLAGS = \ -module \ -version-number $(XVMC_MAJOR):$(XVMC_MINOR) \ -shared \ - -no-undefined + -Wl,--no-undefined libXvMCsoftpipe_la_LIBADD = \ $(top_builddir)/src/gallium/auxiliary/libgallium.la \ diff --git a/src/glx/Makefile.am b/src/glx/Makefile.am index b7de320..b855be9 100644 --- a/src/glx/Makefile.am +++ b/src/glx/Makefile.am @@ -94,10 +94,7 @@ GL_LIBS = \ $(GLAPI_LIB) \ $(GL_LIB_DEPS) -GL_LDFLAGS = \ - -Wl,-Bsymbolic \ - -version-number 1:2 -no-undefined \ - -shared +GL_LDFLAGS = -Wl,--no-undefined -Wl,-Bsymbolic -shared -version-number 1:2 lib@GL_LIB@_la_SOURCES = lib@GL_LIB@_la_LIBADD = $(GL_LIBS) diff --git a/src/mesa/drivers/x11/Makefile.am b/src/mesa/drivers/x11/Makefile.am index 902258f..f2b3955 100644 --- a/src/mesa/drivers/x11/Makefile.am +++ b/src/mesa/drivers/x11/Makefile.am @@ -56,8 +56,9 @@ GL_PATCH = 0 lib@GL_LIB@_la_LIBADD = \ $(top_builddir)/src/mapi/glapi/libglapi.la \ $(DRI_LIB_DEPS) \ - $(GLAPI_LIB) + $(GLAPI_LIB) \ + -lX11 -lXext -lm lib@GL_LIB@_la_LDFLAGS = \ -version-number $(GL_MAJOR):$(GL_MINOR):$(GL_PATCH) \ - -no-undefined + -Wl,--no-undefined -- 1.8.1.4 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev