Date: Fri, 29 Jan 1999 16:26:55 +0100 From: Hans-Bernhard Broeker Message-Id: <199901291526.QAA09572@acp3bf.physik.rwth-aachen.de> To: djgpp AT delorie DOT com Subject: Re: How (not) to force make to recompile? Newsgroups: comp.os.msdos.djgpp Organization: RWTH Aachen, III. physikalisches Institut B X-Newsreader: TIN [version 1.2 PL2] Reply-To: djgpp AT delorie DOT com In article <199901291348 DOT HAA17031 AT darwin DOT sfbr DOT org> you wrote: [...] > Ok, this is interesting, because not once in a year of using Make, with > DJGPP and bash, have I ever gotten the message that an executable is > up-to-date (even if nothing has been changed). If, for example, I > issue a second `make' following the first `make', the executable is > always relinked using the existing object files. Why? (portion of a > typical makefile follows). It's because your target name is 'fake', by the rules for writing Makefiles. > # > # Makefile > # [...] > xibs: xibs.o kin.o covcor.o pearsn.o erfcc.o betai.o betacf.o \ > gammln.o nrutil.o > $(CC) $(LDFLAGS) -o $@$(EXT) $^ $(LIBS) This is the one. Your dependency claims that a file called 'xibs' will be built from the given list of .o files. But actually, you build 'xibs.exe'. Once you change your target name to xibs$(EXT): [...] you'll see that it will not to superfluous rebuilds, any more. -- Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de) Even if all the snow were burnt, ashes would remain.