1つのGNU Makefileで2つのプログラムをmake prog1
またはmake prog2
のいずれかで作成しようとしました。ターゲット固有の変数を使用してターゲットに排他的なソースファイルを指定しようとしましたが、test1.cもtest2.cもビルドされています。実行可能ファイルのリンク時にのみ参照されます。 test1.cまたはtest2.cをコンパイルするためにMakefileを入手するには?あなたの助けを事前にGNU Makeターゲット固有の変数からのソースファイルを含める
...
prog1: PASRC = test1.c
prog2: PASRC = test2.c
...
ASRC = $(PASRC) common.c
...
OBJS = $(ASRC:.c=.o)
...
prog1: $(OBJS) prog1.elf
prog2: $(OBJS) prog2.elf
...
%elf: $(OBJS)
$(CC) $(OBJS) $(LDFLAGS) $(LIBS) -o [email protected]
おかげ