projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
imgui: update memory editor
[mesa.git]
/
meson.build
diff --git
a/meson.build
b/meson.build
index c5bc94720d69ab3920138b48d88783d248d71da2..50d2eec97efea220880c143ac945322db9401d9a 100644
(file)
--- a/
meson.build
+++ b/
meson.build
@@
-1,4
+1,4
@@
-# Copyright © 2017-201
8
Intel Corporation
+# Copyright © 2017-201
9
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
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
@@
-61,11
+61,11
@@
endif
dri_drivers_path = get_option('dri-drivers-path')
if dri_drivers_path == ''
dri_drivers_path = get_option('dri-drivers-path')
if dri_drivers_path == ''
- dri_drivers_path = join_paths(get_option('libdir'), 'dri')
+ dri_drivers_path = join_paths(get_option('
prefix'), get_option('
libdir'), 'dri')
endif
dri_search_path = get_option('dri-search-path')
if dri_search_path == ''
endif
dri_search_path = get_option('dri-search-path')
if dri_search_path == ''
- dri_search_path =
join_paths(get_option('prefix'), dri_drivers_path)
+ dri_search_path =
dri_drivers_path
endif
with_gles1 = get_option('gles1')
endif
with_gles1 = get_option('gles1')
@@
-131,8
+131,8
@@
if _drivers.contains('auto')
]
elif ['arm', 'aarch64'].contains(host_machine.cpu_family())
_drivers = [
]
elif ['arm', 'aarch64'].contains(host_machine.cpu_family())
_drivers = [
- '
pl111', 'v3d', 'vc4', 'freedreno', 'etnaviv', 'imx
', 'nouveau',
- 'tegra', 'virgl', 'swrast'
,
+ '
kmsro', 'v3d', 'vc4', 'freedreno', 'etnaviv
', 'nouveau',
+ 'tegra', 'virgl', 'swrast'
]
else
error('Unknown architecture @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format(
]
else
error('Unknown architecture @0@. Please pass -Dgallium-drivers to set driver options. Patches gladly accepted to fix this.'.format(
@@
-145,7
+145,7
@@
if _drivers.contains('auto')
host_machine.system()))
endif
endif
host_machine.system()))
endif
endif
-with_gallium_
pl111 = _drivers.contains('pl111
')
+with_gallium_
kmsro = _drivers.contains('kmsro
')
with_gallium_radeonsi = _drivers.contains('radeonsi')
with_gallium_r300 = _drivers.contains('r300')
with_gallium_r600 = _drivers.contains('r600')
with_gallium_radeonsi = _drivers.contains('radeonsi')
with_gallium_r300 = _drivers.contains('r300')
with_gallium_r600 = _drivers.contains('r600')
@@
-154,14
+154,23
@@
with_gallium_freedreno = _drivers.contains('freedreno')
with_gallium_softpipe = _drivers.contains('swrast')
with_gallium_vc4 = _drivers.contains('vc4')
with_gallium_v3d = _drivers.contains('v3d')
with_gallium_softpipe = _drivers.contains('swrast')
with_gallium_vc4 = _drivers.contains('vc4')
with_gallium_v3d = _drivers.contains('v3d')
+with_gallium_panfrost = _drivers.contains('panfrost')
with_gallium_etnaviv = _drivers.contains('etnaviv')
with_gallium_etnaviv = _drivers.contains('etnaviv')
-with_gallium_imx = _drivers.contains('imx')
with_gallium_tegra = _drivers.contains('tegra')
with_gallium_tegra = _drivers.contains('tegra')
+with_gallium_iris = _drivers.contains('iris')
with_gallium_i915 = _drivers.contains('i915')
with_gallium_svga = _drivers.contains('svga')
with_gallium_virgl = _drivers.contains('virgl')
with_gallium_swr = _drivers.contains('swr')
with_gallium_i915 = _drivers.contains('i915')
with_gallium_svga = _drivers.contains('svga')
with_gallium_virgl = _drivers.contains('virgl')
with_gallium_swr = _drivers.contains('swr')
+if cc.get_id() == 'intel'
+ if meson.version().version_compare('< 0.49.0')
+ error('Meson does not have sufficient support of ICC before 0.49.0 to compile mesa')
+ elif with_gallium_swr and meson.version().version_compare('== 0.49.0')
+ warning('Meson as of 0.49.0 is sufficient for compiling mesa with ICC, but there are some caveats with SWR. 0.49.1 should resolve all of these')
+ endif
+endif
+
with_gallium = _drivers.length() != 0 and _drivers != ['']
if with_gallium and system_has_kms_drm
with_gallium = _drivers.length() != 0 and _drivers != ['']
if with_gallium and system_has_kms_drm
@@
-202,11
+211,8
@@
endif
if with_dri_i915 and with_gallium_i915
error('Only one i915 provider can be built')
endif
if with_dri_i915 and with_gallium_i915
error('Only one i915 provider can be built')
endif
-if with_gallium_imx and not with_gallium_etnaviv
- error('IMX driver requires etnaviv driver')
-endif
-if with_gallium_pl111 and not with_gallium_vc4
- error('pl111 driver requires vc4 driver')
+if with_gallium_kmsro and not (with_gallium_vc4 or with_gallium_etnaviv or with_gallium_freedreno or with_gallium_panfrost)
+ error('kmsro driver requires one or more renderonly drivers (vc4, etnaviv, freedreno, panfrost)')
endif
if with_gallium_tegra and not with_gallium_nouveau
error('tegra driver requires nouveau driver')
endif
if with_gallium_tegra and not with_gallium_nouveau
error('tegra driver requires nouveau driver')
@@
-604,7
+610,7
@@
with_gallium_xa = _xa != 'false'
d3d_drivers_path = get_option('d3d-drivers-path')
if d3d_drivers_path == ''
d3d_drivers_path = get_option('d3d-drivers-path')
if d3d_drivers_path == ''
- d3d_drivers_path = join_paths(get_option('libdir'), 'd3d')
+ d3d_drivers_path = join_paths(get_option('
prefix'), get_option('
libdir'), 'd3d')
endif
with_gallium_st_nine = get_option('gallium-nine')
endif
with_gallium_st_nine = get_option('gallium-nine')
@@
-612,7
+618,8
@@
if with_gallium_st_nine
if not with_gallium_softpipe
error('The nine state tracker requires gallium softpipe/llvmpipe.')
elif not (with_gallium_radeonsi or with_gallium_nouveau or with_gallium_r600
if not with_gallium_softpipe
error('The nine state tracker requires gallium softpipe/llvmpipe.')
elif not (with_gallium_radeonsi or with_gallium_nouveau or with_gallium_r600
- or with_gallium_r300 or with_gallium_svga or with_gallium_i915)
+ or with_gallium_r300 or with_gallium_svga or with_gallium_i915
+ or with_gallium_iris)
error('The nine state tracker requires at least one non-swrast gallium driver.')
endif
if not with_dri3
error('The nine state tracker requires at least one non-swrast gallium driver.')
endif
if not with_dri3
@@
-1109,7
+1116,7
@@
dep_libdrm_nouveau = null_dep
dep_libdrm_etnaviv = null_dep
dep_libdrm_intel = null_dep
dep_libdrm_etnaviv = null_dep
dep_libdrm_intel = null_dep
-_drm_amdgpu_ver = '2.4.9
5
'
+_drm_amdgpu_ver = '2.4.9
7
'
_drm_radeon_ver = '2.4.71'
_drm_nouveau_ver = '2.4.66'
_drm_etnaviv_ver = '2.4.89'
_drm_radeon_ver = '2.4.71'
_drm_nouveau_ver = '2.4.66'
_drm_etnaviv_ver = '2.4.89'
@@
-1396,7
+1403,7
@@
if with_platform_x11
dep_xcb_xfixes = dependency('xcb-xfixes')
endif
if with_xlib_lease
dep_xcb_xfixes = dependency('xcb-xfixes')
endif
if with_xlib_lease
- dep_xcb_xrandr = dependency('xcb-randr'
, version : '>= 1.12'
)
+ dep_xcb_xrandr = dependency('xcb-randr')
dep_xlib_xrandr = dependency('xrandr', version : '>= 1.3')
endif
endif
dep_xlib_xrandr = dependency('xrandr', version : '>= 1.3')
endif
endif
@@
-1460,6
+1467,10
@@
pkg = import('pkgconfig')
env_test = environment()
env_test.set('NM', find_program('nm').path())
env_test = environment()
env_test.set('NM', find_program('nm').path())
+# This quirk needs to be applied to sources with functions defined in assembly
+# as GCC LTO drops them. See: https://bugs.freedesktop.org/show_bug.cgi?id=109391
+gcc_lto_quirk = (cc.get_id() == 'gcc') ? ['-fno-lto'] : []
+
subdir('include')
subdir('bin')
subdir('src')
subdir('include')
subdir('bin')
subdir('src')