Index: petsc/src/dm/f90-mod/makefile
===================================================================
--- petsc.orig/src/dm/f90-mod/makefile
+++ petsc/src/dm/f90-mod/makefile
@@ -13,7 +13,7 @@ SPECIALFASTLIB = yes
 CFLAGS	   =
 FFLAGS	   =
 SOURCEC	   =
-SOURCEF	   = petscdmmod.F petscdmplexmod.F
+SOURCEF	   = petscdmmod.F petscdmplexmod.F petscdmdamod.F
 SOURCEH = petscdmcomposite.h90 petscdmda.h90 petscdmforest.h90          \
  petscdm.h90 petscdmlabel.h90 petscdmnetwork.h90 petscdmpatch.h90       \
  petscdmplex.h90 petscdt.h90
Index: petsc/src/dm/f90-mod/petscdmdamod.F
===================================================================
--- /dev/null
+++ petsc/src/dm/f90-mod/petscdmdamod.F
@@ -0,0 +1,17 @@
+
+
+        module petscdmdadef
+        use petscdmdef
+#include <../src/dm/f90-mod/petscdmda.h>
+        end module
+
+        module petscdmda
+        use petscdmdadef
+        use petscdm
+#include <../src/dm/f90-mod/petscdmda.h90>
+        interface
+#include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90>
+        end interface
+        end module
+
+
Index: petsc/src/dm/f90-mod/petscdmmod.F
===================================================================
--- petsc.orig/src/dm/f90-mod/petscdmmod.F
+++ petsc/src/dm/f90-mod/petscdmmod.F
@@ -43,11 +43,6 @@
           dmequals = (A%v .eq. B%v)
         end function
 
-        module petscdmdadef
-        use petscdmdef
-#include <../src/dm/f90-mod/petscdmda.h>
-        end module
-
         module petscdmpatchdef
         use petscdmdef
         end module
@@ -74,15 +69,6 @@
         end interface
         end module
 
-        module petscdmda
-        use petscdmdadef
-        use petscdm
-#include <../src/dm/f90-mod/petscdmda.h90>
-        interface
-#include <../src/dm/f90-mod/ftn-auto-interfaces/petscdmda.h90>
-        end interface
-        end module
-
         module petscdmpatch
         use petscdmpatchdef
 #include <../src/dm/f90-mod/petscdmpatch.h90>
Index: petsc/gmakefile
===================================================================
--- petsc.orig/gmakefile
+++ petsc/gmakefile
@@ -182,6 +182,7 @@ $(OBJDIR)/sys/f90-mod/petscsysmod.o   :
 $(OBJDIR)/vec/f90-mod/petscvecmod.o   : $(OBJDIR)/sys/f90-mod/petscsysmod.o
 $(OBJDIR)/mat/f90-mod/petscmatmod.o   : $(OBJDIR)/vec/f90-mod/petscvecmod.o
 $(OBJDIR)/dm/f90-mod/petscdmmod.o     : $(OBJDIR)/mat/f90-mod/petscmatmod.o
+$(OBJDIR)/dm/f90-mod/petscdmdamod.o   : $(OBJDIR)/dm/f90-mod/petscdmmod.o
 $(OBJDIR)/dm/f90-mod/petscdmplexmod.o : $(OBJDIR)/dm/f90-mod/petscdmmod.o
 $(OBJDIR)/ksp/f90-mod/petsckspmod.o   : $(OBJDIR)/dm/f90-mod/petscdmplexmod.o
 $(OBJDIR)/snes/f90-mod/petscsnesmod.o : $(OBJDIR)/ksp/f90-mod/petsckspmod.o
