Home | History | Annotate | Download | only in nouveau
      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 
     22 libdrm_nouveau = shared_library(
     23   'drm_nouveau',
     24   [files( 'nouveau.c', 'pushbuf.c', 'bufctx.c', 'abi16.c'), config_file],
     25   c_args : warn_c_args,
     26   include_directories : [inc_root, inc_drm],
     27   link_with : libdrm,
     28   dependencies : [dep_threads, dep_atomic_ops],
     29   version : '2.0.0',
     30   install : true,
     31 )
     32 
     33 ext_libdrm_nouveau = declare_dependency(
     34   link_with : [libdrm, libdrm_nouveau],
     35   include_directories : [inc_drm, include_directories('.')],
     36 )
     37 
     38 install_headers('nouveau.h', subdir : 'libdrm/nouveau')
     39 install_headers(
     40   'nvif/class.h', 'nvif/cl0080.h', 'nvif/cl9097.h', 'nvif/if0002.h',
     41   'nvif/if0003.h', 'nvif/ioctl.h', 'nvif/unpack.h',
     42   subdir : 'libdrm/nouveau/nvif'
     43 )
     44 
     45 pkg.generate(
     46   name : 'libdrm_nouveau',
     47   libraries : libdrm_nouveau,
     48   subdirs : ['.', 'libdrm', 'libdrm/nouveau'],
     49   version : meson.project_version(),
     50   requires_private : 'libdrm',
     51   description : 'Userspace interface to nouveau kernel DRM services',
     52 )
     53 
     54 test(
     55   'nouveau-symbol-check',
     56   prog_bash,
     57   env : env_test,
     58   args : [files('nouveau-symbol-check'), libdrm_nouveau]
     59 )
     60