summaryrefslogtreecommitdiffstats
path: root/src/gallium/targets
Commit message (Collapse)AuthorAgeFilesLines
* targets/r600/omx: convert to static/shared pipe-driversEmil Velikov2014-06-264-51/+18
| | | | | | | | | | | | | | | | | | | | | The r600 counterpart of previous commit - now the libomx-r600 is built into the libomx-mesa library. Providing a single library per API. v2: Include the radeon winsys only when there is a user for it. v3: Correcly include the winsys. Now with extra brown bag :\ Note: Make sure to rebuild the .omxregister file, by executing $ omxregister-bellagio If you have more than one omx library (libomx-radeonsi, libomx-r600), make sure to temporary move the unused one. By the end of the series there will be only one library that will be used for all hardware - r600, radeonsi and nouveau. Cc: Leo Liu <[email protected]> Cc: Christian König <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]>
* targets/omx-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-266-67/+72
| | | | | | | | | | | | | | | | | | | Similar to the vdpau/xvmc targets, we're going to convert the multiple target libraries into a single one. The library can be built with the relevant pipe-drivers statically linked in, or loaded as shared modules. Currently we default to static. Note: Make sure to rebuild the .omxregister file, by executing $ omxregister-bellagio If you have more than one omx library (libomx-radeonsi, libomx-r600), make sure to temporary move the unused one. By the end of the series there will be only one library that will be used for all hardware - r600, radeonsi and nouveau. Signed-off-by: Emil Velikov <[email protected]>
* targets/(vdpau|xvmc): hardlink against the installed libraryEmil Velikov2014-06-232-3/+3
| | | | | | | | | | | | With commit 11e46a32aed and f9ebb1ea771 we resolved the symlink generation required by the versioning of the library. Although they incorrectly changed the way hardlinks are created by linking to the ones from the build tree. If the device used for building differs from the one set as destination linking will fail. Reported-by: Andy Furniss <[email protected]> Tested-by: Andy Furniss <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* targets/xvmc: correctly generate the symlinksEmil Velikov2014-06-231-6/+6
| | | | Signed-off-by: Emil Velikov <[email protected]>
* targets/vdpau: correctly generate the symlinksEmil Velikov2014-06-231-5/+5
| | | | | Reported-by: David Heidelberger <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* targets/r600/xvmc: convert to static/shared pipe-driversEmil Velikov2014-06-224-51/+10
| | | | | | | | | | | The r600 equivalent of previous commit. v2: Correctly include the radeon winsys/radeon_common. Cc: Christian König <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/xvmc-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-226-67/+95
| | | | | | | | | | | | | Similar to vdpau targets, we're going to convert the individual target libraries into a single one. The library can be built with the relevant pipe-drivers statically linked in, or loaded as shared modules. Currently we default to static. Cc: Ilia Mirkin <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/radeonsi/vdpau: convert to static/shared pipe-driversEmil Velikov2014-06-224-55/+13
| | | | | | | | | | | | | | Similar to previous commits, this allows us to minimise some of the duplication by compacting all vdpau targets into a single library. v2: Include the radeon winsys only when there is a user for it. v3: Correcly include the winsys. Now with extra brown bag :\ Cc: Christian König <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/r600/vdpau: convert to static/shared pipe-driversEmil Velikov2014-06-224-54/+19
| | | | | | | | | | | | | | Similar to previous commit, this allows us to minimise some of the duplication by compacting all vdpau targets into a single library. v2: Include the radeon winsys only when there is a user for it. v3: Correcly include the winsys. Now with extra brown bag :\ Cc: Christian König <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/vdpau-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-2214-68/+134
| | | | | | | | | | | | | | | | | | | | | | Create a single library (for the vdpau api) thus reducing the overall size of mesa. Current commit converts vdpau-nouveau, with upcomming commits handling the rest. The library can be built with the relevant pipe-drivers statically linked in, or loaded as shared modules. Currently we default to static. Add SPLIT_TARGETS to guard the other VL targets. Note: symlink handling is rather ugly and will need an update to work with BSD and other non-linux platforms. v2: Split the conversion into per-target basis. Cc: Maarten Lankhorst <[email protected]> Cc: Ilia Mirkin <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* automake: include the libdeps in the correct orderEmil Velikov2014-06-193-6/+6
| | | | | Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=80254 Signed-off-by: Emil Velikov <[email protected]>
* targets: use GALLIUM_PIPE_LOADER_WINSYS_LIB_DEPSEmil Velikov2014-06-193-40/+6
| | | | | | Drop ~50 lines of buildsystem mayhem. Signed-off-by: Emil Velikov <[email protected]>
* targets/pipe-loader: add driver specific drm_configurationEmil Velikov2014-06-195-5/+120
| | | | Signed-off-by: Emil Velikov <[email protected]>
* automake: stop building i915-sw and drop explicit linking to softpipeEmil Velikov2014-06-192-12/+1
| | | | | | | Unused and possibly broken. Will be completely removed in upcomming commits. Signed-off-by: Emil Velikov <[email protected]>
* egl/gallium: Set defines for supported APIs when using automakeNiels Ole Salscheider2014-06-122-0/+8
| | | | | | | | | | | | This fixes automake builds which are broken since b52a530ce2aada1967bc8fefa83ab53e6a737dae. v2: This patch also adds the FEATURE_* defines back to targets/egl-static for Android and Scons that have been removed in the mentioned commit. Signed-off-by: Niels Ole Salscheider <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=79885 Reviewed-by: Emil Velikov <[email protected]>
* scons: remove dri-i915 build targetEmil Velikov2014-06-092-38/+0
| | | | | | | | Unmaintained and broken. Cc: Jakob Bornecrantz <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Acked-by: Jakob Bornecrantz <[email protected]>
* egl-static: Fix undefined reference to `loader_*'José Fonseca2014-05-281-0/+1
| | | | Trivial. Better than a broken build.
* automake: correctly append the version-scriptEmil Velikov2014-05-255-13/+23
| | | | | | | | | | Turns out that the AC conditional did not include the the version-scripts as expected. Rather it truncated the remaining linker flags. Cc: Jon TURNEY <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Jon TURNEY <[email protected]>
* targets/libgl-xlib: hide all the exported symbol mayhemEmil Velikov2014-05-252-0/+12
| | | | | | | | | | | Leave only the gl/glx and mangled gl symbols. XMesa* was never an official interface and the only user of it was mesa-demos, while they were still in the same repo as mesa. v2: Conditionally use the version-script. Signed-off-by: Emil Velikov <[email protected]>
* targets/osmesa: include mangled gl symbolsEmil Velikov2014-05-251-0/+1
| | | | | | Missed out with commit d4c3968c25885f6eb53dee4cc0c60d8d3f8fec32 Signed-off-by: Emil Velikov <[email protected]>
* targets/xa: limit the amount of exported symbolsEmil Velikov2014-05-252-0/+43
| | | | | | | | | | | | | | In the presence of LLVM the final library exports every symbol from the llvm namespace. Resolve this by using a version script (w/o the version/name tag). Considering that there are only ~35 symbols, explicitly list them to minimize the chances of rogue symbols sneaking in. v2: Conditionally include the version-script. Reviewed-by: Thomas Hellstrom <[email protected]> (v1) Signed-off-by: Emil Velikov <[email protected]>
* gallium/egl: st_profiles are build time decision, treat them as suchEmil Velikov2014-05-255-45/+0
| | | | | | | | | | | The profiles are present depending on the defines at build time. Drop the extra functions and feed the defines directly into the state-tracker at build time. v2: Drop unused variable i. Acked-by: Chia-I Wu <[email protected]> (v1) Signed-off-by: Emil Velikov <[email protected]>
* Make DRI dependencies and build depend on the targetJon TURNEY2014-05-234-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't require xcb-dri[23] etc. if we aren't building for a target with DRM, as we won't be using dri[23] - Enable a more fine-grained control of what DRI code is built, so that a libGL using direct swrast can be built on targets which don't have DRM. The HAVE_DRI automake conditional is retired in favour of a number of other conditionals: HAVE_DRI2 enables building of code using the DRI2 interface (and possibly DRI3 with HAVE_DRI3) HAVE_DRISW enables building of DRI swrast HAVE_DRICOMMON enables building of target-independent DRI code, and also enables some makefile cases where a more detailled decision is made at a lower level. HAVE_APPLEDRI enables building of an Apple-specific direct rendering interface, still which requires additional fixing up to build properly. v2: Place xfont.c and drisw_glx.c into correct categories. Update 'make check' as well Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* Fix build for darwinJon TURNEY2014-05-234-0/+8
| | | | | | | | | | | | | | | | | | | Fix build for darwin, when ./configured --disable-driglx-direct - darwin ld doesn't support -Bsymbolic or --version-script, so check if ld supports those options before using them - define GLX_ALIAS_UNSUPPORTED as config/darwin used to, as aliasing of non-weak symbols isn't supported - default to -with-dri-drivers=swrast v2: Use -Wl,-Bsymbolic, as before, not -Bsymbolic Test that ld --version-script works, rather than just looking for it in ld --help Don't use -Wl,--no-undefined on darwin, either Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* targets/egl-static: add missing line break in ldflagsEmil Velikov2014-05-231-1/+1
| | | | | | | | Accidently omitted by commit 7b7944ee1cedeaf. Cc: "10.2" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Jon TURNEY <[email protected]>
* targets/osmesa: limit the amount of exported symbolsEmil Velikov2014-05-232-0/+19
| | | | | | | src/gallium/targets/osmesa/Makefile.am | 1 + src/gallium/targets/osmesa/osmesa.sym | 18 ++++++++++++++++++ 2 files changed, 19 insertions(+) create mode 100644 src/gallium/targets/osmesa/osmesa.sym
* haiku: Add missing u_memory.h for FREE()Alexander von Gluck IV2014-05-212-0/+2
| | | | Acked-by: Brian Paul <[email protected]>
* egl-static: include libradeonwinsys.la only onceEmil Velikov2014-05-151-8/+5
| | | | | | | | | | | With this and the previous patch, we no longer have multiple definitions in the final egl_gallium.so. v2: Drop duplicate libloader link. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Chia-I Wu <[email protected]> (v1) Reviewed-by: Tom Stellard <[email protected]> (v1)
* gallium/radeon: link in libradeon.la at target levelEmil Velikov2014-05-159-0/+14
| | | | | | | | | | | | It makes more sense to link the core and common parts of the driver as the target is build. Additionally this will help us drop duplicating symbols for targets that static link mulitple pipe-drivers. Only egl-static needs that currently with more to come. To simplify things a bit add HAVE_GALLIUM_RADEON_COMMON variable. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* automake: Honor GL_LIB for gallium libgl-xlibBrad King2014-05-141-7/+7
| | | | | | | Use "@GL_LIB@" in src/gallium/targets/libgl-xlib/Makefile.am to produce the library name specified by the configure --with-gl-lib-name option. Reviewed-by: Emil Velikov <[email protected]>
* targets/omx: add nouveau targetEmil Velikov2014-05-023-0/+65
| | | | Signed-off-by: Emil Velikov <[email protected]>
* targets/omx: use GALLIUM_VIDEO_CFLAGSEmil Velikov2014-05-022-14/+2
| | | | | Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]>
* targets/pipe-loader: cleanup version-scriptEmil Velikov2014-05-023-5/+9
| | | | | | | | | | | Drop the version/name tag from the script as it was never meant to be there. Add swrast_create_screen as it is used when loading swrast. Rename the file to pipe.sym. v2: Rebase on top of the LD_NO_UNDEFINED changes. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* targets/opencl: hide all the exported llvm/clang mayhem... hopefullyEmil Velikov2014-05-022-0/+7
| | | | | | | | | | Both llvm and clang polute the exported symbol table, as soon as we try to link with either one. Other than those two everything else looks good (clean). Cc: Tom Stellard <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* targets/egl-static: freshen up the version scriptEmil Velikov2014-05-023-5/+8
| | | | | | | | | Namely drop the version/name tag of the exported symbol, and rename the filename to egl.sym. v2: Rebase on top of the LD_NO_UNDEFINED changes. Signed-off-by: Emil Velikov <[email protected]>
* targets/gbm: add version-script to limit exported symbolsEmil Velikov2014-05-022-0/+7
| | | | Signed-off-by: Emil Velikov <[email protected]>
* targets/vdpau: use version script to limit the exported symbolsEmil Velikov2014-05-024-6/+8
| | | | | | | | Using export-symbols-regex is the least desirable method of restricting the exported symbols, as is completely messes up with the symbol table. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]>
* targets/omx: use version script to limit amount of exported symbolsEmil Velikov2014-05-023-4/+6
| | | | | | | | | | Using export-symbols-regex is the least desirable method of restricting the exported symbols, as is completely messes up with the symbol table. radeon_drm_winsys_create is not needed, avoid exporting it. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]>
* targets/dri: use a single version script to restict exported symbolsEmil Velikov2014-05-026-12/+4
| | | | | | | | | Rather than having multiple (almost) identical version scripts use a single one. Cc: Christian König <[email protected]> Acked-by: Maarten Lankhorst <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* targets/xvmc: limit the amount of exported symbolsEmil Velikov2014-05-021-0/+32
| | | | | | | | | | | | | | | In the presence of LLVM the final library exports every symbol from the llvm namespace. Resolve this by using a version script (w/o the version/name tag). Considering that there are only ~25 symbols, explicitly list them to minimize the chances of rogue symbols sneaking in. Drop the *winsys_create functions as they were only meant for gl-vdpau interop. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Christian König <[email protected]>
* targets/osmesa: hide osmesa_create_screenEmil Velikov2014-05-021-1/+3
| | | | | | | The symbol is not meant to be exported, and its presence was only a side effect due to the missing visibility flags. Signed-off-by: Emil Velikov <[email protected]>
* targets/pipe-loader: drop driver_descriptor symbol from swrastEmil Velikov2014-05-022-4/+2
| | | | | | | | | The symbol is used for hardware only drivers. For swrast the loader uses swrast_create_screen. Add VISIBILITY_CFLAGS while we're here. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* automake: cleanup pipe-loader handling when using sw/xlib winsysEmil Velikov2014-04-253-3/+3
| | | | | | | Rather than defining our own set of variables, use NEED_WINSYS_XLIB and based on it include the sw/xlib winsys. Signed-off-by: Emil Velikov <[email protected]>
* libgl-gdi: silence unused variable warning when not using LLVMBrian Paul2014-04-211-0/+2
|
* egl-static: fix build after recent radeon winsys changesSimone Scanzoni2014-04-131-0/+4
| | | | Signed-off-by: Marek Olšák <[email protected]>
* egl-static: Fix missing radeon_surface.h includes.José Fonseca2014-04-111-0/+16
| | | | | | | | | | Fixes fatal error: radeon_surface.h: No such file or directory when libdrm is not present, or non-Linux OSes. Trivial.
* gallium/radeon: fix missing winsys include in pipe-loader.Knut Andre Tidemann2014-04-114-1/+4
| | | | | | | | | | | The commit 3b0b44f7def0acb4f7a7aef086c0bece321418a6 introduced a build error: error: dereferencing pointer to incomplete type This patch fixes this issue in all the affected files. Reviewed-by: Tom Stellard <[email protected]>
* winsys/radeon: fix a race condition in initialization of radeon_winsys::screenMarek Olšák2014-04-107-111/+18
| | | | | | | | Create the screen in the winsys while the mutex is locked. This also results in a nice code cleanup! Reviewed-by: Michel Dänzer <[email protected]> Reviewed-by: Christian König <[email protected]>
* automake: don't enable -Wl,--no-undefined on OpenBSDJonathan Gray2014-04-057-7/+7
| | | | | | | | | | | | | | | | OpenBSD does not have DT_NEEDED entries for libc by design, over concerns how the symbols would be referenced after changing the major version of the library. So avoid -no-undefined checks on OpenBSD as they will fail. v2: don't include the -no-undefined libtool option in the variable and change -Wl,--no-undefined references in Automake.inc as well. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76856 Signed-off-by: Jonathan Gray <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* targets/dri: move common libraries to GALLIUM_DRI_LIB_DEPSEmil Velikov2014-04-059-18/+0
| | | | Signed-off-by: Emil Velikov <[email protected]>