summaryrefslogtreecommitdiffstats
path: root/src/gallium/Automake.inc
Commit message (Collapse)AuthorAgeFilesLines
* gallium: keep the libdrm link alongside libkmsdri.laEmil Velikov2015-11-211-1/+2
| | | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Rob Clark <robclark@freedesktop.org>
* pipe-loader: add pipe_loader_sw_probe_kms() implementationEmil Velikov2015-11-211-0/+5
| | | | | | | | Will be used as a counterpart for target-helpers' kms_swrast_create_screen(). Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Rob Clark <robclark@freedesktop.org>
* pipe-loader: remove pipe_loader_sw_probe_xlibEmil Velikov2015-07-131-7/+0
| | | | | | | | | It was only useful for st/egl, although I've never got to merging the pipe-loader and inline-helpers before it was removed. There are no users for it ATM. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Francisco Jerez <currojerez@riseup.net>
* util: Move u_atomic.h to src/util.Matt Turner2014-12-011-0/+2
| | | | | | To be shared outside of Gallium. Reviewed-by: Jose Fonseca <jfonseca@vmware.com>
* gallium/auxiliary: implement sw_probe_wrapped (v2)Christoph Bumiller2014-11-181-1/+2
| | | | | | | | | | | | | Implement pipe_loader_sw_probe_wrapped which allows to use the wrapped software renderer backend when using the pipe loader. v2: - remove unneeded ifdef - use GALLIUM_PIPE_LOADER_WINSYS_LIBS - check for CALLOC_STRUCT thanks to Emil Velikov Acked-by: Jose Fonseca <jfonseca@vmware.com> Signed-off-by: David Heidelberg <david@ixit.cz>
* gallium/radeon: cleanup header inclusionEmil Velikov2014-08-281-0/+2
| | | | | | | | | | | | | | - Add top_srcdir/src/gallium/winsys to GALLIUM_DRIVER_C{XXFLAGS}. - Remove top_srcdir/src/gallium/drivers/radeon from the includes. As a result: - Common radeon headers are prefixed with 'radeon/' - Winsys header inclusion is prefixed 'radeon/drm' Cc: Marek Olšák <marek.olsak@amd.com> Cc: Michel Dänzer <michel.daenzer@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* gallium: Move sRGB <-> RGB handling to libmesautilJason Ekstrand2014-08-041-0/+2
| | | | | Signed-off-by: Jason Ekstrand <jason.ekstrand@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* util: Gather some common macrosJason Ekstrand2014-08-041-0/+1
| | | | | | | | | | This gathers macros that have been included across components into util so that the include chain can be more vertical. In particular, this makes util stand on its own without any dependence whatsoever on the rest of mesa. Signed-off-by: "Jason Ekstrand" <jason.ekstrand@intel.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
* targets/dri-swrast: Convert to static/shared pipe-driverEmil Velikov2014-07-101-43/+0
| | | | | | | | | | | | | Convert the final dri target to the single DRI (megadriver) library. Cleanup all the automake leftovers from the conversion stage and update the scons build. v2: Link in llvmpipe, when applicable. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
* st/dri: merge dri/drm and dri/sw backendsEmil Velikov2014-07-101-1/+1
| | | | | | | | | | | | | | Move the driver_name to dri2/drisw and remove all the SPLIT_TAGETS mayhem. In the next step we'll unify the dri and dri-swrast targets, completing the gallium DRI megadriver. v2: Remove leftover st/dri Makefiles from CONFIG_FILES. Spotted by Thomas Helland. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
* targets/dri-swrast: convert to gallium megadrivers :)Emil Velikov2014-07-101-0/+2
| | | | | | | | | | | | | | Export the approapriate new symbol, and keep backwards compat via the megadriver_stub helper library. Our next step would be to unify dri/drm and dri/sw, leading to a complete megadrivers solution, and having a single library that provides dri across all targets. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
* targets/dri-nouveau: Convert to static/shared pipe-driversEmil Velikov2014-07-021-1/+1
| | | | | | | | | | | | | | | Similiar to other targets, we'd like to convert all the separate targets into a single one, thus we'll minimize the duplication and overall size of mesa. The conversion per API basis, with the drivers available either statically or shared. Currently the former is the default. v2: Correctly append the version script to the linker flags. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Rob Clark <robclark@freedesktop.org> Tested-by: Thomas Helland <thomashelland90 at gmail.com> Acked-by: Tom Stellard <thomas.stellard@amd.com>
* targets/automake.inc: s/GALLIUM_VIDEO_CFLAGS/GALLIUM_TARGET_CFLAGS/Emil Velikov2014-06-261-1/+1
| | | | | | | The flags are not specific to the video targets plus we can reuse them for targets/xa and targets/gbm. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/radeonsi/omx: convert to static/shared pipe-driversEmil Velikov2014-06-261-21/+0
| | | | | | | | | | | | | | | | | | | The radeonsi counterpart of previous commit - now libomx-radeonsi 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 This patch concludes the unification. Now libomx-mesa will be used for all hardware - r600, radeonsi and nouveau. Cc: Leo Liu <leo.liu@amd.com> Cc: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/omx-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-261-1/+1
| | | | | | | | | | | | | | | | | | | 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 <emil.l.velikov@gmail.com>
* targets/r600/xvmc: convert to static/shared pipe-driversEmil Velikov2014-06-221-20/+0
| | | | | | | | | | | The r600 equivalent of previous commit. v2: Correctly include the radeon winsys/radeon_common. Cc: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/xvmc-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-221-1/+1
| | | | | | | | | | | | | 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 <imirkin@alum.mit.edu> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/radeonsi/vdpau: convert to static/shared pipe-driversEmil Velikov2014-06-221-20/+0
| | | | | | | | | | | | | | 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 <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* targets/vdpau-nouveau: convert to static/shared pipe-driversEmil Velikov2014-06-221-1/+2
| | | | | | | | | | | | | | | | | | | | | | 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 <maarten.lankhorst@canonical.com> Cc: Ilia Mirkin <imirkin@alum.mit.edu> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Thomas Helland <thomashelland90 at gmail.com>
* automake: introduce helper variableEmil Velikov2014-06-191-0/+16
| | | | | | | | | | | - gallium_pipe_loader_winsys_libs Will be used in upcomming commits to reduce duplication in the build. v2: Drop the megadriver/static_target variables. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: correctly append the version-scriptEmil Velikov2014-05-251-12/+15
| | | | | | | | | | 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 <jon.turney@dronecode.org.uk> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
* Fix build for darwinJon TURNEY2014-05-231-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 <jon.turney@dronecode.org.uk> Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/vdpau: use version script to limit the exported symbolsEmil Velikov2014-05-021-1/+1
| | | | | | | | 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 <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/omx: drop the version from the omx targetsEmil Velikov2014-05-021-0/+1
| | | | | Suggested-by: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/omx: use version script to limit amount of exported symbolsEmil Velikov2014-05-021-1/+1
| | | | | | | | | | 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 <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/dri: use a single version script to restict exported symbolsEmil Velikov2014-05-021-4/+2
| | | | | | | | | Rather than having multiple (almost) identical version scripts use a single one. Cc: Christian König <christian.koenig@amd.com> Acked-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/xvmc: limit the amount of exported symbolsEmil Velikov2014-05-021-1/+1
| | | | | | | | | | | | | | | 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 <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* build: force .so extension for the gallium dri modulesEmil Velikov2014-04-091-0/+1
| | | | | | | | | | While linux uses .so as a default extension for shared libraries that is not the case for other platforms. The loader in libGL (and others) assumes that the dri module will always have a .so extension, thus it will fail to load on the affected platforms. Spotted-by: Jon TURNEY <jon.turney@dronecode.org.uk> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: don't enable -Wl,--no-undefined on OpenBSDJonathan Gray2014-04-051-3/+3
| | | | | | | | | | | | | | | | 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 <jsg@jsg.id.au> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
* targets/dri: move common libraries to GALLIUM_DRI_LIB_DEPSEmil Velikov2014-04-051-0/+2
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/omx: use GALLIUM_COMMON_LIB_DEPSEmil Velikov2014-04-051-2/+2
| | | | | | | | The targets do not require expat or selinux. Use GALLIUM_COMMON_LIB_DEPS which provides the core requirements for each gallium target. Cc: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/xvmc: use GALLIUM_COMMON_LIB_DEPSEmil Velikov2014-04-051-1/+2
| | | | | | | | The targets do not require expat or selinux. Use GALLIUM_COMMON_LIB_DEPS which provides the core requirements for each gallium target. Cc: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: introduce GALLIUM_COMMON_LIB_DEPSEmil Velikov2014-04-051-8/+8
| | | | | | | | | Rather than copying the core four dependencies all over gallium, introduce the above variable to avoid all the duplication. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848 Tested-by: Vinson Lee <vlee@freedesktop.org> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: move GALLIUM_DRI_LIB_DEPS to Automake.incEmil Velikov2014-04-051-0/+9
| | | | | | | | | | | | | | | With recent commit we started de-duplicating all of the compiler/ linker flags moving their handling inside Automake.inc. This did not take into consideration that the above variable was set at configure time, leading to issues on certain build combinations. Move the variable to where it's used/handled thus cleaning up configure.ac. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848 Tested-by: Vinson Lee <vlee@freedesktop.org> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* automake: ask the linker to do garbage collectionEmil Velikov2014-03-311-0/+4
| | | | | | | | | | | | | | By doing GC the linker removes all the symbols that are not referenced and/or used by the final library. This results in a saving of ~100K up-to ~600K per (stripped) binary (classic vs gallium drivers). If interested one can ask the compiler to print the sections that are removed using -Wl,--print-gc-sections. v2: Check if ld supports the flag before using it. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Acked-by: Matt Turner <mattst88@gmail.com> (v1)
* automake: add -Wl,--no-undefined to all librariesEmil Velikov2014-03-311-3/+6
| | | | | | | | | ... apart from the dri drivers. With this final change we can build mesa without fear that the resulting libraries will have unresolved symbols. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
* automake: consistently use -no-undefinedEmil Velikov2014-03-311-9/+8
| | | | | | | | | | | | | Set the flag for all but the dri targets. They have missing glapi symbols which are required for the normal operation with the X server. Jon, I fear that you'll need to carry the "no-undefined" hunk locally when building the dri drivers under cygwin. Cc: Jon TURNEY <jon.turney@dronecode.org.uk> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
* gallium/targets: move LLVM_LIBS handling inside Automake.incEmil Velikov2014-03-311-0/+5
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium/targets: fold LLVM_LDFLAGS inside Automake.incEmil Velikov2014-03-311-0/+9
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/omx: use GALLIUM_OMX_LINKER_FLAGSEmil Velikov2014-03-311-0/+6
| | | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/omx: introduce GALLIUM_OMX_LIB_DEPSEmil Velikov2014-03-311-0/+6
| | | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/vdpau: Don't link unused librariesKusanagi Kouichi2014-02-171-1/+5
| | | | | | libvdpau, libselinux and libexpat are not used. Signed-off-by: Kusanagi Kouichi <slash@ac.auone-net.jp>
* gallium makefiles: use a linker script for building dri driversMaarten Lankhorst2014-02-121-2/+4
| | | | | | | | | | Only export __driDriverExtensions by default, and radeon_drm_winsys_create on radeons. Remove -Bsymbolic which should no longer be needed. As a side effect, it ought to fix a manifestation of bug 73200 on radeon. Signed-off-by: Maarten Lankhorst<maarten.lankhorst@canonical.com> Reviewed-by: Christian König <christian.koenig@amd.com>
* targets/xvmc: export only necessary symbolsEmil Velikov2013-11-181-1/+1
| | | | | | | | Export only XvMC* symbols for the xvmc targets. Tested-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/dri: move linker flags out of configure into Automake.incEmil Velikov2013-11-161-0/+8
| | | | | | | | | | | | | | Previous assumption was that the same set of flags can be reused for both classic and gallium drivers. With megadriver work done the classic drivers ended up using their own (single) instance of the flags. Move these into Automake.inc and rename to indicate that those are gallium specific. Additionally silence an automake/autoconf warning "XXX is not a standard libtool library name", due to the parsing issues of the module tag. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/dri: compact compiler flags into Automake.incEmil Velikov2013-11-161-0/+13
| | | | | | | | | | | | | | Greatly reduce duplication and provide a sane minimum of CFLAGS for all DRI targets. Note: This commit adds VISIBILITY_CFLAGS to the following: * freedreno * i915 * ilo * nouveau * vmwgfx Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/xvmc: consolidate lib deps into Automake.incEmil Velikov2013-11-161-0/+6
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/xvmc: move linker flags to Automake.incEmil Velikov2013-11-161-0/+7
| | | | | | | Minimise duplication and sources of error (eg nouveau was missing shared and no-undefined) Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* gallium/winsys: compact compiler flags into Automake.incEmil Velikov2013-11-161-0/+6
| | | | | | | | | | | | | | | | Cleanup the duplicating flags and consolidate into a sigle variable. Note: this patch adds VISIBILITY_CFLAGS to the following targets * freedreno/drm * i915/{drm,sw} * nouveau/drm * sw/fbdev * sw/null * sw/wayland * sw/wrapper * sw/xlib Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
* targets/vdpau: consolidate lib deps into Automake.incEmil Velikov2013-11-161-0/+7
| | | | Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>