[发明专利]一种Makefile文件生成方法、装置、设备及介质在审
申请号: | 202010692361.2 | 申请日: | 2020-07-17 |
公开(公告)号: | CN111857725A | 公开(公告)日: | 2020-10-30 |
发明(设计)人: | 刘文涛;吴睿振;张辉;沈欣舞 | 申请(专利权)人: | 山东云海国创云计算装备产业创新中心有限公司 |
主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/73;G06F16/16 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 孙晓红 |
地址: | 250001 山东省济南市自由贸易试验*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 makefile 文件 生成 方法 装置 设备 介质 | ||
本申请公开了一种Makefile文件生成方法、装置、设备及计算机可读存储介质,方法包括:利用预设的语法格式在存储源文件的文件夹中创建bulid.mk文本文件;创建宏配置文件及通用配置文件;结合宏配置文件及通用配置文件对bulid.mk文本文件进行解析,得到目标文件及目标文件的编译信息;生成与软件项目对应的Makefile文件。本申请公开的上述技术方案,通过bulid.mk文本文件的创建、宏配置文件及通用配置文件的创建、结合宏配置文件及通用配置文件来对bulid.mk文本文件的解析而实现Makefile文件的自动生成,以提高Makefile文件的生成效率和生成准确性。
技术领域
本申请涉及软件项目开发技术领域,更具体地说,涉及一种Makefile文件生成方法、装置、设备及计算机可读存储介质。
背景技术
Makefile是一种用来描述整个软件项目所有代码源文件编译和链接等规则的标准通用文件,其在几乎所有的软件项目都有使用。Makefile文件中包含了哪些源文件需要编译,哪些源文件不需要编译,哪些源文件需要先编译,哪些源文件需要后编译,哪些源文件需要重建等,所有和源文件编译相关的环节,都可以在Makefile文件中进行描述。
目前,对于Makefile文件,大多数采用手动编写的方式进行实现,但是,由于Makefile语法比较繁琐复杂,且对于中大型软件项目而言,Makefile文件数量繁多,因此,手动编写的方式则会降低Makefile文件的生成效率,并且容易出现编写错误。
综上所述,如何提高Makefile文件的生成效率和生成准确性,是目前本领域技术人员亟待解决的技术问题。
发明内容
有鉴于此,本申请的目的是提供一种Makefile文件生成方法、装置、设备及计算机可读存储介质,用于提高Makefile文件的生成效率和生成准确性。
为了实现上述目的,本申请提供如下技术方案:
一种Makefile文件生成方法,包括:
利用预设的语法格式在源文件的文件夹中创建bulid.mk文本文件;其中,所述源文件与软件项目相对应,所述bulid.mk文本文件中包括目标集合;
创建宏配置文件及通用配置文件;其中,所述宏配置文件用于表示所述目标集合中的目标文件是否进行编译,所述通用配置文件用于配置编译条件集合和头文件集合;
遍历所有所述文件夹中的所述bulid.mk文本文件,结合所述宏配置文件及所述通用配置文件对所述bulid.mk文本文件进行解析,得到所述目标文件及所述目标文件的编译信息;
根据所述目标文件及所述目标文件的编译信息生成与所述软件项目对应的Makefile文件。
优选的,结合所述宏配置文件及所述通用配置文件对所述bulid.mk文本文件进行解析,包括:
根据所述宏配置文件从当前文件夹的所述bulid.mk文本文件中抽取所述目标文件和需要继续遍历的子文件夹;
结合所述宏配置文件、所述通用配置文件中的所述编译条件集合和所述头文件集合解析所述目标文件的编译信息;
对需要继续遍历的子文件夹中的所述bulid.mk文本文件执行所述抽取所述目标文件和需要继续遍历的子文件夹的步骤,直至子文件夹的所述bulid.mk文本文件中仅包含目标文件且完成对所述目标文件的解析为止。
优选的,在结合所述宏配置文件、所述通用配置文件中的所述编译条件集合和所述头文件集合解析所述目标文件的编译信息之后,还包括:
在所述当前文件夹中创建tmp.mk文件,利用所述tmp.mk文件记录解析出的所述目标文件的编译信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东云海国创云计算装备产业创新中心有限公司,未经山东云海国创云计算装备产业创新中心有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010692361.2/2.html,转载请声明来源钻瓜专利网。