if dri_drivers != []
libmesa_dri_drivers = shared_library(
'mesa_dri_drivers',
- dummy_cpp, # see meson #2180
+ [],
link_whole : dri_drivers,
- link_with : [libmegadriver_stub, libdricommon, libxmlconfig, libglapi,
- libmesa_util, libnir, libmesa_classic],
- dependencies : [dep_selinux, dep_libdrm, dep_expat, dep_m, dep_thread,
- dep_dl],
- link_args : ['-Wl,--build-id=sha1', ld_args_bsymbolic, ld_args_gc_sections],
- )
-
- pkg.generate(
- name : 'dri',
- filebase : 'dri',
- description : 'Direct Rendering Infrastructure',
- version : meson.project_version(),
- requires_private : ['libdrm >= 2.4.75'], # FIXME: don't hardcode this
+ link_with : [
+ libmegadriver_stub, libdricommon, libxmlconfig, libglapi, libmesa_util,
+ libmesa_classic,
+ ],
+ dependencies : [
+ dep_selinux, dep_libdrm, dep_expat, dep_m, dep_thread, dep_dl, idep_nir,
+ ],
+ link_args : [ld_args_build_id, ld_args_bsymbolic, ld_args_gc_sections],
)
meson.add_install_script(
+ prog_python.path(),
join_paths(meson.source_root(), 'bin/install_megadrivers.py'),
libmesa_dri_drivers.full_path(),
dri_drivers_path,
dri_link,
)
endif
+
+# This needs to be installed if any dri drivers (including gallium dri drivers)
+# are built.
+if with_dri
+ dri_req_private = []
+ if dep_libdrm.found()
+ dri_req_private = ['libdrm >= ' + dep_libdrm.version()]
+ endif
+
+ pkg.generate(
+ name : 'dri',
+ filebase : 'dri',
+ description : 'Direct Rendering Infrastructure',
+ version : meson.project_version(),
+ variables : ['dridriverdir=${prefix}/' + dri_drivers_path],
+ requires_private : dri_req_private,
+ )
+endif