我正在构建一个make文件,我希望它能够容忍我有多个主要方法的事实,并且可能只考虑具有最高字母值的文件作为入口点。
有没有办法做到这一点或类似的东西?
答案 0 :(得分:1)
有几种方法可以做到这一点,具体取决于您想要或需要做出决定的级别。以下是我所知道的三个:
$(shell find | grep)
或$(shell grep -R ...)
来识别要构建的文件(包含)或过滤掉不构建的文件(排除),找出要构建的内容。 objdump
分析目标文件并过滤掉除最后一个之外具有main()
功能的目标文件。您可以使用$(shell sort ...)
作为帮助者或$(sort ...)
。make
,并且您使用的编译器/链接器组合允许弱声明可以被遮蔽,则可以使用$(sort)
在对象列表$(lastword)
上获取具有"最高名称"的对象,并在链接器文件列表中放置第一个(或最后一个,具体取决于链接器如何解析)。 / LI>