Follow-up Comment #12, bug #14927 (project make): I think the main confusion arises from not clearly separating storage from target. _make_ does not (and should not) concern itself with the underlying structure that stores the file as long as that storage satisfies certain requirements. Similarly for the archive acting as storage here and not as target. Whether that _storage_ supports parallelism is a different question.
On the other hand, modern file systems do support all that is needed. So intermediate targets could also do the trick. By extracting all objects out of the archive but retaining their update time, as it is stored, would be the first step to discover who actually needs to be recompiled. Then their intermediacy would make sense as it relates to the the real file system acting as a temporary. SRCS := a.c b.c OBJS := $(SRCS:.c=.o) _:= $(shell $(AR) xo $(OBJS) $(LIBS)) $(OBJS): # compile $(LIB): $(OBJS) # reconstruct lib from scratch _______________________________________________________ Reply to this item at: <https://savannah.gnu.org/bugs/?14927> _______________________________________________ Message sent via Savannah https://savannah.gnu.org/