diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1f1816ff076f4272aae7aa0cda5493091c06f3da..d68e81694298d140650666a209843e349c8a29aa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -130,6 +130,15 @@ IF(NOT UNIX)
 
   SET(CMD ${BIN_DIR}${CFG_INTDIR}/${KWSYS_NAMESPACE}EncodeExecutable.exe)
   SET(FWD ${BIN_DIR}${CFG_INTDIR}/${KWSYS_NAMESPACE}ProcessFwd9x.exe)
+
+  # Dependency work-around for cmake 1.6.7 bug.
+  SET(DEP ${CMD} ${FWD})
+  IF(NOT EXECUTABLE_OUTPUT_PATH)
+    IF(CMAKE_GENERATOR MATCHES "Borland Makefiles")
+      SET(DEP ${KWSYS_NAMESPACE}EncodeExecutable.exe ${KWSYS_NAMESPACE}ProcessFwd9x.exe)
+    ENDIF(CMAKE_GENERATOR MATCHES "Borland Makefiles")
+  ENDIF(NOT EXECUTABLE_OUTPUT_PATH)
+
   ADD_CUSTOM_COMMAND(
     TARGET ${KWSYS_NAMESPACE}
     SOURCE ${CMAKE_CURRENT_SOURCE_DIR}/ProcessFwd9x.c
@@ -137,7 +146,7 @@ IF(NOT UNIX)
     ARGS ${FWD} ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
          ${KWSYS_NAMESPACE} ProcessFwd9x
     OUTPUTS ${CMAKE_CURRENT_BINARY_DIR}/${KWSYS_NAMESPACE}ProcessFwd9xEnc.c
-    DEPENDS ${CMD} ${FWD})
+    DEPENDS ${DEP})
   ADD_DEPENDENCIES(${KWSYS_NAMESPACE} ${KWSYS_NAMESPACE}ProcessFwd9x
                    ${KWSYS_NAMESPACE}EncodeExecutable)
 ENDIF(NOT UNIX)