started fix to deps directory building
authorPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 1 Sep 2009 03:13:56 +0000 (23:13 -0400)
committerPatrik Gornicz <Gornicz.P@gmail.com>
Tue, 1 Sep 2009 04:07:26 +0000 (00:07 -0400)
lib/rules.mk
rules.mk

index 7dae416..e2e53ae 100644 (file)
@@ -29,12 +29,9 @@ ${TARGET_$P}: ${TARGETTMP_$P} | $${@D}
        ${cmd-cp}
 
 # rule to make an object file from a .cpp
-${OBJSDIR_$P}%.o: ${SRCSDIR_$P}%.cpp | $${@D}
-       ${cmd-cpptoobj}
-
-# rule to make a depend file from a .cpp
-${DEPSDIR_$P}%.d: ${SRCSDIR_$P}%.cpp | $${@D}
-       ${cmd-cpptodep}
+${OBJSDIR_$P}%.o: ${SRCSDIR_$P}%.cpp | $${@D} \
+                  $$(patsubst ${OBJSDIR_$P},${DEPSDIR_$P},$${@D})
+       ${cmd-cpp_to_obj_and_dep}
 
 
 T := $P
index 9a08b18..db6d2a2 100644 (file)
--- a/rules.mk
+++ b/rules.mk
@@ -27,16 +27,19 @@ define cmd-rmrec
        ${Q4s}rm -rf ${CLEANTARGET} ${Q4e}
 endef
 
-define cmd-cpptoobj
+define cmd-cpp_to_obj_and_dep
   ${Q1s}${PRNTLOG} "${CXX}" "$@" ${Q1e}
   ${Q2s}${PRNTFMT} "${CXX}" "$@" ${Q2e}
   ${Q3s}${CXX} -c $< -o $@ -MF ${@:${OBJSDIR}%.o=${DEPSDIR}%.d} ${CXXFLAGS} ${INCFLAGS} -MMD -MQ $@ ${Q3e}
   ${Q4s}${CXX} -c $< -o $@ -MF ${@:${OBJSDIR}%.o=${DEPSDIR}%.d} ${CXXFLAGS} ${INCFLAGS} -MMD -MQ $@ ${Q4e}
 endef
 
-# Do nothing. This is now done in parallel with cpptoobj. However, you still
-# need to write rules using this to cause dependency directories to be created
-define cmd-cpptodep
+# Deprecated, use cmd-cpptoobjdep to create obj and dep
+define cmd-cpptoobj
+  ${Q1s}${PRNTLOG} "${CXX}" "$@" ${Q1e}
+  ${Q2s}${PRNTFMT} "${CXX}" "$@" ${Q2e}
+       ${Q3s}${CXX} $< -o $@ ${CXXFLAGS} ${INCFLAGS} -c ${Q3e}
+       ${Q4s}${CXX} $< -o $@ ${CXXFLAGS} ${INCFLAGS} -c ${Q4e}
 endef