[libcxx-commits] [PATCH] D148527: [libcxx] Replace find_executable with shutil.which
David Spickett via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Mon Apr 17 06:32:18 PDT 2023
DavidSpickett created this revision.
Herald added a subscriber: arichardson.
Herald added a project: All.
DavidSpickett requested review of this revision.
Herald added a project: libc++.
Herald added a subscriber: libcxx-commits.
Herald added a reviewer: libc++.
distutils is deprecated and shutil.which is the suggested
replacement for this function.
https://peps.python.org/pep-0632/#migration-advice
https://docs.python.org/3/library/shutil.html#shutil.which
which was added in 3.3 (https://docs.python.org/3/library/shutil.html#shutil.which)
and LLVM requires at least 3.6 (https://llvm.org/docs/GettingStarted.html#software).
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D148527
Files:
libcxx/utils/libcxx/sym_check/extract.py
libcxx/utils/libcxx/sym_check/util.py
Index: libcxx/utils/libcxx/sym_check/util.py
===================================================================
--- libcxx/utils/libcxx/sym_check/util.py
+++ libcxx/utils/libcxx/sym_check/util.py
@@ -8,8 +8,8 @@
from pprint import pformat
import ast
-import distutils.spawn
import re
+import shutil
import subprocess
import sys
@@ -60,7 +60,7 @@
f.write(out_str)
-_cppfilt_exe = distutils.spawn.find_executable('c++filt')
+_cppfilt_exe = shutil.which('c++filt')
def demangle_symbol(symbol):
Index: libcxx/utils/libcxx/sym_check/extract.py
===================================================================
--- libcxx/utils/libcxx/sym_check/extract.py
+++ libcxx/utils/libcxx/sym_check/extract.py
@@ -9,10 +9,10 @@
"""
extract - A set of function that extract symbol lists from shared libraries.
"""
-import distutils.spawn
import os.path
from os import environ
import re
+import shutil
import subprocess
import sys
@@ -30,7 +30,7 @@
"""
Search for the nm executable and return the path.
"""
- return distutils.spawn.find_executable('nm')
+ return shutil.which('nm')
def __init__(self, static_lib):
"""
@@ -119,7 +119,7 @@
"""
Search for the readelf executable and return the path.
"""
- return distutils.spawn.find_executable('readelf')
+ return shutil.which('readelf')
def __init__(self, static_lib):
"""
@@ -200,7 +200,7 @@
"""
Search for the dump executable and return the path.
"""
- return distutils.spawn.find_executable('dump')
+ return shutil.which('dump')
def __init__(self, static_lib):
"""
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D148527.514206.patch
Type: text/x-patch
Size: 1722 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20230417/6f3c9112/attachment.bin>
More information about the libcxx-commits
mailing list