* [PATCH] kbuild: remove PYTHON variable
@ 2021-02-01 1:00 ` Masahiro Yamada
0 siblings, 0 replies; 8+ messages in thread
From: Masahiro Yamada @ 2021-02-01 1:00 UTC (permalink / raw)
To: linux-kbuild
Cc: linux-doc, Masahiro Yamada, Fenghua Yu, Jonathan Corbet,
Michal Marek, Tony Luck, linux-ia64, linux-kernel
Python retired in 2020, and some distributions do not provide the
'python' command any more.
As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
we need to use more specific 'python3' to invoke scripts even if they
are written in a way compatible with both Python 2 and 3.
This commit removes the variable 'PYTHON', and switches the existing
users to 'PYTHON3'.
BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
material.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
Documentation/Makefile | 2 +-
Documentation/kbuild/makefiles.rst | 2 +-
Makefile | 3 +--
arch/ia64/Makefile | 2 +-
arch/ia64/scripts/unwcheck.py | 2 +-
scripts/jobserver-exec | 2 +-
6 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 61a7310b49e0..9c42dde97671 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -75,7 +75,7 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/userspace-api/media $2 && \
PYTHONDONTWRITEBYTECODE=1 \
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
- $(PYTHON) $(srctree)/scripts/jobserver-exec \
+ $(PYTHON3) $(srctree)/scripts/jobserver-exec \
$(SHELL) $(srctree)/Documentation/sphinx/parallel-wrapper.sh \
$(SPHINXBUILD) \
-b $2 \
diff --git a/Documentation/kbuild/makefiles.rst b/Documentation/kbuild/makefiles.rst
index 9f6a11881951..300d8edcb994 100644
--- a/Documentation/kbuild/makefiles.rst
+++ b/Documentation/kbuild/makefiles.rst
@@ -755,7 +755,7 @@ more details, with real examples.
bits on the scripts nonetheless.
Kbuild provides variables $(CONFIG_SHELL), $(AWK), $(PERL),
- $(PYTHON) and $(PYTHON3) to refer to interpreters for the respective
+ and $(PYTHON3) to refer to interpreters for the respective
scripts.
Example::
diff --git a/Makefile b/Makefile
index b0e4767735dc..89217e4e68c6 100644
--- a/Makefile
+++ b/Makefile
@@ -452,7 +452,6 @@ AWK = awk
INSTALLKERNEL := installkernel
DEPMOD = depmod
PERL = perl
-PYTHON = python
PYTHON3 = python3
CHECK = sparse
BASH = bash
@@ -508,7 +507,7 @@ CLANG_FLAGS :=
export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
-export PERL PYTHON PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
+export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile
index 703b1c4f6d12..45d5368d6a99 100644
--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -69,7 +69,7 @@ vmlinux.bin: vmlinux FORCE
$(call if_changed,objcopy)
unwcheck: vmlinux
- -$(Q)READELF=$(READELF) $(PYTHON) $(srctree)/arch/ia64/scripts/unwcheck.py $<
+ -$(Q)READELF=$(READELF) $(PYTHON3) $(srctree)/arch/ia64/scripts/unwcheck.py $<
archclean:
diff --git a/arch/ia64/scripts/unwcheck.py b/arch/ia64/scripts/unwcheck.py
index bfd1b671e35f..9581742f0db2 100644
--- a/arch/ia64/scripts/unwcheck.py
+++ b/arch/ia64/scripts/unwcheck.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
#
# Usage: unwcheck.py FILE
diff --git a/scripts/jobserver-exec b/scripts/jobserver-exec
index 0fdb31a790a8..48d141e3ec56 100755
--- a/scripts/jobserver-exec
+++ b/scripts/jobserver-exec
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0+
#
# This determines how many parallel tasks "make" is expecting, as it is
--
2.27.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH] kbuild: remove PYTHON variable
@ 2021-02-01 1:00 ` Masahiro Yamada
0 siblings, 0 replies; 8+ messages in thread
From: Masahiro Yamada @ 2021-02-01 1:00 UTC (permalink / raw)
To: linux-kbuild
Cc: linux-doc, Masahiro Yamada, Fenghua Yu, Jonathan Corbet,
Michal Marek, Tony Luck, linux-ia64, linux-kernel
Python retired in 2020, and some distributions do not provide the
'python' command any more.
As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
we need to use more specific 'python3' to invoke scripts even if they
are written in a way compatible with both Python 2 and 3.
This commit removes the variable 'PYTHON', and switches the existing
users to 'PYTHON3'.
BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
material.
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---
Documentation/Makefile | 2 +-
Documentation/kbuild/makefiles.rst | 2 +-
Makefile | 3 +--
arch/ia64/Makefile | 2 +-
arch/ia64/scripts/unwcheck.py | 2 +-
scripts/jobserver-exec | 2 +-
6 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/Documentation/Makefile b/Documentation/Makefile
index 61a7310b49e0..9c42dde97671 100644
--- a/Documentation/Makefile
+++ b/Documentation/Makefile
@@ -75,7 +75,7 @@ quiet_cmd_sphinx = SPHINX $@ --> file://$(abspath $(BUILDDIR)/$3/$4)
cmd_sphinx = $(MAKE) BUILDDIR=$(abspath $(BUILDDIR)) $(build)=Documentation/userspace-api/media $2 && \
PYTHONDONTWRITEBYTECODE=1 \
BUILDDIR=$(abspath $(BUILDDIR)) SPHINX_CONF=$(abspath $(srctree)/$(src)/$5/$(SPHINX_CONF)) \
- $(PYTHON) $(srctree)/scripts/jobserver-exec \
+ $(PYTHON3) $(srctree)/scripts/jobserver-exec \
$(SHELL) $(srctree)/Documentation/sphinx/parallel-wrapper.sh \
$(SPHINXBUILD) \
-b $2 \
diff --git a/Documentation/kbuild/makefiles.rst b/Documentation/kbuild/makefiles.rst
index 9f6a11881951..300d8edcb994 100644
--- a/Documentation/kbuild/makefiles.rst
+++ b/Documentation/kbuild/makefiles.rst
@@ -755,7 +755,7 @@ more details, with real examples.
bits on the scripts nonetheless.
Kbuild provides variables $(CONFIG_SHELL), $(AWK), $(PERL),
- $(PYTHON) and $(PYTHON3) to refer to interpreters for the respective
+ and $(PYTHON3) to refer to interpreters for the respective
scripts.
Example::
diff --git a/Makefile b/Makefile
index b0e4767735dc..89217e4e68c6 100644
--- a/Makefile
+++ b/Makefile
@@ -452,7 +452,6 @@ AWK = awk
INSTALLKERNEL := installkernel
DEPMOD = depmod
PERL = perl
-PYTHON = python
PYTHON3 = python3
CHECK = sparse
BASH = bash
@@ -508,7 +507,7 @@ CLANG_FLAGS :
export ARCH SRCARCH CONFIG_SHELL BASH HOSTCC KBUILD_HOSTCFLAGS CROSS_COMPILE LD CC
export CPP AR NM STRIP OBJCOPY OBJDUMP READELF PAHOLE RESOLVE_BTFIDS LEX YACC AWK INSTALLKERNEL
-export PERL PYTHON PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
+export PERL PYTHON3 CHECK CHECKFLAGS MAKE UTS_MACHINE HOSTCXX
export KGZIP KBZIP2 KLZOP LZMA LZ4 XZ ZSTD
export KBUILD_HOSTCXXFLAGS KBUILD_HOSTLDFLAGS KBUILD_HOSTLDLIBS LDFLAGS_MODULE
diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile
index 703b1c4f6d12..45d5368d6a99 100644
--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -69,7 +69,7 @@ vmlinux.bin: vmlinux FORCE
$(call if_changed,objcopy)
unwcheck: vmlinux
- -$(Q)READELF=$(READELF) $(PYTHON) $(srctree)/arch/ia64/scripts/unwcheck.py $<
+ -$(Q)READELF=$(READELF) $(PYTHON3) $(srctree)/arch/ia64/scripts/unwcheck.py $<
archclean:
diff --git a/arch/ia64/scripts/unwcheck.py b/arch/ia64/scripts/unwcheck.py
index bfd1b671e35f..9581742f0db2 100644
--- a/arch/ia64/scripts/unwcheck.py
+++ b/arch/ia64/scripts/unwcheck.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0
#
# Usage: unwcheck.py FILE
diff --git a/scripts/jobserver-exec b/scripts/jobserver-exec
index 0fdb31a790a8..48d141e3ec56 100755
--- a/scripts/jobserver-exec
+++ b/scripts/jobserver-exec
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# SPDX-License-Identifier: GPL-2.0+
#
# This determines how many parallel tasks "make" is expecting, as it is
--
2.27.0
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
2021-02-01 1:00 ` Masahiro Yamada
@ 2021-02-01 16:38 ` Jonathan Corbet
-1 siblings, 0 replies; 8+ messages in thread
From: Jonathan Corbet @ 2021-02-01 16:38 UTC (permalink / raw)
To: Masahiro Yamada, linux-kbuild
Cc: linux-doc, Masahiro Yamada, Fenghua Yu, Michal Marek, Tony Luck,
linux-ia64, linux-kernel, linux-doc
Masahiro Yamada <masahiroy@kernel.org> writes:
> Python retired in 2020, and some distributions do not provide the
> 'python' command any more.
>
> As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
> we need to use more specific 'python3' to invoke scripts even if they
> are written in a way compatible with both Python 2 and 3.
>
> This commit removes the variable 'PYTHON', and switches the existing
> users to 'PYTHON3'.
>
> BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
> material.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
So this will have the effect of making the docs build impossible for
folks who only have Python 2. As I said before, this is a step that we
knew was coming, we just hadn't decided on the exact timing - I guess
this decides for us :)
That said, I'll copy linux-doc to see if anybody screams. I assume this
is a 5.12 change?
Thanks,
jon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
@ 2021-02-01 16:38 ` Jonathan Corbet
0 siblings, 0 replies; 8+ messages in thread
From: Jonathan Corbet @ 2021-02-01 16:38 UTC (permalink / raw)
To: Masahiro Yamada, linux-kbuild
Cc: linux-doc, Masahiro Yamada, Fenghua Yu, Michal Marek, Tony Luck,
linux-ia64, linux-kernel, linux-doc
Masahiro Yamada <masahiroy@kernel.org> writes:
> Python retired in 2020, and some distributions do not provide the
> 'python' command any more.
>
> As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
> we need to use more specific 'python3' to invoke scripts even if they
> are written in a way compatible with both Python 2 and 3.
>
> This commit removes the variable 'PYTHON', and switches the existing
> users to 'PYTHON3'.
>
> BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
> material.
>
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
So this will have the effect of making the docs build impossible for
folks who only have Python 2. As I said before, this is a step that we
knew was coming, we just hadn't decided on the exact timing - I guess
this decides for us :)
That said, I'll copy linux-doc to see if anybody screams. I assume this
is a 5.12 change?
Thanks,
jon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
2021-02-01 16:38 ` Jonathan Corbet
@ 2021-02-01 20:58 ` Masahiro Yamada
-1 siblings, 0 replies; 8+ messages in thread
From: Masahiro Yamada @ 2021-02-01 20:58 UTC (permalink / raw)
To: Jonathan Corbet
Cc: Linux Kbuild mailing list, open list:DOCUMENTATION, Fenghua Yu,
Michal Marek, Tony Luck, linux-ia64, Linux Kernel Mailing List
On Tue, Feb 2, 2021 at 1:38 AM Jonathan Corbet <corbet@lwn.net> wrote:
>
> Masahiro Yamada <masahiroy@kernel.org> writes:
>
> > Python retired in 2020, and some distributions do not provide the
> > 'python' command any more.
> >
> > As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
> > we need to use more specific 'python3' to invoke scripts even if they
> > are written in a way compatible with both Python 2 and 3.
> >
> > This commit removes the variable 'PYTHON', and switches the existing
> > users to 'PYTHON3'.
> >
> > BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
> > material.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
>
> So this will have the effect of making the docs build impossible for
> folks who only have Python 2.
Is this a problem? Python 2 is EOL.
Everybody who wants to use Python
must install Python 3.
Rather, people are screaming
that the 'python' command does not exist.
> As I said before, this is a step that we
> knew was coming, we just hadn't decided on the exact timing - I guess
> this decides for us :)
>
> That said, I'll copy linux-doc to see if anybody screams. I assume this
> is a 5.12 change?
No, I am planning to do this for 5.11
(a pull request this week if there is no objection).
> Thanks,
>
> jon
>
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
@ 2021-02-01 20:58 ` Masahiro Yamada
0 siblings, 0 replies; 8+ messages in thread
From: Masahiro Yamada @ 2021-02-01 20:58 UTC (permalink / raw)
To: Jonathan Corbet
Cc: Linux Kbuild mailing list, open list:DOCUMENTATION, Fenghua Yu,
Michal Marek, Tony Luck, linux-ia64, Linux Kernel Mailing List
On Tue, Feb 2, 2021 at 1:38 AM Jonathan Corbet <corbet@lwn.net> wrote:
>
> Masahiro Yamada <masahiroy@kernel.org> writes:
>
> > Python retired in 2020, and some distributions do not provide the
> > 'python' command any more.
> >
> > As in commit 51839e29cb59 ("scripts: switch explicitly to Python 3"),
> > we need to use more specific 'python3' to invoke scripts even if they
> > are written in a way compatible with both Python 2 and 3.
> >
> > This commit removes the variable 'PYTHON', and switches the existing
> > users to 'PYTHON3'.
> >
> > BTW, PEP 394 (https://www.python.org/dev/peps/pep-0394/) is a helpful
> > material.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
>
> So this will have the effect of making the docs build impossible for
> folks who only have Python 2.
Is this a problem? Python 2 is EOL.
Everybody who wants to use Python
must install Python 3.
Rather, people are screaming
that the 'python' command does not exist.
> As I said before, this is a step that we
> knew was coming, we just hadn't decided on the exact timing - I guess
> this decides for us :)
>
> That said, I'll copy linux-doc to see if anybody screams. I assume this
> is a 5.12 change?
No, I am planning to do this for 5.11
(a pull request this week if there is no objection).
> Thanks,
>
> jon
>
--
Best Regards
Masahiro Yamada
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
2021-02-01 20:58 ` Masahiro Yamada
@ 2021-02-01 21:21 ` Jonathan Corbet
-1 siblings, 0 replies; 8+ messages in thread
From: Jonathan Corbet @ 2021-02-01 21:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Linux Kbuild mailing list, open list:DOCUMENTATION, Fenghua Yu,
Michal Marek, Tony Luck, linux-ia64, Linux Kernel Mailing List
Masahiro Yamada <masahiroy@kernel.org> writes:
> On Tue, Feb 2, 2021 at 1:38 AM Jonathan Corbet <corbet@lwn.net> wrote:
>> So this will have the effect of making the docs build impossible for
>> folks who only have Python 2.
>
> Is this a problem? Python 2 is EOL.
>
> Everybody who wants to use Python
> must install Python 3.
I honestly don't know, but people do keep things around for a
surprisingly long time.
>> As I said before, this is a step that we
>> knew was coming, we just hadn't decided on the exact timing - I guess
>> this decides for us :)
>>
>> That said, I'll copy linux-doc to see if anybody screams. I assume this
>> is a 5.12 change?
>
> No, I am planning to do this for 5.11
> (a pull request this week if there is no objection).
I'm not going to truly object and try to block this, but I worry that
it's soon and without warning. It's not a change I would merge for
-rc7. IMO this should be done in 5.12 with an appropriate note added to
Documentation/process/changes.rst as well.
Thanks,
jon
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH] kbuild: remove PYTHON variable
@ 2021-02-01 21:21 ` Jonathan Corbet
0 siblings, 0 replies; 8+ messages in thread
From: Jonathan Corbet @ 2021-02-01 21:21 UTC (permalink / raw)
To: Masahiro Yamada
Cc: Linux Kbuild mailing list, open list:DOCUMENTATION, Fenghua Yu,
Michal Marek, Tony Luck, linux-ia64, Linux Kernel Mailing List
Masahiro Yamada <masahiroy@kernel.org> writes:
> On Tue, Feb 2, 2021 at 1:38 AM Jonathan Corbet <corbet@lwn.net> wrote:
>> So this will have the effect of making the docs build impossible for
>> folks who only have Python 2.
>
> Is this a problem? Python 2 is EOL.
>
> Everybody who wants to use Python
> must install Python 3.
I honestly don't know, but people do keep things around for a
surprisingly long time.
>> As I said before, this is a step that we
>> knew was coming, we just hadn't decided on the exact timing - I guess
>> this decides for us :)
>>
>> That said, I'll copy linux-doc to see if anybody screams. I assume this
>> is a 5.12 change?
>
> No, I am planning to do this for 5.11
> (a pull request this week if there is no objection).
I'm not going to truly object and try to block this, but I worry that
it's soon and without warning. It's not a change I would merge for
-rc7. IMO this should be done in 5.12 with an appropriate note added to
Documentation/process/changes.rst as well.
Thanks,
jon
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2021-02-01 21:22 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-01 1:00 [PATCH] kbuild: remove PYTHON variable Masahiro Yamada
2021-02-01 1:00 ` Masahiro Yamada
2021-02-01 16:38 ` Jonathan Corbet
2021-02-01 16:38 ` Jonathan Corbet
2021-02-01 20:58 ` Masahiro Yamada
2021-02-01 20:58 ` Masahiro Yamada
2021-02-01 21:21 ` Jonathan Corbet
2021-02-01 21:21 ` Jonathan Corbet
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.