Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sourceware DOT cygnus DOT com Delivered-To: mailing list cygwin AT sourceware DOT cygnus DOT com From: "Kevin Wright" To: "Cygwin" Subject: RE: B20.1: make dependencies broken Date: Fri, 28 Jan 2000 12:14:20 -0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook IMO, Build 9.0.2416 (9.0.2910.0) X-MimeOLE: Produced By Microsoft MimeOLE V5.00.2314.1300 Importance: Normal In-Reply-To: <20000127175330.4654.qmail@web123.yahoomail.com> I agree your make file works. However your makefile lives in the target directory and copies files from another directory to the target directory. My makefile lives in the source directory and copies files to another directory. This is (I would have thought) the more normal use of make i.e. creating a file from a source file and then copying it to an installation directory. My make file works on 5 different flavours of Unix using gnu make version 3.75 and 3.76.1. It worked on B17 using gnu make 3.75. It doesn't work on B20.1 using gnu make 3.76.1 as supplied with B20.1 binaries. Kevin. > > Hmm... Is you Makefile example correct? I redid it like this: > > ------------------------------ > NTTOOLSDIR = /tmp > > NTTOOLS = f1.bat \ > f2.bat > > All: $(NTTOOLS) > > $(NTTOOLS): % : $(NTTOOLSDIR)/% > # making $@ due to $? > cp $? $@ > -------------------------------- > > I then did > > mkdir /tmp/maketest > cd /tmp/maketest > create above Makefile > touch /tmp/f1.bat /tmp/f2.bat > make > This gave me the expected results. > touch /tmp/f2.bat > make > This gave me the expected results. > touch /tmp/f1.bat > make > This gave me the expected results. > make > Everything current, great, that was the expected result. > cd .. > make -f maketest/Makefile > Everything current, great, that was the expected result. > > Earnie. > > --- Kevin Wright wrote: > > I tried adding > > .SUFFIXES: .bat > > and it didn't make any difference. > > > > Kevin. > > > > > > > > Ok. You problen with .bat is that it is an suffix that isn't a > > > default one. > > > What happens if you add .SUFFIXES .bat? > > > > > > Earnie. > > > > > > I've found the following problem with make on B20.1. > > > Try the following makefile: > > > ------------------------------ > > > NTTOOLSDIR = /tmp > > > > > > NTTOOLS = $(NTTOOLSDIR)/f1.bat \ > > > $(NTTOOLSDIR)/f2.bat > > > > > > All: $(NTTOOLS) > > > > > > $(NTTOOLS): $(NTTOOLSDIR)/%: % > > > > > > $(NTTOOLS): > > > # making $@ due to $? > > > cp $? $@ > > > -------------------------------- > > > > > > now touch f1.bat f2.bat > > > > > > > > > make always reports: > > > make: Nothing to be done for `All'. > > > > > > Removing the .bat extension on f1/f2 fixes the problem. > > > Removing the second file from NTTOOLS fixes the problem. > > > > > > This all worked fine on B17. > > > > > > I'm using NT4 SP5 -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com