linux-perf-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] perf python: Avoid deprecation warning on distutils
@ 2022-06-15  1:42 Ian Rogers
  2022-07-18 12:50 ` James Clark
  0 siblings, 1 reply; 3+ messages in thread
From: Ian Rogers @ 2022-06-15  1:42 UTC (permalink / raw)
  To: Peter Zijlstra, Ingo Molnar, Arnaldo Carvalho de Melo,
	Mark Rutland, Alexander Shishkin, Jiri Olsa, Namhyung Kim,
	linux-perf-users, linux-kernel
  Cc: Ian Rogers

Fix the following DeprecationWarning:

tools/perf/util/setup.py:31: DeprecationWarning: The distutils
package is deprecated and slated for removal in Python 3.12. Use
setuptools or check PEP 632 for potential alternatives

Note: the setuptools module may need installing, for example:
sudo apt install python-setuptools

Signed-off-by: Ian Rogers <irogers@google.com>
---
 tools/perf/util/setup.py | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py
index c255a2c90cd6..5a3c74bce836 100644
--- a/tools/perf/util/setup.py
+++ b/tools/perf/util/setup.py
@@ -11,7 +11,7 @@ def clang_has_option(option):
     return [o for o in cc_output if ((b"unknown argument" in o) or (b"is not supported" in o))] == [ ]
 
 if cc_is_clang:
-    from distutils.sysconfig import get_config_vars
+    from sysconfig import get_config_vars
     vars = get_config_vars()
     for var in ('CFLAGS', 'OPT'):
         vars[var] = sub("-specs=[^ ]+", "", vars[var])
@@ -28,10 +28,10 @@ if cc_is_clang:
         if not clang_has_option("-ffat-lto-objects"):
             vars[var] = sub("-ffat-lto-objects", "", vars[var])
 
-from distutils.core import setup, Extension
+from setuptools import setup, Extension
 
-from distutils.command.build_ext   import build_ext   as _build_ext
-from distutils.command.install_lib import install_lib as _install_lib
+from setuptools.command.build_ext   import build_ext   as _build_ext
+from setuptools.command.install_lib import install_lib as _install_lib
 
 class build_ext(_build_ext):
     def finalize_options(self):
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf python: Avoid deprecation warning on distutils
  2022-06-15  1:42 [PATCH] perf python: Avoid deprecation warning on distutils Ian Rogers
@ 2022-07-18 12:50 ` James Clark
  2022-07-18 13:33   ` Arnaldo Carvalho de Melo
  0 siblings, 1 reply; 3+ messages in thread
From: James Clark @ 2022-07-18 12:50 UTC (permalink / raw)
  To: Ian Rogers, Arnaldo Carvalho de Melo
  Cc: Ian Rogers, Mark Rutland, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, linux-perf-users, linux-kernel, Peter Zijlstra,
	Ingo Molnar



On 15/06/2022 02:42, Ian Rogers wrote:
> Fix the following DeprecationWarning:
> 
> tools/perf/util/setup.py:31: DeprecationWarning: The distutils
> package is deprecated and slated for removal in Python 3.12. Use
> setuptools or check PEP 632 for potential alternatives
> 
> Note: the setuptools module may need installing, for example:
> sudo apt install python-setuptools
> 
> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
>  tools/perf/util/setup.py | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py
> index c255a2c90cd6..5a3c74bce836 100644
> --- a/tools/perf/util/setup.py
> +++ b/tools/perf/util/setup.py
> @@ -11,7 +11,7 @@ def clang_has_option(option):
>      return [o for o in cc_output if ((b"unknown argument" in o) or (b"is not supported" in o))] == [ ]
>  
>  if cc_is_clang:
> -    from distutils.sysconfig import get_config_vars
> +    from sysconfig import get_config_vars
>      vars = get_config_vars()
>      for var in ('CFLAGS', 'OPT'):
>          vars[var] = sub("-specs=[^ ]+", "", vars[var])
> @@ -28,10 +28,10 @@ if cc_is_clang:
>          if not clang_has_option("-ffat-lto-objects"):
>              vars[var] = sub("-ffat-lto-objects", "", vars[var])
>  
> -from distutils.core import setup, Extension
> +from setuptools import setup, Extension
>  
> -from distutils.command.build_ext   import build_ext   as _build_ext
> -from distutils.command.install_lib import install_lib as _install_lib
> +from setuptools.command.build_ext   import build_ext   as _build_ext
> +from setuptools.command.install_lib import install_lib as _install_lib
>  
>  class build_ext(_build_ext):
>      def finalize_options(self):

Tested it with python 2.7 and 3.8 by running "make install-python_ext PYTHON=..."

Reviewed-by: James Clark <james.clark@arm.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] perf python: Avoid deprecation warning on distutils
  2022-07-18 12:50 ` James Clark
@ 2022-07-18 13:33   ` Arnaldo Carvalho de Melo
  0 siblings, 0 replies; 3+ messages in thread
From: Arnaldo Carvalho de Melo @ 2022-07-18 13:33 UTC (permalink / raw)
  To: James Clark
  Cc: Ian Rogers, Ian Rogers, Mark Rutland, Alexander Shishkin,
	Jiri Olsa, Namhyung Kim, linux-perf-users, linux-kernel,
	Peter Zijlstra, Ingo Molnar

Em Mon, Jul 18, 2022 at 01:50:22PM +0100, James Clark escreveu:
> On 15/06/2022 02:42, Ian Rogers wrote:
> > Fix the following DeprecationWarning:
> > 
> > tools/perf/util/setup.py:31: DeprecationWarning: The distutils
> > package is deprecated and slated for removal in Python 3.12. Use
> > setuptools or check PEP 632 for potential alternatives
> > 
> > Note: the setuptools module may need installing, for example:
> > sudo apt install python-setuptools

Thanks, applied, added this to the cset log:

    Reviewer comments:

    James said:

    Tested it with python 2.7 and 3.8 by running "make install-python_ext PYTHON=..."

    Committer notes:

    Tested with:

     $ make -k BUILD_BPF_SKEL=1 PYTHON=python2 O=/tmp/build/perf-urgent -C tools/perf install-bin ; perf test python

     $ make -k BUILD_BPF_SKEL=1 PYTHON=python3 O=/tmp/build/perf-urgent -C tools/perf install-bin ; perf test python

     $ make -k BUILD_BPF_SKEL=1 O=/tmp/build/perf-urgent -C tools/perf install-bin ; perf test python


- Arnaldo

 > 
> > Signed-off-by: Ian Rogers <irogers@google.com>
> > ---
> >  tools/perf/util/setup.py | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> > 
> > diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py
> > index c255a2c90cd6..5a3c74bce836 100644
> > --- a/tools/perf/util/setup.py
> > +++ b/tools/perf/util/setup.py
> > @@ -11,7 +11,7 @@ def clang_has_option(option):
> >      return [o for o in cc_output if ((b"unknown argument" in o) or (b"is not supported" in o))] == [ ]
> >  
> >  if cc_is_clang:
> > -    from distutils.sysconfig import get_config_vars
> > +    from sysconfig import get_config_vars
> >      vars = get_config_vars()
> >      for var in ('CFLAGS', 'OPT'):
> >          vars[var] = sub("-specs=[^ ]+", "", vars[var])
> > @@ -28,10 +28,10 @@ if cc_is_clang:
> >          if not clang_has_option("-ffat-lto-objects"):
> >              vars[var] = sub("-ffat-lto-objects", "", vars[var])
> >  
> > -from distutils.core import setup, Extension
> > +from setuptools import setup, Extension
> >  
> > -from distutils.command.build_ext   import build_ext   as _build_ext
> > -from distutils.command.install_lib import install_lib as _install_lib
> > +from setuptools.command.build_ext   import build_ext   as _build_ext
> > +from setuptools.command.install_lib import install_lib as _install_lib
> >  
> >  class build_ext(_build_ext):
> >      def finalize_options(self):
> 
> Tested it with python 2.7 and 3.8 by running "make install-python_ext PYTHON=..."
> 
> Reviewed-by: James Clark <james.clark@arm.com>

-- 

- Arnaldo

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-07-18 13:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-15  1:42 [PATCH] perf python: Avoid deprecation warning on distutils Ian Rogers
2022-07-18 12:50 ` James Clark
2022-07-18 13:33   ` Arnaldo Carvalho de Melo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).