I have a list of two source files, but the makefile compiles the first source file twice. This is my makefile:
Source = ../Src
Source_Files = $(Source)/File_1.c \
$(Source)/File_2.c
Obj = ./Obj
Object_Files = $(notdir $(Source_Files))
Object_Files := $(Object_Files:.c=.o)
Object_Files := $(addprefix $(Obj)/, $(Object_Files))
all: $(Object_Files)
$(Object_Files): $(Source_Files)
@echo Compile $<
@gcc -o $@ -c $<
The output looks like this:
Compile ../Src/File_1.c
Compile ../Src/File_1.c
Why File_2.c does not get compiled?