一乐电子

一乐电子百科

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

快捷登录

手机号码,快捷登录

搜索
查看: 2493|回复: 2
收起左侧

有关$(@:_config=)进一步讲解

[复制链接]
发表于 2017-5-3 11:27 | 显示全部楼层 |阅读模式
替换语句不看makefile真的不知道可以这样用法有一个makefile文件如下 ! D" {; }7 e! D4 S- q
# K: a6 V2 S; K# t& P% |
all_time:: F* g  _& V' ^% T1 u
        @echo $(@:_time=_null)" k, [8 t( s( I
4 u1 I9 \$ P% q7 Y2 I9 Y

$ M" Q. l( }6 g- t# _( E1 A/ _7 M9 v/ _2 h: b, H

' n9 x/ [0 p% d1 I  ]然后用make all_time 反馈为"all_null"
- j' v  x* G2 k
, D" c% W2 h3 c如果当前目录下有shell 脚本文件可以用 $(CURDIR)+shell 直接调用& N0 B& t5 l/ I8 n0 ]/ \
 楼主| 发表于 2017-5-3 11:40 | 显示全部楼层
在当前目录下有一个makecfg
; l2 O! Z/ k3 s5 L* B- _! hmakecfg下有 echo haha
3 `9 m* K7 A/ [% O8 F& W9 w) g然后修改chmod 777 makecfg
8 E% {* n; @0 D" \9 }) c
& H2 h( a$ p( Nall:% O+ ]8 n0 b& b5 f
        (/home/kenson/work/make1/makecfg)
2 ~7 d! l) q( ~& d7 s) H9 {8 t7 o/ l; d+ ~* x9 k: Q
这样可以直接在make all 直接调用 makecfg了
8 X- J$ i0 Y9 G* W& ]0 S& [2 F' o/ |; M& H# k. d
 楼主| 发表于 2017-5-4 14:39 | 显示全部楼层
做了一个验证
- ~; h' A7 y! Y& V- P4 s8 j这是makefile
7 G4 G( o4 s+ z; O/ AHOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]')
( u% Z2 p" \0 `) \% _#     sed -e 's/\(cygwin\).*/cygwin/')
# o: `( h& e6 P9 G: M- K8 O
+ ~+ `/ x  F0 |+ z4 R) s4 u) ddir        := $(CURDIR)
4 ]9 F. L! `9 I* V4 x) ?MAKECONFIG := $(dir)/makecfg
3 ?% ~% ?" V, w/ x  Q( H7 k# Y# w. S, r8 a
3 V3 ~3 W$ w. q$ f* p
smdk2410_config:, ?1 h$ f: S' i9 L# {7 l7 ?9 N- z
        @$(MAKECONFIG) $(@:_config=) arm arm920t
& W# Z( I; i1 g5 p  Y, B8 Q3 _1 N+ D, _/ c  F- s0 T  ~  d
: b. Z8 L- }8 K5 I& \" R& H% j6 K% i
这是makecfg
0 X6 b) T$ ]4 G+ U' I" s  e# }& R9 H
#!/bin/bash
! r4 `* F* \7 z# m- p, d  aecho "Welcome The World !"
% o& N, ?/ H; r9 T4 P. S! p% eecho "haha"
' B) V/ X. H% n/ z5 X( D1 @& t8 T6 A& p& x4 T5 e1 K
echo "\$0: $0"! b' a6 B3 W3 c; B/ C  w( a+ v
echo "\$1: $1"
9 ^# M/ X  Y4 U* f, lecho "\$2: $2"" f, R$ q- q7 h6 @* [0 g
echo "\$3: $3"8 C- |' a) b& v& \4 ?
0 I. I- I/ S) l" P% j
* V5 G+ W  x! X  r1 L7 j
结果
# G/ ?* X5 R. h7 ^' \( Ljimmy@G41T-M7:~/work/MakeTrain$ make smdk2410_config 0 Z; Y9 P5 h" C% C
Welcome The World !
( e: L; X7 T, ^, u+ H* K/ Zhaha
$ i7 K( H$ o0 }$0: /home/jimmy/work/MakeTrain/makecfg
% T3 M. u  ^3 u$1: smdk24107 ^+ j0 m/ g2 c
$2: arm; @1 C4 W" [/ H5 p
$3: arm920t0 o+ v+ z" F0 S! L1 Q: k4 ?
  `5 c* E6 F9 L7 H

" i: I* _) r% C
' W8 s2 S/ ?1 q% V$ V- i8 s
! d; d2 B$ b# U6 P! i% d" I5 y' t& A2 H# E4 ^+ }) S

本版积分规则

QQ|一淘宝店|手机版|商店|电子DIY套件|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2024-4-25 22:20 , Processed in 0.051940 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表