sync code with last improvements from OpenBSD
This commit is contained in:
commit
88965415ff
26235 changed files with 29195616 additions and 0 deletions
134
lib/libpciaccess/meson.build
Normal file
134
lib/libpciaccess/meson.build
Normal file
|
@ -0,0 +1,134 @@
|
|||
# Copyright © 2018-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.
|
||||
|
||||
project(
|
||||
'libpciaccess',
|
||||
['c'],
|
||||
version : '0.17',
|
||||
license : 'MIT',
|
||||
meson_version : '>= 0.48.0',
|
||||
default_options : ['buildtype=debugoptimized'],
|
||||
)
|
||||
|
||||
c = meson.get_compiler('c')
|
||||
|
||||
add_project_arguments(
|
||||
c.get_supported_arguments(
|
||||
'-Wpointer-arith',
|
||||
'-Wmissing-declarations',
|
||||
'-Wformat=2',
|
||||
'-Wstrict-prototypes',
|
||||
'-Wmissing-prototypes',
|
||||
'-Wnested-externs',
|
||||
'-Wbad-function-cast',
|
||||
'-Wold-style-definition',
|
||||
'-Wdeclaration-after-statement',
|
||||
'-Wunused',
|
||||
'-Wuninitialized',
|
||||
'-Wshadow',
|
||||
'-Wmissing-noreturn',
|
||||
'-Wmissing-format-attribute',
|
||||
'-Wredundant-decls',
|
||||
'-Wlogical-op',
|
||||
'-Werror=implicit',
|
||||
'-Werror=nonnull',
|
||||
'-Werror=init-self',
|
||||
'-Werror=main',
|
||||
'-Werror=missing-braces',
|
||||
'-Werror=sequence-point',
|
||||
'-Werror=return-type',
|
||||
'-Werror=trigraphs',
|
||||
'-Werror=array-bounds',
|
||||
'-Werror=write-strings',
|
||||
'-Werror=address',
|
||||
'-Werror=int-to-pointer-cast',
|
||||
),
|
||||
language : 'c'
|
||||
)
|
||||
|
||||
config = configuration_data()
|
||||
|
||||
config.set_quoted(
|
||||
'PCIIDS_PATH',
|
||||
join_paths(get_option('prefix'), get_option('datadir'), get_option('pci-ids'))
|
||||
)
|
||||
if get_option('linux-rom-fallback')
|
||||
config.set('LINUX_ROM', 1)
|
||||
endif
|
||||
|
||||
dep_zlib = dependency('zlib', required : get_option('zlib'))
|
||||
if dep_zlib.found()
|
||||
config.set('HAVE_ZLIB', 1)
|
||||
endif
|
||||
|
||||
extra_libs = []
|
||||
if host_machine.system() == 'netbsd'
|
||||
extra_libs += c.find_library('pci')
|
||||
if host_machine.cpu_family() == 'x86'
|
||||
extra_libs += c.find_library('i386')
|
||||
elif host_machine.cpu_family() == 'x86_64'
|
||||
extra_libs += c.find_library('x86_64')
|
||||
elif host_machine.cpu_family() == 'alpha' # TODO
|
||||
extra_libs += c.find_library('alpha')
|
||||
endif
|
||||
elif host_machine.system() == 'sunos'
|
||||
extra_libs += c.find_library('devinfo')
|
||||
endif
|
||||
|
||||
if host_machine.system() == 'netbsd'
|
||||
_prefix = ''
|
||||
if c.check_header('machine/sysarch.h')
|
||||
_prefix = '''
|
||||
#include <sys/types.h>
|
||||
#include <machine/sysarch.h>
|
||||
'''
|
||||
endif
|
||||
|
||||
if c.check_header('machine/mtrr.h', prefix : _prefix)
|
||||
config.set('HAVE_MTRR', 1)
|
||||
endif
|
||||
elif c.check_header('asm/mtrr.h')
|
||||
config.set('HAVE_MTRR', 1)
|
||||
endif
|
||||
|
||||
foreach h : ['err.h', 'stdint.h', 'string.h', 'strings.h', 'inttypes.h']
|
||||
if c.check_header(h)
|
||||
config.set('HAVE_' + h.to_upper().underscorify(), 1)
|
||||
endif
|
||||
endforeach
|
||||
|
||||
config_h = configure_file(
|
||||
configuration : config,
|
||||
output : 'config.h',
|
||||
)
|
||||
add_project_arguments('-DHAVE_CONFIG_H', language : ['c'])
|
||||
|
||||
install_headers('include/pciaccess.h')
|
||||
inc_include = include_directories('.', 'include')
|
||||
|
||||
subdir('src')
|
||||
subdir('scanpci')
|
||||
subdir('man')
|
||||
|
||||
pkg = import('pkgconfig')
|
||||
pkg.generate(
|
||||
libpciaccess,
|
||||
description : 'Library providing generic access to the PCI bus and devices',
|
||||
)
|
Loading…
Add table
Add a link
Reference in a new issue