make・Makefile - ターゲットの上書き


 クラウディア


1. ターゲットを変えるとワーニングが出ちゃうのだ
2. ワーニングを出さないようにするには

1. ターゲットを変えるとワーニングが出ちゃうのだ

 プロジェクト全体の定義を書いているような Makefile があって、その名前を仮に all.mk として、サブプロジェクトの Makefile があるとします。  末尾に

include ディレクトリ(相対でも絶対でも可)/all.mk
 とか書いています。  で all.mk に全体のターゲットとして

TARGET : 全体のターゲット
 とか書いててサブプロジェクトにもサブプロジェクトのターゲットがあって Makefile に

TARGET : サブプロジェクトのターゲット
 書いてあると、make するときに

> make
../all.mk:111: 警告: ターゲット `foo' へのコマンドを置き換えます
Makefile:6: 警告: ターゲット `foo' への古いコマンドは無視されます

		~ 略 ~

 てなワーニングが出ちゃいます。  ターゲット名を間違えているときにはありがたいんですが、納得したうえで書いていると、困ったものなのです。

2. ワーニングを出さないようにするには

 前項のような状況の時には、all.mk のターゲットの方に

%TARGET : 全体のターゲット
 とターゲット名の先頭に「%」をつけてあげると、前項のようなワーニングは出なくなります。

audiobook.jp
AbemaTV 無料体験
JETBOY
健康サポート特集
アフィリエイトのアクセストレード
EMEET 1
Amazonギフトカード
EaseUS
5G CONNECT
U-NEXT
薬屋の独り言
earthcar(アースカー)
それがだいじWi-Fi
ハイスピードプラン
ベルリッツ
【usus ウズウズ】
サウンドハウス
葬送のフリーレン Prime Video
損保との違い
ネットオークションの相場、統計、価格比較といえばオークファン
TikTok Shop 【リピート用プログラム】