setup.py 构建不会在每个 C 源文件/增量构建上重新调用编译器

setup.py build that doesn't reinvoke compiler on every C source file / incremental build

有没有办法 运行 python setup.py build 使用 C 扩展,它不涉及无条件地重新运行编译器对 Python 已知的每个 C 文件项目?

我们已经设法将 ninja 整合到我们的 setup.py 中。 https://github.com/onnx/onnx/commit/d1bfcebd9c21a836d88b63ea8715c7a5b137ef32

它即时创建 ninja 构建文件并在 link 阶段调用 ninja。