diff mbox series

[1/1] pm:cpupower: Add error warning when SWIG is not installed

Message ID 20240906130010.93773-1-jwyatt@redhat.com
State Accepted
Commit 80e67f1802d0fc21543216557a68320c71d7dbe1
Headers show
Series [1/1] pm:cpupower: Add error warning when SWIG is not installed | expand

Commit Message

John B. Wyatt IV Sept. 6, 2024, 1 p.m. UTC
Add error message to better explain to the user when SWIG and
python-config is missing from the path. Makefile was cleaned up
and unneeded elements were removed.

Suggested-by: Shuah Khan <skhan@linuxfoundation.org>
Signed-off-by: John B. Wyatt IV <jwyatt@redhat.com>
Signed-off-by: John B. Wyatt IV <sageofredondo@gmail.com>
---
 tools/power/cpupower/bindings/python/Makefile | 20 ++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)

Comments

Shuah Khan Sept. 6, 2024, 5:02 p.m. UTC | #1
On 9/6/24 07:00, John B. Wyatt IV wrote:
> Add error message to better explain to the user when SWIG and
> python-config is missing from the path. Makefile was cleaned up
> and unneeded elements were removed.
> 

> Suggested-by: Shuah Khan <skhan@linuxfoundation.org>
> Signed-off-by: John B. Wyatt IV <jwyatt@redhat.com>
> Signed-off-by: John B. Wyatt IV <sageofredondo@gmail.com>

Thank you. You don't need 1/1 in the prefix for single patches.

Applied to https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux.git/?h=cpupowe
for Linux 6.12-rc1

thanks,
-- Shuah
John B. Wyatt IV Sept. 12, 2024, 5:59 p.m. UTC | #2
On Fri, Sep 06, 2024 at 11:02:35AM -0600, Shuah Khan wrote:
> On 9/6/24 07:00, John B. Wyatt IV wrote:
> > Add error message to better explain to the user when SWIG and
> > python-config is missing from the path. Makefile was cleaned up
> > and unneeded elements were removed.
> > 
> 
> > Suggested-by: Shuah Khan <skhan@linuxfoundation.org>
> > Signed-off-by: John B. Wyatt IV <jwyatt@redhat.com>
> > Signed-off-by: John B. Wyatt IV <sageofredondo@gmail.com>
> 
> Thank you. You don't need 1/1 in the prefix for single patches.
> 
> Applied to https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux.git/?h=cpupowe
> for Linux 6.12-rc1

You are welcome and thank you for the guidance on improving my make skills.
diff mbox series

Patch

diff --git a/tools/power/cpupower/bindings/python/Makefile b/tools/power/cpupower/bindings/python/Makefile
index d0418f902795..dc09c5b66ead 100644
--- a/tools/power/cpupower/bindings/python/Makefile
+++ b/tools/power/cpupower/bindings/python/Makefile
@@ -4,26 +4,28 @@ 
 # This Makefile expects you have already run the makefile for cpupower to build
 # the .o files in the lib directory for the bindings to be created.
 
-CC=gcc
-
-LIB_DIR = ../../lib
-BIND_DIR = .
-PY_INCLUDE := $(firstword $(shell python-config --includes))
-#PY_INCLUDE = $(shell python-config --includes | awk '{ print $1 }')
+CC := gcc
+HAVE_SWIG := $(shell if which swig >/dev/null 2>&1; then echo 1; else echo 0; fi)
+HAVE_PYCONFIG := $(shell if which python-config >/dev/null 2>&1; then echo 1; else echo 0; fi)
 
+LIB_DIR := ../../lib
+PY_INCLUDE = $(firstword $(shell python-config --includes))
 OBJECTS_LIB = $(wildcard $(LIB_DIR)/*.o)
-OBJECTS_BIND = $(wildcard $(BIND_DIR)/*.o)
 
 all: _raw_pylibcpupower.so
 
 _raw_pylibcpupower.so: raw_pylibcpupower_wrap.o
-	$(CC) -shared $(OBJECTS_LIB) raw_pylibcpupower_wrap.o -o _raw_pylibcpupower.so # raw_pylibcpupower_wrap.o
-#	$(CC) -shared $(OBJECTS_BIND) $(OBJECTS_LIB) -o _raw_pylibcpupower.so # raw_pylibcpupower_wrap.o
+	$(CC) -shared $(OBJECTS_LIB) raw_pylibcpupower_wrap.o -o _raw_pylibcpupower.so
 
 raw_pylibcpupower_wrap.o: raw_pylibcpupower_wrap.c
 	$(CC) -fPIC -c raw_pylibcpupower_wrap.c $(PY_INCLUDE)
 
 raw_pylibcpupower_wrap.c: raw_pylibcpupower.i
+ifeq ($(HAVE_SWIG),0)
+	$(error "swig was not found. Make sure you have it installed and in the PATH to generate the bindings.")
+else ifeq ($(HAVE_PYCONFIG),0)
+	$(error "python-config was not found. Make sure you have it installed and in the PATH to generate the bindings.")
+endif
 	swig -python raw_pylibcpupower.i
 
 # Will only clean the bindings folder; will not clean the actual cpupower folder