当前位置: 首页 > news >正文

.SUFFIXES:

在 Makefile 中,.SUFFIXES: 是用于声明后缀规则的一个特殊变量,用来定义文件扩展名转换规则。它用于处理不同文件类型之间的自动转换,尤其是在没有显式规则的情况下。

作用:

  • .SUFFIXES: 清空当前 Makefile 中所有的后缀规则。这意味着 Makefile 不再默认处理常见的文件后缀转换(例如 .c.o.f.o)。

  • .SUFFIXES: .f90 .f .o 重新定义了一些后缀规则,允许从 .f90.f 文件生成 .o 文件。添加这些后缀的意义在于,Makefile 能够根据文件扩展名自动推导出编译规则。例如,可以自动从 .f90 文件生成 .o 文件,而不需要显式定义每个文件的规则。

使用场景:

通常,.SUFFIXES: 和后缀规则用于让 Makefile 自动识别文件类型,并在编译时自动处理不同类型文件的转换。清空 .SUFFIXES 列表并重新定义它,可以让开发者自定义哪些文件类型间可以自动转换,以及如何处理这些转换。

示例:

.SUFFIXES:  # 清空默认的后缀规则
.SUFFIXES: .f90 .o  # 定义新的后缀规则.f90.o:  # 定义从 .f90 到 .o 的转换规则$(FC) $(FCFLAGS) -c $<

在这个例子中:

  • .SUFFIXES: .f90 .o 表示 Makefile 会根据这些后缀进行转换,遇到 .f90 文件时,会自动尝试将其转换为 .o 文件。
  • 这和手动列出所有文件的转换规则相比,减少了重复代码的书写工作,同时使 Makefile 更加简洁。

总结:

.SUFFIXES: 是一种简便的机制,用来定义不同文件后缀的自动转换规则。通过 .SUFFIXES,你可以灵活地控制哪些文件类型会自动进行转换,以及它们之间的转换规则。


http://www.mrgr.cn/news/26087.html

相关文章:

  • 查询数据起始时间判断
  • Vue实用操作-2-如何使用网页开发者工具
  • 网页上的文件我不想下载只想看,一个插件满足你(所有文件)
  • leetcode 2398.预算内的最多机器人数目
  • Ready Go
  • 数据库基础知识---------------------------(1)
  • 【Qt笔记】QScrollArea控件详解
  • Web3入门指南:从基础概念到实际应用
  • N2011A叉车限速器如何实现超速报警且强制限速的
  • 【Flutter】⭐️UI库推荐! Flutter 中使用 dropdown_search实现下拉搜索效果
  • volatile关键字
  • 北京网页制作-网站策划
  • Shell:初识sed、awk
  • C++11第四弹:包装器
  • 干货分享,大厂内部压测方案设计
  • 详说 类和对象
  • 深入探索系统架构设计
  • 队列的实现(C语言)
  • 供应RM500UCNAB-D10-SNADA模块
  • Anaconda安装