summaryrefslogtreecommitdiff
path: root/src/meson.build
blob: 6ee11eaa7c653905f7e2598cd3160c22b8e286d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Copyright © 2020 Intel Corporation

# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:

# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.

host = host_machine.system()
_pci_access_host_files = []
if host == 'linux'
  _pci_access_host_files += ['linux_sysfs.c', 'linux_devmem.c', 'common_vgaarb.c']
elif host == 'freebsd'
  _pci_access_host_files += ['freebsd_pci.c', 'common_vgaarb_stub.c']
elif host == 'netbsd'
  _pci_access_host_files += ['netbsd_pci.c', 'common_vgaarb_stub.c']
elif host == 'openbsd'
  _pci_access_host_files += ['openbsd_pci.c']  # VGA arbiter code is in netbsd_pci.c
elif host == 'cygwin'
  _pci_access_host_files += ['x86_pci.c', 'common_vgaarb_stub.c']
elif host == 'sunos'
  _pci_access_host_files += ['solx_devfs.c', 'common_vgaarb_stub.c']
elif host == 'gnu'
  _pci_access_host_files += ['hurd_pci.c', 'x86_pci.c', 'common_vgaarb_stub.c']
endif

inc_src = include_directories('.')

libpciaccess = shared_library(
  'pciaccess',
  [
    'common_bridge.c',
    'common_iterator.c',
    'common_init.c',
    'common_interface.c',
    'common_io.c',
    'common_capability.c',
    'common_device_name.c',
    'common_map.c',
    _pci_access_host_files,
    config_h,
  ],
  include_directories : inc_include,
  dependencies : [dep_zlib, extra_libs],
  version : '0.11.1'
)

dep_pciaccess = declare_dependency(
  link_with : libpciaccess,
  include_directories : [include_directories('.'), inc_include]
)

if meson.version().version_compare('>= 0.54.0')
  meson.override_dependency('pciaccess', dep_pciaccess)
endif