From: "John B. Wyatt IV" <jwyatt@redhat.com>
To: linux-pm@vger.kernel.org, "Thomas Renninger" <trenn@suse.com>,
"Shuah Khan" <shuah@kernel.org>,
"Shuah Khan" <skhan@linuxfoundation.org>
Cc: "John B. Wyatt IV" <jwyatt@redhat.com>,
linux-kernel@vger.kernel.org, "John Kacur" <jkacur@redhat.com>,
"Tomas Glozar" <tglozar@redhat.com>,
"John B. Wyatt IV" <sageofredondo@gmail.com>
Subject: [PATCH 0/2][RFC] Add SWIG Bindings to libcpupower
Date: Wed, 24 Jul 2024 18:11:18 -0400 [thread overview]
Message-ID: <20240724221122.54601-1-jwyatt@redhat.com> (raw)
SWIG is a tool packaged in Fedora and other distros that can generate
bindings from C and C++ code for several languages including Python,
Perl, and Go. We at Red Hat are interested in adding binding support to
libcpupower so Python tools like rteval or tuned can make easy use of it.
This RFC provides a limited subset of bindings as a demonstration. The second
commit provides a Python test script to verify the bindings. I wanted to get
feedback on this before implementing (and possibly testing) the entire library.
The name raw_pylibcpupower is used because this is a demonstration example that
only provides direct bindings for a few functions. A wrapper `pylibcpupower`
may be needed to make the bindings more 'pythonic'. The bindings folder is used
because Go bindings may be useful for Kubernetes or OpenShift in the future.
How should the bindings be built? The current example requires the makefile
in cpupower directory be run first to generate the .o files needed before
running the makefile in the python directory in a seperate step. Would the
maintainers prefer the two makefiles integrated?
Another question is do you want more test files like the .py example? Would
this be used as part of a greater test suite?
Note that while SWIG itself is GPL v3+ licensed; the resulting output, the
bindings code, is permissively licensed. Please see
https://swig.org/legal.html for more details.
John B. Wyatt IV (2):
Add SWIG bindings files for libcpupower
Include test_raw_pylibcpupower.py
.../power/cpupower/bindings/python/.gitignore | 8 ++++
tools/power/cpupower/bindings/python/Makefile | 31 +++++++++++++
tools/power/cpupower/bindings/python/README | 33 ++++++++++++++
.../bindings/python/raw_pylibcpupower.i | 45 +++++++++++++++++++
.../bindings/python/test_raw_pylibcpupower.py | 42 +++++++++++++++++
5 files changed, 159 insertions(+)
create mode 100644 tools/power/cpupower/bindings/python/.gitignore
create mode 100644 tools/power/cpupower/bindings/python/Makefile
create mode 100644 tools/power/cpupower/bindings/python/README
create mode 100644 tools/power/cpupower/bindings/python/raw_pylibcpupower.i
create mode 100755 tools/power/cpupower/bindings/python/test_raw_pylibcpupower.py
--
2.45.2
next reply other threads:[~2024-07-24 22:13 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-07-24 22:11 John B. Wyatt IV [this message]
2024-07-24 22:11 ` [PATCH 1/2] Add SWIG bindings files for libcpupower John B. Wyatt IV
2024-07-24 22:11 ` [PATCH 2/2] Include test_raw_pylibcpupower.py John B. Wyatt IV
2024-07-26 17:34 ` [PATCH 0/2][RFC] Add SWIG Bindings to libcpupower Shuah Khan
2024-07-30 20:48 ` Shuah Khan
2024-08-01 21:24 ` John B. Wyatt IV
2024-08-04 8:54 ` Greg Kroah-Hartman
2024-08-06 20:56 ` John B. Wyatt IV
2024-08-20 6:40 ` John B. Wyatt IV
2024-08-21 7:08 ` Shuah Khan
2024-08-22 3:25 ` Shuah Khan
2024-08-27 17:58 ` John B. Wyatt IV
2024-08-09 20:25 ` Arnaldo Carvalho de Melo
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240724221122.54601-1-jwyatt@redhat.com \
--to=jwyatt@redhat.com \
--cc=jkacur@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=sageofredondo@gmail.com \
--cc=shuah@kernel.org \
--cc=skhan@linuxfoundation.org \
--cc=tglozar@redhat.com \
--cc=trenn@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®