zoukankan      html  css  js  c++  java
  • Makefile文件(七)_使用函数

    参考http://blog.csdn.net/liang13664759/article/details/1771246/

    一、函数的调用语法

    函数调用,如变量的使用,也是以“$”来标识的,语法如下:

    $(<function> <arguments>)

    或者:

    ${<function> <arguments>}

    这里,<function>是函数名,make支持的函数不多,<arguments>是函数的参数,参数间以逗号“,”分隔,而函数名和参数之间以“空格”分隔。函数调用以“$”开头,圆括号或者花括号把函数名和参数括在一起,感觉很像一个变量。函数中的参数可以使用变量,为了风格的统一,函数和变量的括号最好统一一样。

    示例:

    comma := ,

    empty :=

    spae := $(empty) $(empty)

    foo := a b c

    bar := $(subst $(space), $(comma), $(foo))

    示例重,$(comma)的值是一个逗号。$(space)使用了$(empty)定义了一个空格,$(foo)的值是“a b c”,$(bar)的定义调用了“subst”替换函数,有三个参数,把$(foo)中的$(space)替换成$(comma),所以$(bar)的值是“a,b,c”

    二、字符串处理函数

    ①、$(subst <from>,<to>,<text>)

    名称:字符串替换函数==subst

    功能:把字符串<text>中的<from>替换成<to>

    返回:替换过后的字符串

    示例:

    $(subst ee,EE,feet on the street)=====》》》返回结果:fEEt on the srEEt

    ②、$(patsubst <pattern>,<replacement>,<text>)

    名称:模式字符串替换函数---patsubst

    功能:查找<text>中的单词是否符合模式<pattern>,如果匹配,则以<replacement>替换。<pattern>可以包含通配符“%”,表示任意长度的字串。如果<replacement>中也包含“%”,那么,<replacement>中的这个“%”是<pattern>中的“%”所代表的字串。

    返回:替换后的字符串

    示例:$(patsubst %.c,%.ox.c.c bar.c)===》》》把字串“x.c.c bar.c”符合模式[%.c]的单词替换成[%.o],返回结果是“x.c.o bar.o”

  • 相关阅读:
    MongoDB——(转)MongoDB 运维实战总结(转)
    MongoDB——4.4版本因果一致性会话
    架构——(转)用户中心 1亿数据 如何设计(转)
    MongoDB——命令备份
    JavaScript——JavaScript 弹窗
    git rebase
    shell脚本传参选项
    tftp 服务搭建
    gerrit搭建实现代码review
    Robot framework视频和教程分享
  • 原文地址:https://www.cnblogs.com/weiyi-mgh/p/7040844.html
Copyright © 2011-2022 走看看