一乐电子

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

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 4393|回复: 2

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

[复制链接]
发表于 2017-5-3 11:27 | 显示全部楼层 |阅读模式
替换语句不看makefile真的不知道可以这样用法有一个makefile文件如下
; b# w8 n' f" ]
, z4 {* r& |6 c3 ]all_time:1 c! n. Z% r9 {% }( V
        @echo $(@:_time=_null)
5 A) j& n* v; f* J2 P/ @7 Y' U( ^" P9 C* p, F1 M. q
, ?- u! A  S( k

) S0 }4 q! L- q& N: i( L
; c8 P. C5 [: j" O" F然后用make all_time 反馈为"all_null"
3 X( g# W. e) y) f" z% g: v3 @/ J- y- u
如果当前目录下有shell 脚本文件可以用 $(CURDIR)+shell 直接调用
$ ^+ h/ A% r( D- a- t5 F/ N
 楼主| 发表于 2017-5-3 11:40 | 显示全部楼层
在当前目录下有一个makecfg
$ w' |. c: V3 t+ fmakecfg下有 echo haha  D* X# u) Z/ f# i  A: i8 e
然后修改chmod 777 makecfg
5 _: E' ~3 k, f* \$ F- i! I' q
, D, m' E/ y1 Oall:, V. E/ N; R2 u; x
        (/home/kenson/work/make1/makecfg)
2 A' v. u! V" S$ q
3 a! J5 F( D2 z/ \9 k- M这样可以直接在make all 直接调用 makecfg了  L3 H2 M: w5 J  ]& a6 j
6 Y% _- C' t+ e$ y& T" I9 }
回复

使用道具 举报

 楼主| 发表于 2017-5-4 14:39 | 显示全部楼层
做了一个验证
0 e2 v& t* R7 G/ m! ^% ~这是makefile
  A) Z3 ?. Y- N+ J4 y$ aHOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]')
7 p( y+ B  x5 k* ^" y# G+ G#     sed -e 's/\(cygwin\).*/cygwin/')
- e7 b, U& j7 b' F3 j) H( R7 k! }2 I5 [) w
dir        := $(CURDIR)
% m: U( Q* c  C5 nMAKECONFIG := $(dir)/makecfg
: V  ?8 x; Y$ p6 j: m: A, O- q( }. U& p! p* F, |7 P

8 M8 ]  E% ^7 E3 S; wsmdk2410_config:/ l3 H# H. [- S) n0 H, s
        @$(MAKECONFIG) $(@:_config=) arm arm920t3 }( T. p2 A- u, t1 R$ `; W

8 e! W6 v$ ]+ I0 \8 F$ ~( L$ Z( ?: U6 w
这是makecfg
: x/ h: ?0 h' [& E2 U0 l$ i% p+ s6 R3 w; L+ O+ k
#!/bin/bash
: q+ Y1 @% @7 pecho "Welcome The World !"* j  V! `/ l: I: k5 ]4 r! a
echo "haha"
$ Y  w: c/ O8 R0 I7 }
  ~8 Z8 Y" i. }. W/ z) l7 gecho "\$0: $0"
/ o5 ?% s' ]9 fecho "\$1: $1"
( N, t- n  y! s5 Pecho "\$2: $2"
  {0 C) h: r' zecho "\$3: $3"( S5 ]' i0 T, T/ P% [$ }: X
3 o& n1 V1 ]4 ?9 C. H5 p# z
* ^' e& a) o6 y% B& y) |% o, o! R& \
结果3 [: i  ]; j+ i' K" u+ @
jimmy@G41T-M7:~/work/MakeTrain$ make smdk2410_config   k9 ?5 S- _. `& m- G0 ~: q. M$ \
Welcome The World !
+ ?# m" a* d) t8 y: p/ {haha
4 z3 P9 s& ?- T% `% V0 i$0: /home/jimmy/work/MakeTrain/makecfg
. D7 b) k8 i8 G3 ~( }+ [. s3 k$1: smdk2410* U7 ]* L$ z$ [. ]
$2: arm' M: [5 y2 E& J; y2 r2 b9 L
$3: arm920t: P; T  n$ g  E" Q' k2 p
" ?) q7 k6 r) z  x1 ~2 p

) j2 o- T- z7 ]! I
9 H7 {7 o8 _& D6 y- B  a  b
( B) _2 S$ }1 X5 b) N5 o) U" O1 O* s- `. {% W& x" P
回复

使用道具 举报

本版积分规则

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

GMT+8, 2025-10-28 20:10 , Processed in 0.031232 second(s), 21 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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