diff mbox series

[v2,for-next] pm: cpupower: rename raw_pylibcpupower.i

Message ID 20240912230102.157534-1-minhuadotchen@gmail.com
State Superseded
Headers show
Series [v2,for-next] pm: cpupower: rename raw_pylibcpupower.i | expand

Commit Message

Min-Hua Chen Sept. 12, 2024, 11:01 p.m. UTC
All *.i files will be removed by 'make mrproper',
including raw_pylibcpupower.i, added by
commit: 338f490e07bc ("pm:cpupower: Add SWIG bindings files for libcpupower")

We can reproduce the error by performing the following command:
cd linux-next
make mrproper
cd tools/power/cpupower/bindings/python
make

We will get an error message:
make: *** No rule to make target 'raw_pylibcpupower.i', needed by 'raw_pylibcpupower_wrap.c'.  Stop.

To fix it, rename raw_pylibcpupower.i to raw_pylibcpupower.if.

Reviewed-by: John B. Wyatt IV <jwyatt@redhat.com>
Reviewed-by: John B. Wyatt IV <sageofredondo@gmail.com>
Tested-by: John B. Wyatt IV <jwyatt@redhat.com>
Tested-by: John B. Wyatt IV <sageofredondo@gmail.com>
Signed-off-by: Min-Hua Chen <minhuadotchen@gmail.com>
---
 tools/power/cpupower/bindings/python/Makefile                 | 4 ++--
 .../python/{raw_pylibcpupower.i => raw_pylibcpupower.if}      | 0
 2 files changed, 2 insertions(+), 2 deletions(-)
 rename tools/power/cpupower/bindings/python/{raw_pylibcpupower.i => raw_pylibcpupower.if} (100%)

Comments

John B. Wyatt IV Sept. 13, 2024, 4:38 p.m. UTC | #1
On Fri, Sep 13, 2024 at 07:01:00AM +0800, Min-Hua Chen wrote:

> To fix it, rename raw_pylibcpupower.i to raw_pylibcpupower.if.

Would you please rename this to .swg instead?

'''
5.1.1 Input format

As input, SWIG expects a file containing ISO C/C++ declarations and special
SWIG directives. More often than not, this is a special SWIG interface file
which is usually denoted with a special .i or .swg suffix.
'''

https://www.swig.org/Doc4.2/SWIG.html

I tested it and .swg is not removed by 'make clean' or 'make mrproper'.

My apologies for the extra work Min-Hua. I can send a quick patch
instead if you wish.
Shuah Khan Sept. 13, 2024, 4:48 p.m. UTC | #2
On 9/13/24 10:38, John B. Wyatt IV wrote:
> On Fri, Sep 13, 2024 at 07:01:00AM +0800, Min-Hua Chen wrote:
> 
>> To fix it, rename raw_pylibcpupower.i to raw_pylibcpupower.if.
> 
> Would you please rename this to .swg instead?
> 
> '''
> 5.1.1 Input format
> 
> As input, SWIG expects a file containing ISO C/C++ declarations and special
> SWIG directives. More often than not, this is a special SWIG interface file
> which is usually denoted with a special .i or .swg suffix.
> '''
> 
> https://www.swig.org/Doc4.2/SWIG.html
> 
> I tested it and .swg is not removed by 'make clean' or 'make mrproper'.

That is expected.

.i extension is used for a C pre-processor out, hence the need to
mrprpoer and clean remove it. Because of that reason, using .i
will not work for swig interface files.

We build files to debug problems and to check the pre-processor
output. So changing mrproper and cleans to not remove .i would
leave the tree dirty.

This is the reason why I wanted to understand the problem to come up
with a solutions than renaming the file with .if extension.

Please add this information to the changelog so it is clear that
.i extenion will not work for swig files that get added to kernel repos.

> 
> My apologies for the extra work Min-Hua. I can send a quick patch
> instead if you wish.
> 

+1 - Yes please send me the patch with renaming it with .swg extension.

thanks,
-- Shuah
diff mbox series

Patch

diff --git a/tools/power/cpupower/bindings/python/Makefile b/tools/power/cpupower/bindings/python/Makefile
index dc09c5b66ead..de872a1b80d3 100644
--- a/tools/power/cpupower/bindings/python/Makefile
+++ b/tools/power/cpupower/bindings/python/Makefile
@@ -20,13 +20,13 @@  _raw_pylibcpupower.so: raw_pylibcpupower_wrap.o
 raw_pylibcpupower_wrap.o: raw_pylibcpupower_wrap.c
 	$(CC) -fPIC -c raw_pylibcpupower_wrap.c $(PY_INCLUDE)
 
-raw_pylibcpupower_wrap.c: raw_pylibcpupower.i
+raw_pylibcpupower_wrap.c: raw_pylibcpupower.if
 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
+	swig -python raw_pylibcpupower.if
 
 # Will only clean the bindings folder; will not clean the actual cpupower folder
 clean:
diff --git a/tools/power/cpupower/bindings/python/raw_pylibcpupower.i b/tools/power/cpupower/bindings/python/raw_pylibcpupower.if
similarity index 100%
rename from tools/power/cpupower/bindings/python/raw_pylibcpupower.i
rename to tools/power/cpupower/bindings/python/raw_pylibcpupower.if