summaryrefslogtreecommitdiffstats
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* gallium/ddebug: new pipe for hang detection and driver state dumping (v2)Marek Olšák2015-08-261-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | v2: lots of improvements This is like identity or trace, but simpler. It doesn't wrap most states. Run with: GALLIUM_DDEBUG=1000 [executable] where "executable" is the app and "1000" is in miliseconds, meaning that the context will be considered hung if a fence fails to signal in 1000 ms. If that happens, all shaders, context states, bound resources, draw parameters, and driver debug information (if any) will be dumped into: /home/$username/dd_dumps/$processname_$pid_$index. Note that the context is flushed after every draw/clear/copy/blit operation and then waited for to find the exact call that hangs. You can also do: GALLIUM_DDEBUG=always to do the dumping after every draw/clear/copy/blit operation without flushing and waiting. Examples of driver states that can be dumped are: - Hardware status registers saying which hw block is busy (hung). - Disassembled shaders in a human-readable form. - The last submitted command buffer in a human-readable form. v2: drop pipe-loader changes, drop SConscript rename dd.h -> dd_pipe.h Acked-by: Christian König <[email protected]> Acked-by: Alex Deucher <[email protected]>
* st/nine: Require gcc >= 4.6David Heidelberg2015-08-211-0/+4
| | | | | | | | | | | Nine code uses some C11 features, and this leads to compile error on gcc <= 4.5 Another way would have been to use the -fms-extensions CFLAG Signed-off-by: David Heidelberg <[email protected]> Cc: "10.4 10.5 10.6" <[email protected]>
* freedreno: use fd_pipe_wait_timeout()Rob Clark2015-08-181-1/+1
| | | | | | | | To properly support the case of waiting on a fence with a 0 timeout, we still need to call down to the kernel. Which requires the use of the new fd_pipe_wait_timeout() API. Signed-off-by: Rob Clark <[email protected]>
* winsys/amdgpu: add a new winsys for the new kernel driverMarek Olšák2015-08-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | v2: - lots of changes according to Emil Velikov's comments - implemented radeon_winsys::read_registers v3: - a lot of new work, many of them adapt to libdrm interface changes Squashed patches: winsys/amdgpu: implement radeon_winsys context support winsys/amdgpu: add reference counting for contexts winsys/amdgpu: add userptr support winsys/amdgpu: allocate IBs like normal buffers winsys/amdgpu: add IBs to the buffer list, adapt to interface changes winsys/amdgpu: don't use KMS handles as reloc hash keys winsys/amdgpu: sync buffer accesses to different rings winsys/amdgpu: use dependencies instead of waiting for last fence v2 gallium/radeon: unify buffer_wait and buffer_is_busy in the winsys interface (amdgpu part) winsys/amdgpu: track fences per ring and be thread-safe winsys/amdgpu: simplify waiting on a variable in amdgpu_fence_wait gallium/radeon: allow the winsys to choose the IB size (amdgpu part) winsys/amdgpu: switch to new amdgpu_cs_query_fence_status interface winsys/amdgpu: handle fence and dependencies merge winsys/amdgpu follow libdrm change to move user fence into UMD winsys/amdgpu: use amdgpu_bo_va_op for va map/unmap v2 winsys/amdgpu: use the new tiling flags winsys/amdgpu: switch to new GTT_USWC definition winsys/amdgpu: expose amdgpu_cs_query_reset_state to drivers winsys/amdgpu: fix valgrind warnings winsys/amdgpu: don't use VRAM with APUs that don't have much of it winsys/amdgpu: require LLVM 3.6.1 for VI because of bug fixes there winsys/amdgpu: remove amdgpu_winsys::num_cpus winsys/amdgpu: align BO size to page size winsys/amdgpu: reduce BO cache timeout winsys/amdgpu: remove useless flushing and waiting in amdgpu_bo_set_tiling winsys/amdgpu: use amdgpu_device_handle as a unique device ID instead of fd winsys/amdgpu: use safer access to amdgpu_fence_wait::signalled winsys/amdgpu: allow maximum IB size of 4 MB winsys/amdgpu: add ip_instance into amdgpu_fence gallium/radeon: add RING_COMPUTE instead of RADEON_FLUSH_COMPUTE winsys/amdgpu: set the ring type at CS initilization winsys/amdgpu: query the GART page size from the kernel winsys/amdgpu: correctly wait for shared buffers to become idle winsys/amdgpu: set the amdgpu_cs_fence structure only once at fence creation winsys/amdgpu: add a specific error message for cs_submit -> -ENOMEM winsys/amdgpu: check num_active_ioctls before calling amdgpu_bo_wait_for_idle winsys/amdgpu: clear user fence BO after allocating it winsys/amdgpu: fix user fences winsys/amdgpu: make amdgpu_winsys_create public winsys/amdgpu: remove thread offloading winsys/amdgpu: flatten the amdgpu_cs_context structure and simplify more v4: require libdrm 2.4.63
* st/vdpau: add HEVC support v2Christian König2015-08-141-1/+1
| | | | | | | v2: fix return code Signed-off-by: Christian König <[email protected]> Reviewed-by: Leo Liu <[email protected]>
* configure.ac: Always define __STDC_LIMIT_MACROS.Matt Turner2015-08-111-1/+1
| | | | | | | ... which ensures that we get defines like LONG_MAX in C++. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91591 Reviewed-by: Jose Fonseca <[email protected]>
* mesa: Add -fno-trapping-math to CFLAGS.Matt Turner2015-08-031-2/+2
| | | | | | | | | | Cuts about 1k of .text size. text data bss dec hex filename 4983676 197808 26328 5207812 4f7704 i965_dri.so before 4982522 197800 26328 5206650 4f727a i965_dri.so after Reviewed-by: Roland Scheidegger <[email protected]>
* mesa: Add -fno-math-errno to CFLAGS.Matt Turner2015-08-031-0/+3
| | | | | | | | | | | | | Cuts about 9k of .text size. text data bss dec hex filename 4992804 197808 26328 5216940 4f9aac i965_dri.so before 4983676 197808 26328 5207812 4f7704 i965_dri.so after Also, Darwin's libm does not ever set errno, so if we care about those systems we shouldn't rely on errno anyway. Reviewed-by: Roland Scheidegger <[email protected]>
* opencl: use versioned .so in mesa.icdIgor Gnatenko2015-08-011-0/+3
| | | | | | | | | | | | We must have versioned library in mesa.icd, because ICD loader would fail if the mesa-devel package wasn't installed. Cc: "10.6" <[email protected]> Reported-by: Fabian Deutsch <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=73512 Signed-off-by: Igor Gnatenko <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Acked-by: Michel Dänzer <[email protected]>
* configure.ac: check for mkostemp()Emil Velikov2015-08-011-0/+1
| | | | | | | | We can make use of it over mkstemp + fcntl in the egl/wayland code. Cc: Axel Davy <[email protected]> Suggested-by: Matt Turner <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* egl/wayland: use drmGetNodeTypeFromFd helper instead of opencoding itEmil Velikov2015-08-011-1/+1
| | | | | | Cc: Axel Davy <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Acked-by: Boyan Ding <[email protected]>
* egl/wayland: libdrm is a hard requirement, treat it as suchEmil Velikov2015-08-011-0/+3
| | | | | | | | Prompt at configure time if it's missing otherwise we'll fail later on in the build. Remove ambiguous HAVE_LIBDRM guard. Cc: 10.6 <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* configure.ac: null,android,gdi are not valid egl-platformsEmil Velikov2015-08-011-3/+0
| | | | | | | | | | ... and update the documentation to reflect reality. null and gdi are gone, and surfaceless is a recent addition. v2: s/platforms/platform/ (spotted by Thomas) Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Thomas Helland <[email protected]>
* automake: rework the EGL buildEmil Velikov2015-07-221-2/+1
| | | | | | | | | | | Simplify things by merging the two makefiles. This way we can combine the duplicated HAVE_PLATFORM_ checks, and build the library without having a separate static library. v2: use $() when referencing variables, use correct define (Matt) Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* dri/common: remove unused drm_version variableEmil Velikov2015-07-221-21/+0
| | | | | | | | | | | | As of last commit the only user of it (radeon/r200) no longer uses it. As such let's remove it and cleanup the nasty hacks that we had in place to support this. v2: Leave LIBDRM_CFLAGS around. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Michel Dänzer <[email protected]> (v1) Reviewed-by: Marek Olšák <[email protected]> (v1)
* configure.ac: do not set HAVE_DRI(23) when libdrm is missingEmil Velikov2015-07-221-9/+9
| | | | | | | | | | | | These conditionals are used to guard both dri modules and loader(s). Currently if we try to build the gallium swrast dri module (without glx) on a system that's missing libdrm the build will fail. v2: Make sure we assign prior to checking the have_libdrm variable. Cc: 10.6 <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* mesa: Detect and provide macros for function attributes pure and const.Eric Anholt2015-07-171-0/+2
| | | | | | | | | | | | | These are really useful hints to the compiler in the absence of link-time optimization, and I'm going to use them in VC4. I've made the const attribute be ATTRIBUTE_CONST unlike other function attributes, because we have other things in the tree #defining CONST for their own unrelated purposes. v2: Alphabetize. Reviewed-by: Kenneth Graunke <[email protected]> (v1)
* i965: bump libdrm requirement to 2.4.61 and drop in-tree workaroundEmil Velikov2015-07-131-1/+1
| | | | | Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Samuel Iglesias Gonsálvez <[email protected]>
* pipe-loader: remove pipe_loader_sw_probe_xlibEmil Velikov2015-07-131-11/+2
| | | | | | | | | 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 <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* automake: remove empty GALLIUM_PIPE_LOADER_LIBSEmil Velikov2015-07-131-1/+0
| | | | | | Cc: Rob Clark <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* automake: pipe-loader: remove the 'client' pipe-loaderEmil Velikov2015-07-131-11/+0
| | | | | | | | | | Was only around as opencl's pipe-loader wanted to link against xcb in some cases. Cc: Rob Clark <[email protected]> Cc: Tom Stellard <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Francisco Jerez <[email protected]>
* darwin: Suppress type conversion warnings for GLhandleARBJulien Isorce2015-07-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch and its description are inspired from Jose Fonseca explanations and suggestions. With this patch the following logic applies and only if __APPLE__: When building mesa, GLhandleARB is defined as unsigned long and at some point casted to GLuint in gl fuction implementations. These exact points are where these errors and warnings appear. When building an application GLhandleARB is defined as void*. Later when calling a gl function, for example glBindAttribLocationARB, it will be dispatched to _mesa_BindAttribLocation. So internally void* will be treated as unsigned long which has the same size. So the same truncation happens when casting it to GLuint. Same when GLhandleARB appears as return value. For mesa it will be GLuint -> unsigned long. For an application it will be GLuint -> unsigned long -> void*. Note that the value will be preserved when casting back to GLuint. When GLhandleARB appears as a pointer there are also separate entry-points, i.e. _mesa_FuncNameARB. So the same logic can be applied. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=66346 Signed-off-by: Julien Isorce <[email protected]> Reviewed-by: Jose Fonseca <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* mesa: Add a MUST_CHECK macro for __attribute__((warn_unused_result)).Kenneth Graunke2015-07-061-0/+1
| | | | | | | | | In the kernel, this is called __must_check; all our attribute macros in Mesa appear to be uppercase, so I went with that. Signed-off-by: Kenneth Graunke <[email protected]> Reviewed-by: Chris Wilson <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* nvc0: create screen fence objects with coherent attributeAlexandre Courbot2015-07-021-1/+1
| | | | | | | | | | | | | | | This is required on non-coherent architectures to ensure the value of the fence is correct at all times. Failure to do this results in the display freezing for a few seconds every now and then on Tegra. The NOUVEAU_BO_COHERENT is a no-op for coherent architectures, so behavior on x86 should not be affected by this patch. Also bump the required libdrm version to 2.4.62, which introduced this flag. Signed-off-by: Alexandre Courbot <[email protected]> Reviewed-by: Martin Peres <[email protected]>
* nouveau: rename var name for nouveau_vieux to avoid conflict with nouveauIlia Mirkin2015-07-011-1/+1
| | | | | | | | | | | | We want to require different versions for nouveau and nouveau_vieux. autoconf will only check for NOUVEAU once if both drivers are enabled, meaning both version checks don't get executed. Rename the nouveau_vieux one to NVVIEUX to avoid the issue. Signed-off-by: Ilia Mirkin <[email protected]> Tested-by: Alexandre Courbot <[email protected]> Tested-by: Martin Peres <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* mesa: Enable subdir-objects globally.Matt Turner2015-06-261-1/+1
| | | | Reviewed-by: Emil Velikov <[email protected]>
* configure: drop unused variable GBM_BACKEND_DIRSEmil Velikov2015-06-231-1/+0
| | | | | Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* configure: error out when building libEGL without shared-glapiEmil Velikov2015-06-231-0/+3
| | | | | | | | | The latter is a hard requirement and without it we'll error out later on in the build. Cc: "10.5 10.6" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* configure: error out when building backend-less libEGLEmil Velikov2015-06-231-2/+6
| | | | | | Cc: "10.5 10.6" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* configure: allow building shared-glapi powered libgl-xlibEmil Velikov2015-06-231-6/+0
| | | | | | | | Cc: Brian Paul <[email protected]> Cc: Adam Jackson <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Acked-by: Jose Fonseca <[email protected]>
* configure: warn about shared_glapi & xlib-glx only when both are setEmil Velikov2015-06-231-1/+1
| | | | | | | | | Printing out the message when shared_glapi is disabled only leads to confusion. Cc: "10.5 10.6" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* egl/dri2: implement platform_surfacelessHaixia Shi2015-06-161-0/+6
| | | | | | | | | | | | | | | | | | The surfaceless platform is for off-screen rendering only. Render node support is required. Only consider the render nodes. Do not use normal nodes as they require auth hooks. v3: change platform_null to platform_surfaceless v4: make libdrm required for surfaceless v5: remove modified include guards with defined(HAVE_SURFACELESS_PLATFORM) v6: use O_CLOEXEC for drm fd Signed-off-by: Haixia Shi <[email protected]> Signed-off-by: Zach Reizner <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Chad Versace <[email protected]>
* configure.ac: rename LLVM_VERSION_PATCH to avoid conflict with llvm-config.hMarek Olšák2015-06-161-1/+1
| | | | Reviewed-by: Tom Stellard <[email protected]>
* radeon/llvm: Handle LLVM backend rename from R600 to AMDGPUTom Stellard2015-06-121-5/+8
| | | | Reviewed-by: Marek Olšák <[email protected]>
* vc4: Drop subdirectory in vc4 build.Eric Anholt2015-06-091-1/+0
| | | | | Just because we put the source in a subdir, doesn't mean we need helper libraries in the build. This will also simplify the Android build setup.
* configure.ac: Link mcdisassembler component.Jose Fonseca2015-05-291-1/+1
| | | | | | | | gallivm now depends on it. And depending on particular LLVM version / configure options, the build can fail without this change due to undefined reference to `LLVM*Disasm*' symbols. Trivial.
* configure.ac: Don't bother checking whether LLVM's MCJIT component is available.Jose Fonseca2015-05-291-4/+1
| | | | | | Now that we require LLVM 3.3, MCJIT is guaranteed to be available. Trvial.
* configure.ac: enable building GLES1 and GLES2 by defaultMarek Olšák2015-05-291-6/+6
| | | | | Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* swrast: Build fix for SolarisAlan Coopersmith2015-05-201-0/+1
| | | | | | | | Fixes regression from commit 5b2d3480f57168d50ad24cf0b8c9244414bd3701 Cc: "10.5 10.6" <[email protected]> Signed-off-by: Alan Coopersmith <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]>
* clover: make llvm >= 3.5.0 and c++11 mandatoryEdB2015-04-201-21/+11
| | | | | | | | | Clover not longer compile with llvm <= 3.5.0 since e1d363b3. e1d363b3 implies c++11 and llvm 3.5.0 CXXFLAGS provided it. No one seems to have noticed it, it's now official. Acked-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* configure.ac: fix bashismTobias Nygren2015-04-171-1/+1
| | | | | Reviewed-by: Matt Turner <[email protected]> Signed-off-by: Tobias Nygren <[email protected]>
* configure.ac: print LLVM_LDFLAGSMarek Olšák2015-04-161-0/+1
| | | | | Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* mesa: Remove pointless USE_EXTERNAL_DXTN_LIB macro.Jose Fonseca2015-04-131-1/+1
| | | | | | | I'm not sure what was the original intention, but currently USE_EXTERNAL_DXTN_LIB always ends up defined, one way or another. Reviewed-by: Roland Scheidegger <[email protected]>
* configure.ac: remove deprecated --with-libclc-pathEmil Velikov2015-04-121-13/+0
| | | | | | | | | The option was deprecated with commit 959e83d6507(clover: Adapt libclc's INCLUDEDIR and LIBEXECDIR to make use of the new introduced libclc.pc.) back in 2012 with mesa 9.2. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* configure: nuke --with-max-{width,height}Emil Velikov2015-04-011-15/+0
| | | | | | | | | | Unused as of commit 630ab0d27ba(mesa: remove last of MAX_WIDTH, MAX_HEIGHT). Update all the remaining references to the defines. v2: Use the correct variable name in the comments Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Brian Paul <[email protected]>
* configure.ac: error out if python/mako is not found when requiredEmil Velikov2015-04-011-2/+11
| | | | | | | | | | | | In case of using a distribution tarball (or a dirty git tree) one can have the generated sources locally. Make configure.ac error out otherwise, to alert that about the unmet requirement(s) of python/mako. v2: Check only for a single file for each dependency. Suggested-by: Matt Turner <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* configure.ac: move AC_MSG_RESULT reporting back into the m4 macroEmil Velikov2015-03-241-3/+1
| | | | | | | | | | | | The one who does AC_MSG_CHECKING should provide the AC_MSG_RESULT. Fixes: ced9425327b (configure: Introduce new output variable to ax_check_python_mako_module.m4" Cc: "10.5" <[email protected]> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89328 Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Samuel Iglesias Gonsalvez <[email protected]>
* configure: Bail out with MinGW targets.Jose Fonseca2015-03-221-12/+13
| | | | | | | | | | We only support native Windows builds with SCons. Tested with: ./configure --host=i686-w64-mingw32 Reviewed-by: Brian Paul <[email protected]>
* galahad: remove driverEmil Velikov2015-03-211-1/+0
| | | | | Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* egl/main: drop platform fbdev specific codeEmil Velikov2015-03-211-2/+1
| | | | | | | st/egl was the only one which had support for this platform. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>