zoukankan      html  css  js  c++  java
  • Makefile 之 $(Q)

     1 # To put more focus on warnings, be less verbose as default
     2 # Use 'make V=1' to see the full commands
     3 ifeq ("$(origin V)", "command line")
     4   KBUILD_VERBOSE = $(V)
     5 endif
     6 ifndef KBUILD_VERBOSE
     7   KBUILD_VERBOSE = 0
     8 endif
     9 
    10 ifeq ($(KBUILD_VERBOSE),1)
    11   Q =
    12 ifndef VERBOSE
    13   VERBOSE = 1
    14 endif
    15 export VERBOSE
    16 else
    17   Q = @
    18 endif

    $(Q) 变量的本质就是 Makefile中的命令显示与否,命令前有@字符,则不显示命令本身而只显示命令的执行结果。

    而 Q = @与否,是通过KBUILD_VERBOSE变量控制。

    如果执行make menuconfig V=1,那么Q等于空,即显示命令本身且显示命令的执行结果;

    如果执行make menuconfig,那么Q=@,即只显示命令的执行结果

    Q变量可以协助调试分析问题。

  • 相关阅读:
    js的alert乱码问题
    (6)select语句
    (5)视图
    (4)索引
    (3)操作数据库
    (2)MySQL数据类型
    (1)MySQL概述
    RocketMQ安装使用
    uniapp打包h5
    面试必问 如何保证缓存与数据库的一致性
  • 原文地址:https://www.cnblogs.com/black-mamba/p/8888652.html
Copyright © 2011-2022 走看看