From nnd@nnd.itfs.nsk.su  Sat Aug 16 22:10:02 1997
Received: from nnd.itfs.nsk.su (nnd.itfs.nsk.su [193.124.36.42])
          by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id WAA05964
          for <FreeBSD-gnats-submit@freebsd.org>; Sat, 16 Aug 1997 22:10:00 -0700 (PDT)
Received: (from root@localhost)
	by nnd.itfs.nsk.su (8.8.7/8.8.5) id MAA23078;
	Sun, 17 Aug 1997 12:12:17 +0700 (NSS)
Message-Id: <199708170512.MAA23078@nnd.itfs.nsk.su>
Date: Sun, 17 Aug 1997 12:12:17 +0700 (NSS)
From: "Nickolay N. Dudorov" <nnd@nnd.itfs.nsk.su>
Reply-To: nnd@nnd.itfs.nsk.su
To: FreeBSD-gnats-submit@freebsd.org
Subject: games/boggle Makefile correction
X-Send-Pr-Version: 3.2

>Number:         4314
>Category:       bin
>Synopsis:       games/boggle Makefile correction
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Aug 16 22:20:01 PDT 1997
>Closed-Date:    Sun Aug 17 00:38:41 PDT 1997
>Last-Modified:  Sun Aug 17 07:10:01 PDT 1997
>Originator:     Nickolay N. Dudorov
>Release:        FreeBSD 3.0-CURRENT i386
>Organization:
NTP Infoteka
>Environment:

	FreeBSD-3.0

>Description:

	Makefile for src/games/boggle incorrectly lists
data files ('dictionary' and 'dictindex') as a source for
'all' target, whereas they obviously are the sources for
'beforeinstall' target already used in this Makefile.

>How-To-Repeat:

	See the src/games/boggle/Makefile ;-)

	Moreover if you try to do:

  cd src/games/boggle
  make obj clean cleandepend depend
  make -j12 all

this will results in error.

>Fix:
	
	Apply the next patch:

diff -ruN src/games/boggle/Makefile src/games/boggle-patched/Makefile
--- src/games/boggle/Makefile	Sat Aug 16 14:16:33 1997
+++ src/games/boggle-patched/Makefile	Sun Aug 17 11:44:19 1997
@@ -14,7 +14,6 @@
 MKINDX=	${.CURDIR}/mkindex/mkindex
 .endif
 
-all: ${FILES}
 
 ${MKDICT}:
 	cd ${.CURDIR}/mkdict; ${MAKE}
@@ -30,7 +29,7 @@
 dictindex:: dictionary
 	${MKINDX} < ${.ALLSRC} > ${.TARGET}
 
-beforeinstall:
+beforeinstall: ${FILES}
 	${INSTALL} ${COPY} -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \
 	    ${FILES} ${DESTDIR}${SHAREDIR}/games/boggle/
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: jkh 
State-Changed-When: Sun Aug 17 00:38:41 PDT 1997 
State-Changed-Why:  
committed, thanks! 

From: Bruce Evans <bde@zeta.org.au>
To: FreeBSD-gnats-submit@FreeBSD.ORG, nnd@nnd.itfs.nsk.su
Cc:  Subject: Re: bin/4314: games/boggle Makefile correction
Date: Sun, 17 Aug 1997 23:58:22 +1000

 >	Makefile for src/games/boggle incorrectly lists
 >data files ('dictionary' and 'dictindex') as a source for
 >'all' target, whereas they obviously are the sources for
 >'beforeinstall' target already used in this Makefile.
 
 No, 'dictionary' and 'dictindex' are certainly sources for
 the 'all' target, and 'install' targets including 'beforeinstall'
 should never have sources, since sources for them (and not for
 'all') would result in things being built at install time.
 
 >	Moreover if you try to do:
 >
 >  cd src/games/boggle
 >  make obj clean cleandepend depend
 >  make -j12 all
 >
 >this will results in error.
 
 You shouldn't expect 'make obj clean cleandepend depend' to work in general.
 If the obj directory doesn't already exist, then ${.OBJDIR} is "." the
 first time this is run, and .depend is created in ".".
 
 'make -j12' fails because ${MKDICT} is not a source for 'dictionary'.
 '::' doesn't work right here (it is used just to keep ${MKDIR} out of
 ${.ALLSRC} .  This use is completely wrong - '::' is good for accumulating
 actions but bad for accumulating sources).
 
 >>Fix:
 >	
 >	Apply the next patch:
 
 Not a fix.
 
 Bruce
>Unformatted:
