zoukankan      html  css  js  c++  java
  • Makefile之函数:firstword、origin、patsubst、wildcard、

    一、firstword

      函数格式:$(firstword<text>)

      函数作用:取出text字符串中的第一个单词

      返回值:获取到的单词。

    二、origin

      函数格式:$(origin <variable>)

      函数作用:origin是函数,它不操作变量的值

      返回值:是变量来源

      举例:

    #如果变量V是在命令行中定义的,那么它的变量来源就是command line
    #如果编译的时候再命令行中输入V=1,即make V=1,那么
    #"$(origin V)"则和"command line"相等,,若V=1,那么KBUILD_VERBOSE=1
    
    ifeq ("$(origin V)", "command line")
      KBUILD_VERBOSE = $(V)
    endif

    三、patsubst

      函数格式:$(patsubst<pattern>,<replacement>,<text>)
      函数功能: patsubst是替换函数,在text中查找符合pattern的部分,如果匹配的话就用replacement替换掉。
      返回值:返回替换后的text

      举例:

    #在script/basic中查找符合“tpl/%”的部分,然后将tpl/取消掉,但没有符合,故src=script/basic
    
    src :=$(patsubst tpl/%,%,scripts/basic)

    #将libs-y中的/替换为/built-in.o
     libs-y      := $(patsubst %/, %/built-in.o, $(libs-y))

    四、wildcard

      函数格式:$(wildcard PATTERN)
      函数功能: 获取匹配 PATTERN 的所有对象
      返回值::使用空格分割的匹配对象列表

  • 相关阅读:
    POJ2406【KMP-next数组】
    POJ2752【KMP-next数组含义】
    POJ3696【欧拉函数+欧拉定理】
    POJ3692【二分匹配】
    POJ3697【BFS】
    CodeForces599D【数学】
    CodeForces599C【贪心】
    HDU1829【种类并查集】
    HDU3038【种类并查集】
    POJ1182【种类并查集】
  • 原文地址:https://www.cnblogs.com/keepdoing123/p/15515702.html
Copyright © 2011-2022 走看看