summaryrefslogtreecommitdiff
path: root/py/pykms/pykms.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'py/pykms/pykms.cpp')
-rw-r--r--py/pykms/pykms.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/py/pykms/pykms.cpp b/py/pykms/pykms.cpp
new file mode 100644
index 0000000..ccc597b
--- /dev/null
+++ b/py/pykms/pykms.cpp
@@ -0,0 +1,34 @@
+#include <pybind11/pybind11.h>
+#include <pybind11/stl.h>
+#include <kms++/kms++.h>
+
+namespace py = pybind11;
+
+using namespace kms;
+using namespace std;
+
+void init_pykmsbase(py::module& m);
+
+#if HAS_KMSXXUTIL
+void init_pykmsutils(py::module& m);
+#endif
+
+#if HAS_LIBDRM_OMAP
+void init_pykmsomap(py::module& m);
+#endif
+
+PYBIND11_MODULE(pykms, m)
+{
+ init_pykmsbase(m);
+
+#if HAS_KMSXXUTIL
+ init_pykmsutils(m);
+ m.def("has_pykmsutils", []() { return true; });
+#else
+ m.def("has_pykmsutils", []() { return false; });
+#endif
+
+#if HAS_LIBDRM_OMAP
+ init_pykmsomap(m);
+#endif
+}