diff --git a/compiler2/makefile.c b/compiler2/makefile.c
index adcb011132521254fe1983abfde4ab312091ac13..c50a72d0863a10466c927eb8d367e26c1033392e 100644
--- a/compiler2/makefile.c
+++ b/compiler2/makefile.c
@@ -3966,15 +3966,7 @@ static void print_makefile(struct makefile_struct *makefile)
       }
     }
     
-    for (i = 0; i < makefile->nBaseDirs; i++) {
-      fprintf(fp, "\n\n%s/%%.o: %s/%%.c\n"
-        "\t$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $<\n\n", makefile->BaseDirs[i].dir_name, makefile->BaseDirs[i].dir_name);
-      fprintf(fp, "%s/%%.o: %s/%%.cc\n"
-            "\t$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $<", makefile->BaseDirs[i].dir_name, makefile->BaseDirs[i].dir_name);
-    }
-    fputs("\n\n%.o: %.c $(GENERATED_HEADERS)\n"
-          "\t$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $<\n\n", fp);
-    fputs("%.o: %.cc $(GENERATED_HEADERS)\n"
+    fputs("\n\n.cc.o .c.o:\n"
           "\t$(CXX) -c $(CPPFLAGS) $(CXXFLAGS) -o $@ $<\n\n", fp);
 
     if (makefile->gcc_dep) {
diff --git a/usrguide/userguide.doc b/usrguide/userguide.doc
index 741518c5a3e8287bb29d647bd11ae174ba67a032..5c9c4201a620364f43e171da19a948b6a29c80cd 100644
Binary files a/usrguide/userguide.doc and b/usrguide/userguide.doc differ