Dylan Baker | 5f7deb5 | 2017-09-13 11:46:13 -0700 | [diff] [blame] | 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, |
Eric Engestrom | 5236de6 | 2018-02-07 14:20:52 +0000 | [diff] [blame] | 28 | dependencies : [dep_threads, dep_atomic_ops], |
Dylan Baker | 5f7deb5 | 2017-09-13 11:46:13 -0700 | [diff] [blame] | 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, |
Dylan Baker | 9e34ad5 | 2018-01-25 15:44:37 -0800 | [diff] [blame] | 48 | subdirs : ['.', 'libdrm', 'libdrm/nouveau'], |
Dylan Baker | 5f7deb5 | 2017-09-13 11:46:13 -0700 | [diff] [blame] | 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, |
Heiko Becker | 4f08bfe | 2018-02-19 15:13:15 +0000 | [diff] [blame] | 57 | env : env_test, |
Dylan Baker | 5f7deb5 | 2017-09-13 11:46:13 -0700 | [diff] [blame] | 58 | args : [files('nouveau-symbol-check'), libdrm_nouveau] |
| 59 | ) |