Skip to content

Commit

Permalink
bpo-45561: Run smelly.py tool from $(srcdir) (pythonGH-29138)
Browse files Browse the repository at this point in the history
  • Loading branch information
nascheme authored and remykarem committed Dec 7, 2021
1 parent 75dc5b3 commit 12f45b8
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 4 deletions.
2 changes: 1 addition & 1 deletion Makefile.pre.in
Original file line number Diff line number Diff line change
Expand Up @@ -2420,7 +2420,7 @@ distclean: clobber

# Check that all symbols exported by libpython start with "Py" or "_Py"
smelly: @DEF_MAKE_RULE@
$(RUNSHARED) ./$(BUILDPYTHON) Tools/scripts/smelly.py
$(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/smelly.py

# Find files with funny names
funny:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Run smelly.py tool from $(srcdir).
9 changes: 6 additions & 3 deletions Tools/scripts/smelly.py
Original file line number Diff line number Diff line change
Expand Up @@ -108,8 +108,11 @@ def check_library(library, dynamic=False):

def check_extensions():
print(__file__)
srcdir = os.path.dirname(os.path.dirname(os.path.dirname(__file__)))
filename = os.path.join(srcdir, "pybuilddir.txt")
# This assumes pybuilddir.txt is in same directory as pyconfig.h.
# In the case of out-of-tree builds, we can't assume pybuilddir.txt is
# in the source folder.
config_dir = os.path.dirname(sysconfig.get_config_h_filename())
filename = os.path.join(config_dir, "pybuilddir.txt")
try:
with open(filename, encoding="utf-8") as fp:
pybuilddir = fp.readline()
Expand All @@ -118,7 +121,7 @@ def check_extensions():
return True

print(f"Check extension modules from {pybuilddir} directory")
builddir = os.path.join(srcdir, pybuilddir)
builddir = os.path.join(config_dir, pybuilddir)
nsymbol = 0
for name in os.listdir(builddir):
if not name.endswith(".so"):
Expand Down

0 comments on commit 12f45b8

Please sign in to comment.