meson: Build i965 and dri stack

This gets pretty much the entire classic tree building, as well as
i965, including the various glapis. There are some workarounds for bugs
that are fixed in meson 0.43.0, which is due out on October 8th.

I have tested this with piglit using glx.

v2: - fix typo "vaule" -> "value"
    - use gtest dep instead of linking to libgtest (rebase error)
    - use gtest dep instead of linking against libgtest (rebase error)
    - copy the megadriver, then create hard links from that, then delete
      the megadriver. This matches the behavior of the autotools build.
      (Eric A)
    - Use host_machine instead of target_machine (Eric A)
    - Put a comment in the right place (Eric A)
    - Don't have two variables for the same information (Eric A)
    - Put pre_args at top of file in this patch (Eric A)
    - Fix glx generators in this patch instead of next (Eric A)
    - Remove -DMESON hack (Eric A)
    - add sha1_h to mesa in this patch (Eric A)
    - Put generators in loops when possible to reduce code in
      mapi/glapi/gen (Eric A)
v3: - put HAVE_X11_PLATFORM in this patch

Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Dylan Baker
2017-09-20 20:11:32 -07:00
parent 86eb09a136
commit 3218056e0e
24 changed files with 2092 additions and 26 deletions

View File

@@ -20,12 +20,24 @@
option('platforms', type : 'string', value : 'x11,wayland',
description : 'comma separated list of window systems to support. wayland, x11, surfaceless, drm, etc.')
option('dri-drivers', type : 'string', value : 'i965',
description : 'comma separated list of dri drivers to build.')
option('vulkan-drivers', type : 'string', value : 'intel,amd',
description : 'comma separated list of vulkan drivers to build.')
option('shader-cache', type : 'boolean', value : true,
description : 'Build with on-disk shader cache support')
option('vulkan-icd-dir', type : 'string', value : '',
description : 'Location relative to prefix to put vulkan icds on install. Default: $datadir/vulkan/icd.d')
option('shared-glapi', type : 'boolean', value : true,
description : 'Whether to build a shared or static glapi')
option('gles1', type : 'boolean', value : true,
description : 'Build support for OpenGL ES 1.x')
option('gles2', type : 'boolean', value : true,
description : 'Build support for OpenGL ES 2.x and 3.x')
option('opengl', type : 'boolean', value : true,
description : 'Build support for OpenGL (all versions)')
option('asm', type : 'boolean', value : true,
description : 'Build assembly code if possible')
option('valgrind', type : 'boolean', value : true,
description : 'Build with valgrind support if possible')
option('build-tests', type : 'boolean', value : false,