--- a/src/lib/mkMake
+++ b/src/lib/mkMake
@@ -28,7 +28,9 @@
o=`basename $c .cpp`.o
OBJS="$OBJS $o"
d=`basename $c .cpp`.dep
- DEPS="$DEPS $d"
+ cp /dev/null $d
+ s=`basename $c .cpp`.dep.stamp
+ DEPS="$DEPS $s"
done
test -f $mk && chmod +w $mk
@@ -47,7 +49,7 @@
OBJS = $OBJS
DEPS = $DEPS
-librcl.a : \$(OBJS) \$(DEPS) unac.o
+librcl.a : \$(DEPS) \$(OBJS) unac.o
ar ru librcl.a \$(OBJS) unac.o
\$(RANLIB) librcl.a
@@ -57,7 +59,7 @@
for c in $SRCS;do
o=`basename $c .cpp`.o
- echo "$o :" >> $mk
+ echo "$o : $c" >> $mk
echo " \$(CXX) \$(ALL_CXXFLAGS) -c \$<" >> $mk
done
@@ -65,12 +67,17 @@
depend: \$(DEPS)
clean:
rm -f \$(OBJS) \$(LIBS) \$(DEPS) unac.o
+ for i in *.dep;do test -f \$\$i && cp /dev/null \$\$i;done
+distclean: clean
+ rm -f *.dep
EOF
for c in $SRCS;do
d=`basename $c .cpp`.dep
- echo "$d : $c" >> $mk
+ s=`basename $c .cpp`.dep.stamp
+ echo "$s : $c" >> $mk
echo " \$(CXX) -M \$(ALL_CXXFLAGS) \$< > $d" >> $mk
+ echo " touch $s" >> $mk
done
for c in $SRCS;do
d=`basename $c .cpp`.dep