diff --git a/Source/cmComputeLinkDepends.cxx b/Source/cmComputeLinkDepends.cxx
index bf2b1c54166bdb7d847f36d993824a16b3d87e2d..60564310932a986a575dd1fc3c000524aa8e3da7 100644
--- a/Source/cmComputeLinkDepends.cxx
+++ b/Source/cmComputeLinkDepends.cxx
@@ -21,7 +21,7 @@
 #include "cmMakefile.h"
 #include "cmTarget.h"
 
-#include <algorithm>
+#include <cmsys/stl/algorithm>
 
 /*
 
@@ -397,9 +397,9 @@ void cmComputeLinkDepends::InferDependencies()
     for(++i; i != sets->end(); ++i)
       {
       DependSet intersection;
-      set_intersection(common.begin(), common.end(),
-                       i->begin(), i->end(),
-                       std::inserter(intersection, intersection.begin()));
+      cmsys_stl::set_intersection
+        (common.begin(), common.end(), i->begin(), i->end(),
+         std::inserter(intersection, intersection.begin()));
       common = intersection;
       }
 
diff --git a/bootstrap b/bootstrap
index ad10eeda3870f572814e0135c341c9a5a8bb4d19..e08dc016bf778a79e2305141cda7054c26e6064b 100755
--- a/bootstrap
+++ b/bootstrap
@@ -1213,7 +1213,7 @@ cmake_replace_string "${cmake_source_dir}/Source/kwsys/kwsys_stl.hxx.in" \
 cmake_replace_string "${cmake_bootstrap_dir}/cmsys/stl/stl.hxx.in" \
    "${cmake_bootstrap_dir}/cmsys/stl/stl.h.in" KWSYS_NAMESPACE cmsys
 
-for a in string vector map; do
+for a in string vector map algorithm; do
   cmake_replace_string "${cmake_bootstrap_dir}/cmsys/stl/stl.h.in" \
     "${cmake_bootstrap_dir}/cmsys/stl/${a}" KWSYS_STL_HEADER ${a}
 done