summaryrefslogtreecommitdiff
path: root/configure.ac
AgeCommit message (Collapse)AuthorFilesLines
2017-04-17EGL: Implement the libglvnd interface for EGL (v3)Kyle Brenneman1-4/+8
The new interface mostly just sits on top of the existing library. The only change to the existing EGL code is to split the client extension string into platform extensions and everything else. On non-glvnd builds, eglQueryString will just concatenate the two strings. The EGL dispatch stubs are all generated. The script is based on the one used to generate entrypoints in libglvnd itself. v2: [Kyle] - Rebased against master. - Reworked the EGL makefile to use separate libraries - Made the EGL code generation scripts work with Python 2 and 3. - Change gen_egl_dispatch.py to use argparse for the command line arguments. - Assorted formatting and style cleanup in the Python scripts. v3: [Emil Velikov] - Rebase - Remove separate glvnd glx/egl configure toggles Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-17configure.ac: honour --disable-libunwind if the .pc file is presentEmil Velikov1-1/+2
We should check the presence in order to determine if we should [implicitly] set the CFLAGS/LIBS v2: Drop spurious OMX hunk (Eric) Cc: Eric Anholt <eric@anholt.net> Reported-by: Eric Anholt <eric@anholt.net> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-15etnaviv: native fence fd supportPhilipp Zabel1-1/+1
This adds native fence fd support to etnaviv, similarly to commit 0b98e84e9ba0 ("freedreno: native fence fd"), enabled for kernel driver version 1.1 or later. Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de> Reviewed-By: Wladimir J. van der Laan <laanwj@gmail.com> Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com>
2017-04-14configure.ac: add --enable-sanitize optionNicolai Hähnle1-1/+27
Enable code sanitizers by adding -fsanitize=$foo flags for the compiler and linker. In addition, this also disables checking for undefined symbols: running the address sanitizer requires additional symbols which should be provided by a preloaded libasan.so (preloaded for hooking into malloc & friends globally), and the undefined symbols check gets tripped up by that. Running the tests works normally via `make check`, but shows additional failures with the address sanitizer due to memory leaks that seem to be mostly leaks in the tests themselves. I believe those failures should really be fixed. In the mean-time, you can set export ASAN_OPTIONS=detect_leaks=0 to only check for more serious error types. v2: - fail reasonably when an unsupported sanitize flag is given (Eric Engestrom) Reviewed-by: Bartosz Tomczyk <bartosz.tomczyk86@gmail.com> (v1) Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-10configure.ac: require libdrm_amdgpu 2.4.79Samuel Pitoiset1-1/+1
The sensor info requires amdgpu_query_sensor_info(). Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2017-04-05swr: [configure.ac/scons] require c++14Tim Rowley1-4/+4
New C++ features used by upcoming swr changes. Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
2017-04-05configure.ac: pthread-stubs is not a thing on GNU/kFreeBSDEmil Velikov1-1/+1
As mentioned on the xcb mailing list, the platform uses the GLIBC forwarding mechanism. https://lists.freedesktop.org/archives/xcb/2016-November/010896.html Cc: Andreas Boll <andreas.boll.dev@gmail.com> Reported-by: Andreas Boll <andreas.boll.dev@gmail.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-04-05configure.ac: require libdrm_amdgpu 2.4.77Nicolai Hähnle1-1/+1
The sparse buffer implementation requires amdgpu_bo_va_op_raw. Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2017-04-03util/u_atomic: provide 64bit atomics where they're missingGrazvydas Ignotas1-0/+14
There are still some distributions trying to support unfortunate people with old or exotic CPUs that don't have 64bit atomic operations. When compiling for such a machine, gcc conveniently inserts a library call to a helper, but it's implementation is missing and we get a linker error. This allows us to provide our own implementation, which is marked weak to prefer a better implementation, should one exist. v2: changed copyright, some style adjustments v3: [mattst88] Print results with AC_MSG_CHECKING/AC_MSG_RESULT Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93089 Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-04-03gallium/util: libunwind supportRob Clark1-0/+24
It's kinda sad that (a) we don't have debug_backtrace support on !X86 and that (b) we re-invent our own crude backtrace support in the first place. If available, use libunwind instead. The backtrace format is based on what xserver and weston use, since it is nice not to have to figure out a different format. Signed-off-by: Rob Clark <robdclark@gmail.com> Acked-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2017-03-30configure.ac: require libdrm_amdgpu 2.4.76 for VegaMarek Olšák1-1/+1
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2017-03-22configure.ac: Do not strip away space after regex word match.Vinson Lee1-3/+3
Fixes: 62c48ccb413b ("configure.ac: Use POSIX compatible regex for word boundary.") Signed-off-by: Vinson Lee <vlee@freedesktop.org>
2017-03-21configure.ac: Use POSIX compatible regex for word boundary.Vinson Lee1-8/+8
Fixes build error on Mac OS X. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100236 Suggested-by: Jan Beich <jbeich@freebsd.org> Suggested-by: Michel Dänzer <michel@daenzer.net> Signed-off-by: Vinson Lee <vlee@freedesktop.org> Reviewed-by: Eric Engestrom <eric@engestrom.ch> Acked-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-15configure.ac: bump pthread-stubs requirementEmil Velikov1-1/+1
On platforms that require it, we bump the requirement to 0.4 or later. Due to an issue with the project [design] any version earlier than it, is bound to cause issues. For the specifics see the pthread-stubs README Cc: Uli Schlachter <psychon@znc.in> Cc: Jonathan Gray <jsg@jsg.id.au> Cc: Jean-Sébastien Pédron <dumbbell@FreeBSD.org> Cc: François Tigeot <ftigeot@wolfpond.org> Cc: Tobias Nygren <tnn@NetBSD.org> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2017-03-15anv: do not open random render node(s)Emil Velikov1-2/+1
drmGetDevices2() provides us with enough flexibility to build heuristics upon. Opening a random node on the other hand will wake up the device, regardless if it's the one we're interested or not. v2: Rebase, explicitly require/check for libdrm v3: Return VK_ERROR_INCOMPATIBLE_DRIVER for no devices (Ilia) v4: Rebase Cc: Jason Ekstrand <jason.ekstrand@intel.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v1) Tested-by: Mike Lothian <mike@fireburn.co.uk>
2017-03-15radv/winsys: use drmGetDevice2 APIEmil Velikov1-0/+1
Analogous to previous commit v2: Add explicit require_libdrm check. Cc: Dave Airlie <airlied@redhat.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> (v1) Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> (v1) Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v1) Tested-by: Mike Lothian <mike@fireburn.co.uk>
2017-03-15autoconf/scons: bump libdrm to 2.4.75Emil Velikov1-1/+1
We'll be using the drmGetDevice[s]2 API in src/loader with next patch. v2: Rebase. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Michel Dänzer <michel.daenzer@amd.com> (v1) Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v1) Tested-by: Mike Lothian <mike@fireburn.co.uk>
2017-03-14Convert sed(1) syntax to be compatible with FreeBSD and OpenBSDJan Beich1-10/+10
BSD regex library doesn't support extended RE escapes (e.g. \+) and shorthand character classes (e.g. \s, \S) and SVR4-style word delimiters[1] (on DragonFly and NetBSD). Both GNU and BSD sed support -E and -r to enable extended RE but OS X still lacks -r. [1] https://www.illumos.org/issues/516 Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> Tested-by: Eric Engestrom <eric.engestrom@imgtec.com> (GNU sed)
2017-03-13aubinator/genxml: use gzipped files to store embedded genxmlLionel Landwerlin1-1/+0
This reduces the size of the aubinator binary from ~1.4Mb to ~700Kb. With can now drop the checks on xxd in configure. v2: Fix incorrect makefile dependency (Lionel) v3: use $(PYTHON2) (Emil) Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-13configure.ac: require pthread-stubs only where availableEmil Velikov1-2/+3
The project is a thing only for BSD platforms. Or in other words - for any other platforms building/installing pthread-stubs results only in a pthread-stub.pc file. And even where it provides a DSO, there's a fundamental design issue with it - see the pthread-stubs mailing list for the specifics. v2: Update comment above the switch statement (Jon Turney). Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Acked-by: Gary Wong <gtw@gnu.org> Tested-by: Eric Engestrom <eric.engestrom@imgtec.com> Acked-by: Randy Fishel <randy.fishel@oracle.com> Cc: Niveditha Rau <niveditha.rau@oracle.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-13configure.ac: do not require the i965 driver for ANVEmil Velikov1-3/+2
As of last few commits we have the two split, thus we no longer require the i965 in order to have the ANV driver. Even though ANV does not link against libdrm nor libdrm_intel, we still require those as dependencies due to the headers they provide. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-13intel/vulkan: Get rid of recursive makeJason Ekstrand1-1/+0
v2 [Emil Velikov] - Various fixes and initial stab at the Android build. - Keep the generation rules/EXTRA_DIST outside the conditional Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-13intel/tools: Use a makefile included from intel/Makefile.amJason Ekstrand1-1/+0
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-13configure.ac: provide a fall-back define for WAYLAND_SCANNEREmil Velikov1-2/+2
In some cases, we can end up calling WAYLAND_SCANNER even when there's no binary. Do follow the other's approach set by AX_PROG_FLEX/BISON and set the variable to : Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-07Revert "configure.ac: Use PKG_CHECK_VAR for wayland-scanner."Matt Turner1-1/+6
This reverts commit 8a26e944399ae4d0fd662e5106f0b34f5ced462d.
2017-03-07Revert "configure.ac: Use PKG_CHECK_VAR for libclc."Matt Turner1-2/+4
This reverts commit 706074cc96cec8bad6c3569fc53b0b3a05ad176f.
2017-03-07configure.ac: Ensure libomxil-bellagio exists before invoking pkg-config.Matt Turner1-1/+2
I was already tired of seeing the message Package libomxil-bellagio was not found in the pkg-config search path. Perhaps you should add the directory containing `libomxil-bellagio.pc' to the PKG_CONFIG_PATH environment variable No package 'libomxil-bellagio' found on every configure, but I just got a distro bug reported where the user was confused by this message and thought it indicated a bug. Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-07configure.ac: Ensure libva is enabled before invoking pkg-config.Matt Turner1-2/+4
PKG_CHECK_VAR can only check --variable=$NAME, so it cannot handle modversion. Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-07configure.ac: Use PKG_CHECK_VAR for libclc.Matt Turner1-4/+2
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-07configure.ac: Use PKG_CHECK_VAR for wayland-scanner.Matt Turner1-6/+1
Available since pkg-config-0.28 and pkgconf-0.8.10. The removal of the AC_PATH_PROG is intentional. Use pkg-config. Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-07configure.ac: Fix error message in radeon_llvm_check().Matt Turner1-1/+1
It printed the version of LLVM ($1): configure: error: 3.6.0 requires libelf when using llvm instead of the driver name ($2): configure: error: r600 requires libelf when using llvm Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Tobias Droste <tdroste@gmx.de>
2017-03-07build: Replace NEED_RADEON_LLVM with HAVE_GALLIUM_LLVM.Matt Turner1-2/+0
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-03-06radeonsi: drop support for LLVM 3.6 & 3.7Marek Olšák1-2/+2
They are too old. Reviewed-by: Dave Airlie <airlied@redhat.com>
2017-03-05configure.ac: increase required swr llvm to 3.9.0Tim Rowley1-1/+1
GS implementation uses the masked.{gather,store} intrinsics, introduced in llvm-3.9.0. swr llvm version requirement in automake and scons now match (scons already needed >= 3.9). Reviewed-by: Bruce Cherniak <bruce.cherniak@intel.com>
2017-03-03util/disk_cache: compress individual cache entriesTimothy Arceri1-0/+4
This reduces the cache size for Deus Ex from ~160M to ~30M for radeonsi (these numbers differ from Grigori's results below probably due to different graphics quality settings). I'm also seeing the following improvements in minimum fps in the Shadow of Mordor benchmark on an i5-6400 CPU@2.70GHz, with a HDD: no-cache: ~10fps with-cache-no-compression: ~15fps with-cache-and-compression: ~20fps Note: The with cache results are from the second run after closing and opening the game to avoid the in-memory cache. Since we mainly care about decompression I went with Z_BEST_COMPRESSION as suggested on irc by Steinar H. Gunderson who has benchmarked decompression speeds. Grigori Goronzy provided the following stats for Deus Ex: Mankind Divided start-up times on a Athlon X4 860k with a SSD: No Cache 215 sec Cold Cache zlib BEST_COMPRESSION 285 sec Warm Cache zlib BEST_COMPRESSION 33 sec Cold Cache zlib BEST_SPEED 264 sec Warm Cache zlib BEST_SPEED 33 sec Cold Cache no compression 266 sec Warm Cache no compression 34 sec The total cache size for that game is 48 MiB with BEST_COMPRESSION, 56 MiB with BEST_SPEED and 170 MiB with no compression. These numbers suggest that it may be ok to go with Z_BEST_SPEED but we should gather some actual decompression times before doing so. Other options might be to do the compression in a separate thread, this might allow us to use a higher compression algorithim such as LZMA. Reviewed-by: Grigori Goronzy <greg@chown.ath.cx> Acked-by: Marek Olšák <marek.olsak@amd.com>
2017-03-02clover: Work around build failure with AltiVec.Matt Turner1-0/+14
Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=587210 Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68504 Acked-by: Francisco Jerez <currojerez@riseup.net>
2017-03-01r600g: fix build without opencl and static llvm libsMarc Dietrich1-1/+1
radeon_llvm_check and friends were never called in the no-opencl case, which ended up with an empty llvm module list. As --enable-opencl always requires --enable-llvm, we can use the latter as the guard. Signed-off-by: Marc Dietrich <marvin24@gmx.de> [Emil Velikov: commit message polish] Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-02-24configure.ac: check require_basic_egl only if egl enabledLeo Liu1-1/+3
Otherwise the configuration fails when building independant libs like vdpau, vaapi or omx Fixes: 1ac40173c2a ("configure.ac: simplify EGL requirements for drivers dependent on EGL") Signed-off-by: Leo Liu <leo.liu@amd.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Cc: "17.0" <mesa-stable@lists.freedesktop.org>
2017-02-22vulkan: Combine wsi and util makefilesDylan Baker1-2/+1
Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-02-22vulkan/util: Add generator for enum_to_str functionsDylan Baker1-0/+1
This adds a python generator to produce enum_to_str functions for Vulkan from the vk.xml API description. It supports extensions as well as core API features, and the generator works with both python2 and python3. Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Acked-by: Matt Turner <mattst88@gmail.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-02-16configure.ac: remove unneeded trailing semicolonEmil Velikov1-11/+11
Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-02-16configure.ac: bump LIBDRM_RADEON requirement to 2.4.71Emil Velikov1-1/+1
Such that we can remove all the local fall-back definitions and use the official UABI ones. Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2017-02-15util: Add utility build-id code.Matt Turner1-0/+6
Provides the ability to read the .note.gnu.build-id section of ELF binaries, which is inserted by the --build-id=... flag to ld. Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Chad Versace <chadversary@chromium.org>
2017-02-13configure.ac: check for libXdamage 1.1 or laterEmil Velikov1-1/+2
Released back in 2007 so it should not be an issue for anyone building from git. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-02-13configure.ac: dump dri2proto requirement to 2.8Emil Velikov1-1/+1
dri2proto 2.8 was released 4+ years ago, so it must be of no surprise for anyone building mesa from git. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-02-13configure.ac: do not use deprecated macros - AC_HELP_STRING AC_ERROREmil Velikov1-2/+2
Replace with AS_HELP_STRING and AC_MSG_ERROR respectively, as spotted by autoupdate. Note that the suggested AC_CANONICAL_SYSTEM > AC_CANONICAL_TARGET change is not addressed here since that requires very extensive testing. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-02-13configure.ac: Drop LLVM compiler flags more radicallyMichel Dänzer1-21/+12
Drop all -m*, -W*, -O*, -g* and -f* flags, with the exception of -fno-rtti, which must be used if it's part of the llvm-config --cxxflags output. We don't want LLVM to dictate the flags we use, and it can even cause build failures, e.g. if LLVM and Mesa are built with different compilers. While we're at it, eat any whitespace preceding dropped flags as well. Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-02-10configure.ac: supersede --enable-gallium-llvm over --enable-llvmEmil Velikov1-19/+30
Currently we have extra (somewhat questionable) modularity, such that one could build some parts with LLVM while others w/o. That is extremely fragile, error prone and requires quite noticable amount of code throughout. Thus lets deprecate the gallium toggle in faviour of the generic one. The former will throw a warning when set, and it will be overwritten by the latter. This will allow gradual transition w/o breaking people's scripts. v2: Rebase, document in release notes. Cc: Dave Airlie <airlied@redhat.com> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Tobias Droste <tdroste@gmx.de> (v1)
2017-02-10configure.ac: remove dummy radeon_gallium_llvm_check()Emil Velikov1-9/+2
The extra function brings no added benefit as of earlier commit which made llvm_require_version (as called by radeon_llvm_check) require LLVM (--enable-gallium-llvm). Fixes: 5f966a96af7 "configure.ac: Mandate --enable-gallium-llvm when checking LLVM version" Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Tobias Droste <tdroste@gmx.de>
2017-02-10configure.ac: correctly manage llvm auto-detectionEmil Velikov1-4/+8
Earlier refactoring commits changed from one, dare I say it, broken behaviour to another. Namely: Before, as you explicitly --enable-gallium-llvm your selection was ignored when llvm-config was not present/detected. Today, the "auto" heuristics enables gallium llvm regardless if you have llvm/llvm-config available or not. Rework the auto-detection to attribute for llvm's presence. v2: Set enable_gallium_llvm=no when LLVM is not found. Cc: "17.0" <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Tobias Droste <tdroste@gmx.de> Reported-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Tested-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>