summaryrefslogtreecommitdiffstats
path: root/libmount/python/meson.build
diff options
context:
space:
mode:
Diffstat (limited to 'libmount/python/meson.build')
-rw-r--r--libmount/python/meson.build41
1 files changed, 41 insertions, 0 deletions
diff --git a/libmount/python/meson.build b/libmount/python/meson.build
new file mode 100644
index 0000000..c5feb7b
--- /dev/null
+++ b/libmount/python/meson.build
@@ -0,0 +1,41 @@
+python_module = import('python')
+
+python = python_module.find_installation(
+ get_option('python'),
+ required : get_option('build-python'),
+ disabler : true)
+build_python = python.found()
+
+pylibmount_sources = '''
+ pylibmount.c
+ pylibmount.h
+ fs.c
+ tab.c
+'''.split()
+
+if LINUX
+ pylibmount_sources += 'context.c'
+endif
+
+python.extension_module(
+ 'pylibmount',
+ pylibmount_sources,
+ include_directories : [dir_include, dir_libmount],
+ subdir : 'libmount',
+ link_with : lib_mount,
+ dependencies : python.dependency(),
+ 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)
+
+if build_python
+ python.install_sources(
+ '__init__.py',
+ subdir : 'libmount',
+ pure : false)
+endif