make all .o files depend on *_impl.h and libc.h
authorRich Felker <dalias@aerifal.cx>
Fri, 4 May 2012 00:35:11 +0000 (20:35 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 4 May 2012 00:35:11 +0000 (20:35 -0400)
hopefully the annoyance of this will be minimal. these files all
define internal interfaces which can change at any time; if different
modules are using different versions of the interfaces, the library
will badly break. ideally we would scan and add the dependency only
for C files that actually reference the affected interfaces, but for
now, err on the side of caution and force a rebuild of everything if
any of them have changed.

this commit is in preparation for the upcoming ssp overhaul commit,
which will change internals of the pthread struct.

Makefile

index 1b9e24369028068ad33e1a57b693ef9938f12e7f..4f93049204fbfc4581e33e61ff6ca53320a3c8e5 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -20,6 +20,7 @@ SRCS = $(sort $(wildcard src/*/*.c))
 OBJS = $(SRCS:.c=.o)
 LOBJS = $(OBJS:.o=.lo)
 GENH = include/bits/alltypes.h
+IMPH = src/internal/stdio_impl.h src/internal/pthread_impl.h src/internal/libc.h
 
 LDFLAGS = 
 CPPFLAGS =
@@ -78,13 +79,13 @@ include/bits/alltypes.h: include/bits/alltypes.h.sh
 %.o: $(ARCH)/%.s
        $(CC) $(CFLAGS_ALL_STATIC) -c -o $@ $<
 
-%.o: %.c $(GENH)
+%.o: %.c $(GENH) $(IMPH)
        $(CC) $(CFLAGS_ALL_STATIC) -c -o $@ $<
 
 %.lo: $(ARCH)/%.s
        $(CC) $(CFLAGS_ALL_SHARED) -c -o $@ $<
 
-%.lo: %.c $(GENH)
+%.lo: %.c $(GENH) $(IMPH)
        $(CC) $(CFLAGS_ALL_SHARED) -c -o $@ $<
 
 lib/libc.so: $(LOBJS)