summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meson.build7
-rw-r--r--meson_options.txt2
-rw-r--r--src/mesa/drivers/dri/i915/meson.build97
-rw-r--r--src/mesa/drivers/dri/meson.build3
4 files changed, 108 insertions, 1 deletions
diff --git a/meson.build b/meson.build
index 4ba00283cec..02264aeed4e 100644
--- a/meson.build
+++ b/meson.build
@@ -72,16 +72,23 @@ if (with_gles1 or with_gles2) and not with_opengl
endif
with_dri = false
+with_dri_i915 = false
with_dri_i965 = false
with_dri_swrast = false
_drivers = get_option('dri-drivers')
if _drivers != ''
_split = _drivers.split(',')
+ with_dri_i915 = _split.contains('i915')
with_dri_i965 = _split.contains('i965')
with_dri_swrast = _split.contains('swrast')
with_dri = true
endif
+dep_libdrm_intel = []
+if with_dri_i915
+ dep_libdrm_intel = dependency('libdrm_intel', version : '>= 2.4.75')
+endif
+
if not with_dri
with_gles1 = false
with_gles2 = false
diff --git a/meson_options.txt b/meson_options.txt
index 029626d69a4..abd5135742a 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -22,7 +22,7 @@ option('platforms', type : 'string', value : 'x11,wayland',
description : 'comma separated list of window systems to support. wayland, x11, surfaceless, drm, etc.')
option('dri3', type : 'combo', value : 'auto', choices : ['auto', 'yes', 'no'],
description : 'enable support for dri3')
-option('dri-drivers', type : 'string', value : 'swrast,i965',
+option('dri-drivers', type : 'string', value : 'swrast,i915,i965',
description : 'comma separated list of dri drivers to build.')
option('dri-drivers-path', type : 'string', value : '',
description : 'Location of dri drivers. Default: $libdir/dri.')
diff --git a/src/mesa/drivers/dri/i915/meson.build b/src/mesa/drivers/dri/i915/meson.build
new file mode 100644
index 00000000000..1971419a6b7
--- /dev/null
+++ b/src/mesa/drivers/dri/i915/meson.build
@@ -0,0 +1,97 @@
+# Copyright © 2017 Intel Corporation
+
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+
+files_i915 = files(
+ 'i830_context.c',
+ 'i830_context.h',
+ 'i830_reg.h',
+ 'i830_state.c',
+ 'i830_texblend.c',
+ 'i830_texstate.c',
+ 'i830_vtbl.c',
+ 'i915_context.c',
+ 'i915_context.h',
+ 'i915_debug_fp.c',
+ 'i915_debug.h',
+ 'i915_fragprog.c',
+ 'i915_program.c',
+ 'i915_program.h',
+ 'i915_reg.h',
+ 'i915_state.c',
+ 'i915_tex_layout.c',
+ 'i915_texstate.c',
+ 'i915_vtbl.c',
+ 'intel_batchbuffer.c',
+ 'intel_batchbuffer.h',
+ 'intel_blit.c',
+ 'intel_blit.h',
+ 'intel_buffer_objects.c',
+ 'intel_buffer_objects.h',
+ 'intel_buffers.c',
+ 'intel_buffers.h',
+ 'intel_chipset.h',
+ 'intel_clear.c',
+ 'intel_clear.h',
+ 'intel_context.c',
+ 'intel_context.h',
+ 'intel_extensions.c',
+ 'intel_extensions.h',
+ 'intel_fbo.c',
+ 'intel_fbo.h',
+ 'intel_mipmap_tree.c',
+ 'intel_mipmap_tree.h',
+ 'intel_pixel_bitmap.c',
+ 'intel_pixel.c',
+ 'intel_pixel_copy.c',
+ 'intel_pixel_draw.c',
+ 'intel_pixel.h',
+ 'intel_pixel_read.c',
+ 'intel_reg.h',
+ 'intel_regions.c',
+ 'intel_regions.h',
+ 'intel_render.c',
+ 'intel_screen.c',
+ 'intel_screen.h',
+ 'intel_state.c',
+ 'intel_syncobj.c',
+ 'intel_tex.c',
+ 'intel_tex_copy.c',
+ 'intel_tex.h',
+ 'intel_tex_image.c',
+ 'intel_tex_layout.c',
+ 'intel_tex_layout.h',
+ 'intel_tex_obj.h',
+ 'intel_tex_subimage.c',
+ 'intel_tex_validate.c',
+ 'intel_tris.c',
+ 'intel_tris.h',
+)
+
+libi915 = static_library(
+ 'i915',
+ [files_i915, xmlpool_options_h],
+ include_directories : [inc_common, inc_dri_common, inc_util],
+ c_args : [c_vis_args, no_override_init_args],
+ cpp_args : [cpp_vis_args],
+ dependencies : [dep_libdrm, dep_libdrm_intel],
+)
+
+dri_drivers += libi915
+dri_link += 'i915_dri.so'
diff --git a/src/mesa/drivers/dri/meson.build b/src/mesa/drivers/dri/meson.build
index cc2272eff6d..63cfcce8399 100644
--- a/src/mesa/drivers/dri/meson.build
+++ b/src/mesa/drivers/dri/meson.build
@@ -25,6 +25,9 @@ dri_link = []
if with_dri_swrast
subdir('swrast')
endif
+if with_dri_i915
+ subdir('i915')
+endif
if with_dri_i965
subdir('i965')
endif