# KDevelop project files
*.kdev4
+
+# Files generated by building Python bindings
+bindings/python/build
+bindings/python/libsigrok.py
+bindings/python/libsigrok_python_wrap.c
--- /dev/null
+/*
+ * This file is part of the sigrok project.
+ *
+ * Copyright (C) 2013 Martin Ling <martin-sigrok@earth.li>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+%include "../swig/libsigrok.i"
--- /dev/null
+#
+# This file is part of the sigrok project.
+#
+# Copyright (C) 2013 Martin Ling <martin-sigrok@earth.li>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+from distutils.core import setup, Extension
+import subprocess
+
+sr_includes = subprocess.check_output(
+ ["pkg-config", "--cflags", "libsigrok"]).rstrip().split(' ')
+
+sr_libs = subprocess.check_output(
+ ["pkg-config", "--libs", "libsigrok"]).rstrip().split(' ')
+
+sr_version = subprocess.check_output(
+ ["pkg-config", "--version", "libsigrok"]).rstrip()
+
+setup(
+ name = 'libsigrok',
+ version = sr_version,
+ description = "libsigrok API wrapper",
+ py_modules = ['libsigrok'],
+ ext_modules = [
+ Extension('_libsigrok',
+ sources = ['libsigrok_python.i'],
+ swig_opts = sr_includes,
+ include_dirs = [i[2:] for i in sr_includes if i.startswith('-I')],
+ library_dirs = [l[2:] for l in sr_libs if l.startswith('-L')],
+ libraries = [l[2:] for l in sr_libs if l.startswith('-l')]
+ )
+ ],
+)
--- /dev/null
+/*
+ * This file is part of the sigrok project.
+ *
+ * Copyright (C) 2013 Martin Ling <martin-sigrok@earth.li>
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+%module libsigrok
+%include "cpointer.i"
+%include "carrays.i"
+
+%{
+#include "libsigrok/libsigrok.h"
+%}
+
+typedef struct _GSList GSList;
+
+struct _GSList
+{
+ gpointer data;
+ GSList *next;
+};
+
+void g_slist_free(GSList *list);
+
+%include "libsigrok/libsigrok.h"
+#undef SR_API
+#define SR_API
+%ignore sr_config_info_name_get;
+%include "libsigrok/proto.h"
+%include "libsigrok/version.h"
+
+%pointer_functions(struct sr_context *, sr_context_ptr_ptr);
+%array_functions(struct sr_dev_driver *, sr_dev_driver_ptr_array);
+%pointer_cast(gpointer, struct sr_dev_inst *, gpointer_to_sr_dev_inst_ptr);