Важна команда distutils "build_py", так как она (косвенно) используется всеми командами, создающими дистрибутивы. Если вы переопределите метод byte_compile (files), что-то вроде:
try:
from setuptools.command.build_py import build_py
except ImportError:
from distutils.command.build_py import build_py
class build_py(build_py)
def byte_compile(self, files):
super(build_py, self).byte_compile(files)
for file in files:
if file.endswith('.py'):
os.unlink(file)
setup(
...
cmdclass = dict(build_py=build_py),
...
)
Вы должны быть в состоянии сделать так, чтобы исходные файлы были удалены из дерева сборки, прежде чем они будут скопированы в каталог "install" (который является временным каталогом, когда команды bdist вызывают их).
Примечание: я не проверял этот код; YMMV.