meson.build revision 01e04c3f
1# Copyright © 2017 Intel Corporation 2 3# Permission is hereby granted, free of charge, to any person obtaining a copy 4# of this software and associated documentation files (the "Software"), to deal 5# in the Software without restriction, including without limitation the rights 6# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7# copies of the Software, and to permit persons to whom the Software is 8# furnished to do so, subject to the following conditions: 9 10# The above copyright notice and this permission notice shall be included in 11# all copies or substantial portions of the Software. 12 13# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 19# SOFTWARE. 20 21subdir('common') 22 23dri_drivers = [] 24dri_link = [] 25if with_dri_swrast 26 subdir('swrast') 27endif 28if with_dri_i915 29 subdir('i915') 30endif 31if with_dri_i965 32 subdir('i965') 33endif 34if with_dri_r100 35 subdir('radeon') 36endif 37if with_dri_r200 38 subdir('r200') 39endif 40if with_dri_nouveau 41 subdir('nouveau') 42endif 43 44if dri_drivers != [] 45 libmesa_dri_drivers = shared_library( 46 'mesa_dri_drivers', 47 [], 48 link_whole : dri_drivers, 49 link_with : [ 50 libmegadriver_stub, libdricommon, libxmlconfig, libglapi, libmesa_util, 51 libmesa_classic, 52 ], 53 dependencies : [ 54 dep_selinux, dep_libdrm, dep_expat, dep_m, dep_thread, dep_dl, idep_nir, 55 ], 56 link_args : [ld_args_build_id, ld_args_bsymbolic, ld_args_gc_sections], 57 ) 58 59 meson.add_install_script( 60 prog_python.path(), 61 join_paths(meson.source_root(), 'bin/install_megadrivers.py'), 62 libmesa_dri_drivers.full_path(), 63 dri_drivers_path, 64 dri_link, 65 ) 66endif 67 68# This needs to be installed if any dri drivers (including gallium dri drivers) 69# are built. 70if with_dri 71 dri_req_private = [] 72 if dep_libdrm.found() 73 dri_req_private = ['libdrm >= ' + dep_libdrm.version()] 74 endif 75 76 pkg.generate( 77 name : 'dri', 78 filebase : 'dri', 79 description : 'Direct Rendering Infrastructure', 80 version : meson.project_version(), 81 variables : ['dridriverdir=${prefix}/' + dri_drivers_path], 82 requires_private : dri_req_private, 83 ) 84endif 85