# SPDX-License-Identifier: LGPL-2.1-or-later # # This file is part of libnvme. # Copyright (c) 2021 Dell Inc. # # Authors: Martin Belanger # sources = [ 'nvme/cleanup.c', 'nvme/fabrics.c', 'nvme/filters.c', 'nvme/ioctl.c', 'nvme/linux.c', 'nvme/log.c', 'nvme/tree.c', 'nvme/util.c', ] if conf.get('CONFIG_JSONC') sources += 'nvme/json.c' endif deps = [ libuuid_dep, json_c_dep, openssl_dep, ] source_dir = meson.current_source_dir() mapfile = 'libnvme.map' version_script_arg = join_paths(source_dir, mapfile) libnvme = library( 'nvme', # produces libnvme.so sources, version: library_version, link_args: ['-Wl,--version-script=' + version_script_arg], dependencies: deps, link_depends: mapfile, include_directories: [incdir, internal_incdir], install: true, link_with: libccan, ) pkg = import('pkgconfig') pkg.generate(libnvme, filebase: meson.project_name(), name: meson.project_name(), version: meson.project_version(), description: 'Manage "libnvme" subsystem devices (Non-volatile Memory Express)', url: 'http://github.com/linux-nvme/libnvme/', ) libnvme_dep = declare_dependency( include_directories: ['.'], dependencies: deps, link_with: libnvme, ) mode = ['rw-r--r--', 0, 0] install_headers('libnvme.h', install_mode: mode) install_headers([ 'nvme/fabrics.h', 'nvme/filters.h', 'nvme/ioctl.h', 'nvme/linux.h', 'nvme/log.h', 'nvme/tree.h', 'nvme/types.h', 'nvme/util.h', ], subdir: 'nvme', install_mode: mode, )