mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-29 13:33:07 +00:00
Installs the .so and .py files generated by SWIG to system's site packages directory. This allows the Python bindings to be used system wide. This commit also includes documentation on setting up and installing the Python bindings. Link: https://lore.kernel.org/r/20241219012606.38963-1-jwyatt@redhat.com Signed-off-by: "John B. Wyatt IV" <jwyatt@redhat.com> Signed-off-by: "John B. Wyatt IV" <sageofredondo@gmail.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
85 lines
2.0 KiB
Plaintext
85 lines
2.0 KiB
Plaintext
This folder contains the necessary files to build the Python bindings for
|
|
libcpupower (aside from the libcpupower object files).
|
|
|
|
|
|
requirements
|
|
------------
|
|
|
|
* You need the object files in the libcpupower directory compiled by
|
|
cpupower's makefile.
|
|
* The SWIG program must be installed.
|
|
* The Python's development libraries installed.
|
|
|
|
Please check that your version of SWIG is compatible with the version of Python
|
|
installed on your machine by checking the SWIG changelog on their website.
|
|
https://swig.org/
|
|
|
|
Note that while SWIG itself is GPL v3+ licensed; the resulting output,
|
|
the bindings code: is permissively licensed + the license of libcpupower's .o
|
|
files. For these bindings that means GPL v2.
|
|
|
|
Please see https://swig.org/legal.html and the discussion [1] for more details.
|
|
|
|
[1]
|
|
https://lore.kernel.org/linux-pm/Zqv9BOjxLAgyNP5B@hatbackup/
|
|
|
|
|
|
build
|
|
-----
|
|
|
|
Install SWIG and the Python development files provided by your distribution.
|
|
|
|
Build the object files for libcpupower by running make in the cpupower
|
|
directory.
|
|
|
|
Return to the directory this README is in to run:
|
|
|
|
$ make
|
|
|
|
|
|
testing
|
|
-------
|
|
|
|
Please verify the _raw_pylibcpupower.so and raw_pylibcpupower.py files have
|
|
been created.
|
|
|
|
To run the test script:
|
|
|
|
$ python test_raw_pylibcpupower.py
|
|
|
|
|
|
developing/using the bindings directly
|
|
--------------------------------------
|
|
|
|
You need to add the Python bindings directory to your $PYTHONPATH.
|
|
|
|
You would set the path in the Bash terminal or in the Bash profile:
|
|
|
|
PYTHONPATH=~/linux/tools/power/cpupower/bindings/python:$PYTHONPATH
|
|
|
|
This allows you to set a specific repo of the bindings to use.
|
|
|
|
|
|
installing/uninstalling
|
|
-----------------------
|
|
|
|
Python uses a system specific site-packages folder to look up modules to import
|
|
by default. You do not need to install cpupower to use the SWIG bindings.
|
|
|
|
You can install and uninstall the bindings to the site-packages with:
|
|
|
|
sudo make install
|
|
|
|
sudo make uninstall
|
|
|
|
|
|
credits
|
|
-------
|
|
|
|
Original Bindings Author:
|
|
John B. Wyatt IV
|
|
jwyatt@redhat.com
|
|
sageofredondo@gmail.com
|
|
|
|
Copyright (C) 2024 Red Hat
|