I have a problem understanding the utility of order-only dependencies in make.
For example, consider
obj/main.o: main.c | obj/
gcc -c main.c -o obj/main.o
obj/:
mkdir -p obj
obj/ is built before obj/main.o, but updates to obj/ (e.g., adding
files) won't trigger a rebuild of obj/main.o.
Why would one add files if the program will not be rebuilt? I think
that if files are added to a build directory, they are included because
they are needed for updating the program.
