如何为python代码做Makefile依赖

时间:2008-10-24 01:09:25

标签: python makefile dependencies

我有一堆C文件是由一组python程序生成的,这些程序包含许多共享的python模块,我需要在make系统中对此进行说明。

很容易枚举需要运行哪个python程序来生成每个C文件。我找不到一个好的解决方案是确定那些程序所依赖的其他python文件。我需要这个,所以如果其中一个共享python文件发生变化,make会知道需要重新生成什么。

是否有一个很好的系统来从python源集合中生成make风格依赖规则?

2 个答案:

答案 0 :(得分:3)

答案 1 :(得分:1)

import语句几乎都是依赖项。导入语句有两种相关形式:

import x, y, z
from x import a, b, c

您还需要用于构建PYTHONPATH的{​​{1}}和sites信息。这显示了模块和包的物理位置。

处理起来很麻烦,因为你必须对你导入的所有模块中的所有导入进行传递关闭。

作为替代方法,您可以使用sys.path选项获取导入和物理文件的完整列表。这会生成一个日志,您可以将其编辑为依赖项的平面列表。

例如,当我做

-v

我在日志

中看到了这一点
>>> import math