summaryrefslogtreecommitdiffstats
path: root/meson.build
Commit message (Collapse)AuthorAgeFilesLines
* disk cache: Link with -latomic if necessaryThierry Reding2018-03-021-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | The disk cache implementation uses 64-bit atomic operations. For some architectures, such as 32-bit ARM, GCC will not be able to translate these operations into atomic, lock-free instructions and will instead rely on the external atomics library to provide these operations. Check at configuration time whether or not linking against libatomic is necessary and if so, create a dependency that can be used while linking the mesautil library. This is the meson equivalent of 2ef7f23820a6 ("configure: check if -latomic is needed for __atomic_*"). For some background information on this, see: https://gcc.gnu.org/wiki/Atomic/GCCMM Changes in v2: - clarify meaning of lock-free in commit message - fix build if -latomic is not necessary Acked-by: Matt Turner <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Signed-off-by: Thierry Reding <[email protected]>
* meson: fix LLVM version detection when <= 3.4Andres Gomez2018-03-011-1/+8
| | | | | | | | | | | | | | | | | | | | | | | 3 digits versions in LLVM only started from 3.4.1 on. Hence, even if you can perfectly build with an old LLVM (< 3.4.1) in the system while not needing LLVM at all (auto), when passing through the LLVM version detection code, meson will fail when accessing "_llvm_version[2]" due to: "Index 2 out of bounds of array of size 2." v2: Properly compare LLVM version and set patch version to 0 if < 3.4.1 (Eric). v3: Improve the commit log explanation (Eric). Cc: Dylan Baker <[email protected]> Cc: Eric Engestrom <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Reviewed-by: Emil Velikov <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: avoid changing types for the dri3 optionEric Engestrom2018-02-271-3/+3
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: simplify the gbm option code, and avoid changing typesEric Engestrom2018-02-271-9/+7
| | | | | | | v2: drop gallium comment (Dylan) Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* *-symbol-check: use correct `nm` path when cross-compilingEric Engestrom2018-02-261-0/+3
| | | | | | Inspired-by: a similar patch for libdrm by Heiko Becker Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* swr: bump minimum supported LLVM version to 4.0Andres Gomez2018-02-201-2/+2
| | | | | | | | | | | | | | | | | | Since radv and radeonsi removed support for LLVM 3.9 the distcheck target got broken because SWR distribution needed 3.9.x. After checking with George Kyriazis, SWR is OK with moving to LLVM 4.0 and above, which will solve this problem. Fixes: 3bf1e036e8a ("amd: remove support for LLVM 3.9") Cc: George Kyriazis <[email protected]> Cc: Tim Rowley <[email protected]> Cc: Emil Velikov <[email protected]> Cc: Dylan Baker <[email protected]> Cc: Eric Engestrom <[email protected]> Signed-off-by: Andres Gomez <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Reviewed-by: George Kyriazis <[email protected]>
* ac: query high bits of 32-bit address spaceMarek Olšák2018-02-171-1/+1
|
* meson: Add Haiku platform support v4Alexander von Gluck IV2018-02-161-4/+12
| | | | Reviewed-by: Dylan Baker <[email protected]>
* meson: Actually link xvmc target with libxvmcDylan Baker2018-02-151-3/+0
| | | | | | | | | Unlike vdpau this is required. Fixes: 22a817af8a89eb3c7 ("meson: build gallium xvmc state tracker") Signed-off-by: Dylan Baker <[email protected]> Acked-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* meson: actually link with libomxil-bellagioDylan Baker2018-02-151-5/+0
| | | | | | | | | This state tracker actually needs to link, unlike vdpau. Fixes: 1d36dc674d528b93b ("meson: build gallium omx state tracker") Signed-off-by: Dylan Baker <[email protected]> Acked-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* meson: use va-api version reported by pkg-configDylan Baker2018-02-151-1/+1
| | | | | | | Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker") Signed-off-by: Dylan Baker <[email protected]> Acked-by: Eric Engestrom <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* meson: Add build option for toolsScott D Phillips2018-02-081-0/+4
| | | | | | | | | | | | | | | Add a build option to control building some of the misc tools we have. Also set the executables to install, presumably you want that if you're asking for the build. v2: set 'install:' to the with_tools value, not true (Jordan) handle 'all' in a the comma list (Dylan) Add freedreno's tools (Dylan) Reviewed-by: Eric Anholt <[email protected]> Reviewed-by: Jordan Justen <[email protected]> Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: osx ld doesn't support --build-idJon Turney2018-02-051-0/+4
| | | | | Signed-off-by: Jon Turney <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: set apple glx definesDylan Baker2018-02-051-0/+2
| | | | | Reviewed-by: Jon Turney <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* meson: better defaults for osx, windows and cygwinJon Turney2018-02-051-6/+15
| | | | | | | | | | | set suitable defaults for 'dri-drivers', 'gallium-drivers', 'vulkan-drivers' and 'platforms' options for osx, windows and cygwin, adding cygwin where appropriate. v2: error() for unknown OS Signed-off-by: Jon Turney <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* amd: remove support for LLVM 3.9Marek Olšák2018-02-021-3/+3
| | | | | | | | | | | Only these are supported: - LLVM 4.0 - LLVM 5.0 - LLVM 6.0 - master (7.0) Reviewed-by: Dylan Baker <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* meson: Check for actual LLVM required versionsDylan Baker2018-02-021-2/+10
| | | | | | | | | | | Currently we always check for 3.9.0, which is pretty safe since everything except radv work with >= 3.9 and 3.9 is pretty old at this point. However, radv actually requires 4.0, and there is a patch for radeonsi to do the same. Fixes: 673dda833076 ("meson: build "radv" vulkan driver for radeon hardware") Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Bas Nieuwenhuizen <[email protected]>
* meson: Don't confuse the install and search paths for dri driversDylan Baker2018-02-021-0/+4
| | | | | | | | | | | | | | | | | | | | | Currently there is not a separate option for setting the search path of DRI drivers in meson, like there is in scons and autotools. This is an oversight and needs to be fixed. This adds an extra option `dri-search-path`, which will default to the value of `dri-drivers-path`, like autotools does. v2: - Split input list before joining. v3: - use : instead of ; as the delimiter. The autotools help string incorrectly says ; but the code uses : v4: - Take list in pre : delimited form (Ilia) - Ensure that the dri-search-path is absolute when using dri_drivers_path Fixes: db9788420d4bc7b4 ("meson: Add support for configuring dri drivers directory.") Reported-by: Ilia Mirkin <[email protected]> Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Anholt <[email protected]> (v2) Reviewed-by: Eric Engestrom <[email protected]> (v3)
* meson: dedup gallium-xa logicEric Engestrom2018-01-311-15/+10
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: dedup gallium-va logicEric Engestrom2018-01-311-20/+18
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: dedup gallium-omx logicEric Engestrom2018-01-311-19/+19
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: dedup gallium-xvmc logicEric Engestrom2018-01-311-20/+18
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: dedup gallium-vdpau logicEric Engestrom2018-01-311-22/+19
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: libdrm shouldn't appear in Requires.private: if it wasn't foundJon Turney2018-01-271-2/+4
| | | | | | | | | | | | | | | Otherwise, using pkg-config to retrieve flags will fail, e.g. $ pkg-config gl --cflags Package libdrm was not found in the pkg-config search path. Perhaps you should add the directory containing `libdrm.pc' to the PKG_CONFIG_PATH environment variable Package 'libdrm', required by 'gl', not found Fixes: 3218056e0eb3 ("meson: Build i965 and dri stack") Reviewed-by: Dylan Baker <[email protected]> Signed-off-by: Jon Turney <[email protected]>
* meson: simplify dri3 logicEric Engestrom2018-01-251-8/+2
| | | | | Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: handle LLVM 'x.x.xgit-revision' versionsGreg V2018-01-241-2/+6
| | | | | | | | | | | When LLVM is built inside of a git repo (even way below, e.g. /usr/ports/.git exists, and LLVM is built in /usr/ports/devel/llvm50/work), its version becomes something like 5.0.0git-f8ab206b2176. New meson versions already handle this, but we support older versions too. Fixes: 673dda8330769 ("meson: build "radv" vulkan driver for radeon hardware") Reviewed-by: Dylan Baker <[email protected]>
* meson: fix getting cflags from pkg-configGreg V2018-01-241-4/+6
| | | | | | | | | | | | | | get_pkgconfig_variable('cflags') always returns an empty list, it's a function for getting *custom* variables. Meson does not yet support asking for cflags, so explicitly invoke pkg-config for now. Fixes: 68076b87474e ("meson: build gallium vdpau state tracker") Fixes: a817af8a89eb ("meson: build gallium xvmc state tracker") Fixes: 1d36dc674d52 ("meson: build gallium omx state tracker") Fixes: 5a785d51a6d6 ("meson: build gallium va state tracker") Reviewed-by: Dylan Baker <[email protected]>
* meson: fix BSD buildGreg V2018-01-241-26/+28
| | | | | | CC: 18.0 <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: fix HAVE_LLVM version define in meson buildMarc Dietrich2018-01-241-1/+1
| | | | | | | | | LLVM patch level is not included in HAVE_LLVM. Fixes: e6418ab1566d ("meson: build "radv" vulkan driver for radeon hardware") Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Signed-off-by: Marc Dietrich <[email protected]>
* meson: Fix define for USE_SSE41Scott D Phillips2018-01-241-1/+1
| | | | | | | | | | | Before we were adding -DHAVE_SSE41 which isn't what the code is looking for, so some uses of the sse4.1 code were always being skipped. v2: Don't add any compile check for the quite old -msse4.1 option (Dylan) Fixes: 84486f6462 ("meson: Enable SSE4.1 optimizations") Reviewed-by: Dylan Baker <[email protected]>
* meson: fix some defines misspelled errors in meson.buildMarc Dietrich2018-01-231-2/+2
| | | | | | | | | | Defines - HAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL - HAVE_FUNC_ATTRIBUTE_VISIBILITY were misspelled. Signed-off-by: Marc Dietrich <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: Set with_dri from with_gallium when DRI glx is explicitly configuredJon Turney2018-01-171-1/+5
| | | | | | | | Set with_dri from with_gallium when DRI GLX is explicitly configured, as well as when DRI GLX is chosen automatically. Signed-off-by: Jon Turney <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* android,configure,meson: define HAVE_ZLIBGrazvydas Ignotas2018-01-141-0/+1
| | | | | | | | | The next change wants to use some optional zlib functionality, however not all platforms currently use zlib. Based on earlier Jordan Justen's patches and their review feedback. Signed-off-by: Grazvydas Ignotas <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* Meson: ensure variable definedDylan Baker2018-01-081-0/+1
| | | | | | | | | A gallium driver is undefined if passing -Dgallium-drivers='' Fixes: e0b037d6979b2 ("meson: Build SWR driver") Signed-off-by: Dylan Baker <[email protected]> Acked-by: Jordan Justen <[email protected]> Acked-by: Jason Ekstrand <[email protected]>
* meson: Fix typo in clover buildDylan Baker2018-01-081-1/+1
| | | | | | | The leading space breaks things. fixes: 42ea0631f108d ("meson: build clover") Signed-off-by: Dylan Baker <[email protected]>
* meson: build cloverDylan Baker2018-01-081-4/+25
| | | | | | | | | | | | | | | | | This has only been compile tested. v2: - Have a single option for opencl (Eric E) - fix typo "tgis" -> "tgsi" (Curro) - Don't add "lib" to pipe loader libraries, which matches the autotools behavior v3: - Remove trailing whitespace - Make PIPE_SEARCH_DIR an absolute path v4: - add trailing / to LIBCLC defines Acked-by: Curro Jerez <[email protected]> Tested-by: Jan Vesely <[email protected]> cc: Aaron Watry <[email protected]> Signed-off-by: Dylan Baker <[email protected]>
* meson: Build SWR driverDylan Baker2018-01-081-6/+6
| | | | | | | | | | | | | | | | | This enables the SWR driver, but doesn't actually hook it up to any of the targets yet. I felt like this patch was big and complicated enough without adding that. v2: - Fix typo 'delemeited' -> 'delimited' (Eric E) - Fix type 'errror' -> 'error' (Eric E) - Use variables to hold files instead of looking above the current meson build (Eric E) - Use foreach loops to reduce the number of unique generators - Add comment about why some generators have names and some are just added to a list v3: - Remove trailing whitespace Signed-off-by: Dylan Baker <[email protected]>
* freedreno: context priority supportRob Clark2017-12-191-1/+1
| | | | | | | For devices (and kernels) which support different priority ringbuffers, expose context priority support. Signed-off-by: Rob Clark <[email protected]>
* configure/meson: Bump libdrm_amdgpu version requirement.Bas Nieuwenhuizen2017-12-181-1/+1
| | | | | | For the radv dependencies on syncobj signal/reset. Reviewed-by: Dave Airlie <[email protected]>
* meson: Fix building gallium media targets with gallium-xlib glxDylan Baker2017-12-071-3/+3
| | | | | | | | To demonstrate this bug run meson with the options: -Ddri-drivers= -Dglx=gallium-xlib Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: fix pl111 dependency on vc4Eric Engestrom2017-12-071-0/+3
| | | | | | | | src/gallium/winsys/pl111/drm/libpl111winsys.a(pl111_drm_winsys.c.o): In function `pl111_drm_screen_create': pl111_drm_winsys.c:(.text+0x33): undefined reference to `vc4_drm_screen_create_renderonly' Signed-off-by: Eric Engestrom <[email protected]> Reviewed-by: Dylan Baker <[email protected]>
* meson: build gallium nine state_trackerDylan Baker2017-12-041-3/+18
| | | | | | | | | | | v2: - set d3d_drivers_path instead of dri_drivers_path - Fix nine guard to check for all relavent gallium drivers - Link with libswdri and libswkmsdri when necessary - Fix pkg-config generation - Add missing comma Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: build gallium xa state trackerDylan Baker2017-12-041-0/+22
| | | | | Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: build gallium va state trackerDylan Baker2017-12-041-1/+40
| | | | | Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: build gallium omx state trackerDylan Baker2017-12-041-1/+59
| | | | | Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: build gallium xvmc state trackerDylan Baker2017-12-041-1/+40
| | | | | Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: build gallium vdpau state trackerDylan Baker2017-12-041-1/+44
| | | | | Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* meson: drop gallium-media argumentDylan Baker2017-12-041-17/+0
| | | | | | | | | | | This argument is the wrong approach for handling gallium media state trackers, since it doesn't allow for an auto option. Instead we'll use tristates, which do allow for auto. This option has never been wired to anything anyway. Signed-off-by: Dylan Baker <[email protected]> Reviewed-by: Eric Engestrom <[email protected]>
* util: Add a NORETURN macroJason Ekstrand2017-12-041-0/+4
| | | | | Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Ian Romanick <[email protected]>
* configure: avoid testing for negative compiler optionsMarc Dietrich2017-12-011-8/+15
| | | | | | | | | | | | | | | gcc seems to always accept unsupported negative compiler warning options: echo "int i;" | gcc -c -xc -Wno-bob - # no error echo "int i;" | gcc -c -xc -Walice - # unsupported compiler option Inverting the options fixes the tests. V2: fix options in meson build Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Dylan Baker <[email protected]> Signed-off-by: Marc Dietrich <[email protected]>