Home | History | Annotate | Download | only in va
      1 # Copyright  2017-2018 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 
     21 # TODO: support non-static targets
     22 # Static targets are always enabled in autotools (unless you modify
     23 # configure.ac)
     24 
     25 va_link_args = []
     26 va_link_depends = []
     27 va_drivers = []
     28 
     29 if with_ld_version_script
     30   va_link_args += ['-Wl,--version-script', join_paths(meson.current_source_dir(), 'va.sym')]
     31   va_link_depends += files('va.sym')
     32 endif
     33 
     34 libva_gallium = shared_library(
     35   'gallium_drv_video',
     36   'target.c',
     37   c_args : c_vis_args,
     38   cpp_args : cpp_vis_args,
     39   link_args : [va_link_args, ld_args_gc_sections],
     40   include_directories : [
     41     inc_common, inc_util, inc_gallium_winsys, inc_gallium_drivers,
     42   ],
     43   link_whole : [libva_st],
     44   link_with : [
     45     libgalliumvlwinsys, libgalliumvl, libgallium, libmesa_util,
     46     libpipe_loader_static, libws_null, libwsw, libswdri, libswkmsdri,
     47   ],
     48   dependencies : [
     49     dep_libdrm, dep_thread, driver_r600, driver_radeonsi, driver_nouveau,
     50   ],
     51   link_depends : va_link_depends,
     52   install : true,
     53   install_dir : va_drivers_path,
     54 )
     55 
     56 foreach d : [[with_gallium_r600, 'r600'],
     57              [with_gallium_radeonsi, 'radeonsi'],
     58              [with_gallium_nouveau, 'nouveau']]
     59   if d[0]
     60     va_drivers += '@0 (a] _drv_video.so'.format(d[1])
     61   endif
     62 endforeach
     63 
     64 meson.add_install_script(
     65   join_paths(meson.source_root(), 'bin/install_megadrivers.py'),
     66   libva_gallium.full_path(),
     67   va_drivers_path,
     68   va_drivers,
     69 )
     70