summaryrefslogtreecommitdiff
path: root/setuptools/command/build.py
diff options
context:
space:
mode:
authorIsuru Fernando <isuruf@gmail.com>2022-06-09 11:36:15 -0500
committerIsuru Fernando <isuruf@gmail.com>2022-06-09 11:48:37 -0500
commit082c80e394a4825bc5ec31ffed1f5ab9caeb5d83 (patch)
treecb39a797afbd80af42b25fced7b1e5562289c79c /setuptools/command/build.py
parent8a8aa3c861efb589a50dead84dc2dcb89cddcf43 (diff)
downloadpython-setuptools-git-082c80e394a4825bc5ec31ffed1f5ab9caeb5d83.tar.gz
separate subcommands for setuptools class
Original author: Anderson Bravalheri
Diffstat (limited to 'setuptools/command/build.py')
-rw-r--r--setuptools/command/build.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/setuptools/command/build.py b/setuptools/command/build.py
index 6f0e560c..932de472 100644
--- a/setuptools/command/build.py
+++ b/setuptools/command/build.py
@@ -1,5 +1,24 @@
from distutils.command.build import build as _build
+import warnings
+
+from setuptools import SetuptoolsDeprecationWarning
+
+
+_ORIGINAL_SUBCOMMANDS = {"build_py", "build_clib", "build_ext", "build_scripts"}
class build(_build):
- pass
+ # copy to avoid sharing the object with parent class
+ sub_commands = _build.sub_commands[:]
+
+ def run(self):
+ subcommands = {cmd[0] for cmd in _build.sub_commands}
+ if subcommands - _ORIGINAL_SUBCOMMANDS:
+ msg = """
+ It seems that you are using `distutils.command.build.build` to add
+ new subcommands. Using `distutils` directly is considered deprecated,
+ please use `setuptools.command.build`.
+ """
+ warnings.warns(msg, SetuptoolsDeprecationWarning)
+ self.sub_commands = _build.sub_commands
+ super().run()