我有一堆C文件是由一组python程序生成的,这些程序包含许多共享的python模块,我需要在make系统中对此进行说明。
很容易枚举需要运行哪个python程序来生成每个C文件。我找不到一个好的解决方案是确定那些程序所依赖的其他python文件。我需要这个,所以如果其中一个共享python文件发生变化,make会知道需要重新生成什么。
是否有一个很好的系统来从python源集合中生成make风格依赖规则?
答案 0 :(得分:3)
答案 1 :(得分:1)
import
语句几乎都是依赖项。导入语句有两种相关形式:
import x, y, z
from x import a, b, c
您还需要用于构建PYTHONPATH
的{{1}}和sites
信息。这显示了模块和包的物理位置。
处理起来很麻烦,因为你必须对你导入的所有模块中的所有导入进行传递关闭。
作为替代方法,您可以使用sys.path
选项获取导入和物理文件的完整列表。这会生成一个日志,您可以将其编辑为依赖项的平面列表。
例如,当我做
时-v
我在日志
中看到了这一点>>> import math