diff options
Diffstat (limited to 'py/pykms/meson.build')
-rw-r--r-- | py/pykms/meson.build | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/py/pykms/meson.build b/py/pykms/meson.build new file mode 100644 index 0000000..b29cd9f --- /dev/null +++ b/py/pykms/meson.build @@ -0,0 +1,58 @@ +py3_dep = dependency('python3', required : get_option('pykms')) + +if py3_dep.found() == false + subdir_done() +endif + +if get_option('system-pybind11').enabled() + pybind11_dep = dependency('pybind11') +elif get_option('system-pybind11').disabled() + pybind11_proj = subproject('pybind11') + pybind11_dep = pybind11_proj.get_variable('pybind11_dep') +else + pybind11_dep = dependency('pybind11', fallback : ['pybind11', 'pybind11_dep']) +endif + +pykms_sources = files([ + 'pykmsbase.cpp', + 'pykms.cpp', +]) + +if get_option('utils') + pykms_sources += files([ + 'pykmsutil.cpp', + 'pyvid.cpp', + ]) +endif + +if libdrmomap_dep.found() + pykms_sources += files([ + 'pykmsomap.cpp', + ]) +endif + +pykms_deps = [ + libkmsxx_dep, + py3_dep, + pybind11_dep, +] + +if get_option('utils') + pykms_deps += [ libkmsxxutil_dep ] +endif + +pykms_args = [ '-fvisibility=hidden' ] + +destdir = get_option('libdir') / 'python' + py3_dep.version() / 'site-packages/pykms' + +pykms = shared_module('pykms', + pykms_sources, + install : true, + install_dir : destdir, + name_prefix : '', + dependencies : pykms_deps, + cpp_args : pykms_args) + +# Copy __init__.py to build dir so that we can run without installing +configure_file(input: '__init__.py', output: '__init__.py', copy: true, + install : true, install_dir : destdir) |