-$(OBJS): $(GEN_HEADERS) $(HOST_PROGS)
-$(ROOT).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(TESTER).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(INFO).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(DAEMON).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(SENDER).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(STARTER).o: $(GEN_HEADERS) $(HOST_PROGS)
-$(WAIT).o: $(GEN_HEADERS) $(HOST_PROGS)
-
-$(ROOT): $(LIBC) $(ROOT).o $(STARTER).o $(OBJS) $(HEADERS) $(GEN_MANPAGES)
- $(QUIET) $(LD) $(LDFLAGS) -o $@ $(CRT0) udev.o udevstart.o $(OBJS) $(LIB_OBJS) $(ARCH_LIB_OBJS)
+$(UDEV_OBJS): $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(SYSFS_OBJS): $(HEADERS) $(HOST_PROGS) $(KLCC)
+$(OBJS): $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(ROOT).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(TESTER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(INFO).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(DAEMON).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(SENDER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(COMPILE).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(INITSENDER).o: $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(RECORDER).o: $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(CONTROL).o: $(HEADERS) $( $(HEADERS)GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(MONITOR).o: $(HEADERS) $( $(HEADERS)GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+$(STARTER).o: $(HEADERS) $(GEN_HEADERS) $(HOST_PROGS) $(KLCC)
+
+$(ROOT): $(KLCC) $(ROOT).o $(OBJS) $(HEADERS) $(GEN_MANPAGES)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(ROOT).o $(OBJS) $(LIB_OBJS)
+ $(QUIET) $(STRIPCMD) $@
+
+$(TESTER): $(KLCC) $(TESTER).o $(OBJS) $(HEADERS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(TESTER).o $(OBJS) $(LIB_OBJS)
+ $(QUIET) $(STRIPCMD) $@
+
+$(INFO): $(KLCC) $(INFO).o $(OBJS) $(HEADERS)
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(INFO).o $(OBJS) $(LIB_OBJS)
+ $(QUIET) $(STRIPCMD) $@
+
+$(DAEMON): $(KLCC) $(DAEMON).o $(OBJS) udevd.h
+ $(QUIET) $(LD) $(LDFLAGS) -o $@ $(DAEMON).o $(OBJS) $(LIB_OBJS)