44 lines
1,015 B
Meson
44 lines
1,015 B
Meson
if get_option('build-python').disabled()
|
|
subdir_done()
|
|
endif
|
|
|
|
pylibmount_sources = '''
|
|
pylibmount.c
|
|
pylibmount.h
|
|
fs.c
|
|
tab.c
|
|
'''.split()
|
|
|
|
if LINUX
|
|
pylibmount_sources += 'context.c'
|
|
endif
|
|
|
|
python_module = import('python')
|
|
python = python_module.find_installation(
|
|
get_option('python'),
|
|
required : true,
|
|
disabler : true)
|
|
if meson.version().version_compare('<1.4.1')
|
|
cc.has_header('Python.h',
|
|
include_directories : include_directories(python.get_path('include')),
|
|
required : true)
|
|
endif
|
|
python.extension_module(
|
|
'pylibmount',
|
|
pylibmount_sources,
|
|
include_directories : [dir_include],
|
|
subdir : 'libmount',
|
|
dependencies : [mount_dep, python.dependency(embed: true)],
|
|
c_args : [
|
|
'-Wno-cast-function-type',
|
|
|
|
# https://github.com/util-linux/util-linux/issues/2366
|
|
python.language_version().version_compare('>=3.12') ?
|
|
[ '-Wno-error=redundant-decls' ] : [],
|
|
],
|
|
install : true)
|
|
|
|
python.install_sources(
|
|
'__init__.py',
|
|
subdir : 'libmount',
|
|
pure : false)
|