[linux-users: 108844] make command
早間義博
yossi @ yedo.src.co.jp
2011年 10月 10日 (月) 15:03:23 JST
早間です。
下記のように make のターゲットのファイル名に = がある場合
filea : filea=fileb
cp -p filea=fileb filea
いつ頃までか覚えていませんが
= を \= と書き換えると動いていました。
filea : filea\=fileb
cp -p filea=fileb filea
ある時これではエラーになったので = を \075 に置き換えました。
filea : filea\075fileb
cp -p filea=fileb filea
2011/09 にコンパイルした版ではmake-3.82-r1(gentoo)では \075 も使用
できなくなりました。
\075 をそのままファイル名として扱うのでファイルが存在しないことになります。
しかも filea=fileb では make がエラーとなります。
同じ文字列の解釈が場所によって異なるのです。
何かご存じありませんか。
今は、Makefile に
EQU = \=
と指定し
filea : filea$(EQU)fileb
cp -p filea=fileb filea
としています。
感じでは makeの Makefile 読み込みが変わってきているようです。
-- 早間
linux-users メーリングリストの案内