diff --git a/data/ports/Makefile b/data/ports/Makefile
index 09cc722be8..57ce2a6c5c 100644
--- a/data/ports/Makefile
+++ b/data/ports/Makefile
@@ -1,21 +1,24 @@
+#	$Id: Makefile,v 1.2 1996-09-24 18:56:21 jfieber Exp $
+
 PORTINDEX=	./portindex
+INDEX=		ports/INDEX
+
+COOKIE=		index Makefile.gen
 
 .if exists(Makefile.gen)
 .include "Makefile.gen"
 CLEANFILES+=	${DOCS} Makefile.gen
-COOKIE=		Makefile.gen
-.include "../web.mk"
-.else
-foo .DEFAULT: 
-	${MAKE} ${MAKEFLAGS} Makefile.gen
-	${MAKE} ${MAKEFLAGS} ${.IMPSRC}
 .endif
 
 Makefile.gen: index.sgml .NOTMAIN
-	if [ -f Makefile.gen ]; then mv Makefile.gen Makefile.gen.bak; fi
 	echo DOCS= *.sgml > Makefile.gen
+	${MAKE} ${MAKEFLAGS} ${.IMPSRC}
 
-index.sgml: ports/INDEX .NOTMAIN
+index.sgml: ${INDEX} .NOTMAIN
 	rm -f *.sgml
-	${PORTINDEX} ports/INDEX
+	${PORTINDEX} ${INDEX}
 
+index: .NOTMAIN
+	cvs co ${INDEX}
+
+.include "../web.mk"
diff --git a/data/web.mk b/data/web.mk
index 993ec606d1..6aca017f08 100644
--- a/data/web.mk
+++ b/data/web.mk
@@ -1,5 +1,5 @@
 # bsd.web.mk
-# $Id: web.mk,v 1.1.1.1 1996-09-24 17:45:45 jfieber Exp $
+# $Id: web.mk,v 1.2 1996-09-24 18:56:00 jfieber Exp $
 
 #
 # Build and install a web site.
@@ -119,7 +119,7 @@ ORPHANS:=	${ORPHANS:N*.m4}
 #
 # Build most everything
 #
-all: orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
+all: ${COOKIE} orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
 
 #
 # Warn about anything in DOCS that has no translation
diff --git a/en/ports/Makefile b/en/ports/Makefile
index 09cc722be8..57ce2a6c5c 100644
--- a/en/ports/Makefile
+++ b/en/ports/Makefile
@@ -1,21 +1,24 @@
+#	$Id: Makefile,v 1.2 1996-09-24 18:56:21 jfieber Exp $
+
 PORTINDEX=	./portindex
+INDEX=		ports/INDEX
+
+COOKIE=		index Makefile.gen
 
 .if exists(Makefile.gen)
 .include "Makefile.gen"
 CLEANFILES+=	${DOCS} Makefile.gen
-COOKIE=		Makefile.gen
-.include "../web.mk"
-.else
-foo .DEFAULT: 
-	${MAKE} ${MAKEFLAGS} Makefile.gen
-	${MAKE} ${MAKEFLAGS} ${.IMPSRC}
 .endif
 
 Makefile.gen: index.sgml .NOTMAIN
-	if [ -f Makefile.gen ]; then mv Makefile.gen Makefile.gen.bak; fi
 	echo DOCS= *.sgml > Makefile.gen
+	${MAKE} ${MAKEFLAGS} ${.IMPSRC}
 
-index.sgml: ports/INDEX .NOTMAIN
+index.sgml: ${INDEX} .NOTMAIN
 	rm -f *.sgml
-	${PORTINDEX} ports/INDEX
+	${PORTINDEX} ${INDEX}
 
+index: .NOTMAIN
+	cvs co ${INDEX}
+
+.include "../web.mk"
diff --git a/en/web.mk b/en/web.mk
index 993ec606d1..6aca017f08 100644
--- a/en/web.mk
+++ b/en/web.mk
@@ -1,5 +1,5 @@
 # bsd.web.mk
-# $Id: web.mk,v 1.1.1.1 1996-09-24 17:45:45 jfieber Exp $
+# $Id: web.mk,v 1.2 1996-09-24 18:56:00 jfieber Exp $
 
 #
 # Build and install a web site.
@@ -119,7 +119,7 @@ ORPHANS:=	${ORPHANS:N*.m4}
 #
 # Build most everything
 #
-all: orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
+all: ${COOKIE} orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
 
 #
 # Warn about anything in DOCS that has no translation
diff --git a/share/mk/web.site.mk b/share/mk/web.site.mk
index bcd9d5c416..7a27eed876 100644
--- a/share/mk/web.site.mk
+++ b/share/mk/web.site.mk
@@ -1,5 +1,5 @@
 # bsd.web.mk
-# $Id: web.site.mk,v 1.1.1.1 1996-09-24 17:45:45 jfieber Exp $
+# $Id: web.site.mk,v 1.2 1996-09-24 18:56:00 jfieber Exp $
 
 #
 # Build and install a web site.
@@ -119,7 +119,7 @@ ORPHANS:=	${ORPHANS:N*.m4}
 #
 # Build most everything
 #
-all: orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
+all: ${COOKIE} orphans cvsdirs ${GENDOCS} ${DATA} ${LOCAL} ${CGI} _PROGSUBDIR
 
 #
 # Warn about anything in DOCS that has no translation