meson.build 814 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
uring_features = configuration_data()

if host_machine.system() != 'linux'
  uring_dep = dependency('', required: false)
  uring_features.set('HAVE_URING', false)
  configure_file(output: 'Features.h', configuration: uring_features)
  subdir_done()
endif

liburing = dependency('liburing', required: get_option('io_uring'))
uring_features.set('HAVE_URING', liburing.found())
configure_file(output: 'Features.h', configuration: uring_features)

if not liburing.found()
  uring_dep = dependency('', required: false)
  subdir_done()
endif

uring = static_library(
  'uring',
  'Ring.cxx',
  'Queue.cxx',
  'Operation.cxx',
24
  'ReadOperation.cxx',
25 26 27 28 29 30 31 32 33 34 35 36 37
  include_directories: inc,
  dependencies: [
    liburing,
  ],
)

uring_dep = declare_dependency(
  link_with: uring,
  dependencies: [
    liburing,
    io_dep,
  ],
)