www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/10/13/15:51:14

Message-Id: <199910132340.RAA22230@lakdiva.slt.lk>
From: "Kalum Somaratna" <kalum AT myflat DOT com>
To: djgpp AT delorie DOT com
Date: Wed, 13 Oct 1999 17:40:55 +0600
MIME-Version: 1.0
Subject: RE: Please Help. RHIDE generated makefiles don't support dependencies?
References: <199910110147 DOT TAA06057 AT lakdiva DOT slt DOT lk>
In-reply-to: <Pine.SUN.3.91.991011121709.28307A-100000@is>
X-mailer: Pegasus Mail for Win32 (v3.12)
Reply-To: djgpp AT delorie DOT com

On 11 Oct 99, at 12:17, Eli Zaretskii <eliz AT is DOT elta DOT co DOT il> wrote:

>>On Sun, 10 Oct 1999, Kalum Somaratna wrote:
> > RHIDE  version 1.4
> 
> This is not: the latest is 1.4.7; perhaps the problem I found (see
> below) is corrected there.
>  
Dear Eli,
     First of all thank's a lot for helping me in my problem. I 
downloaded v 1.4.7 and have found that the problem area you 
identified  has been corrected in RHIDE 1.4.7. 

> > test.h still doesn't appear anywhere in the output of make (I did a 
> > search for test.h in makedump and could't find it)
> 
> Here's the relevant part of the Makefile:
> 
> > all:: test.exe
> > DEPS_0=\
> > 		d:/paint/test.o				<<<<<<<<
> > NO_LINK=
> > LINK_FILES=$(filter-out $(NO_LINK),$(DEPS_0))
> > test.exe:: $(DEPS_0)
> > 	$(RHIDE_COMPILE_LINK)
> > DEPS_1=test.cpp\
> > 		j:/djgpp/include/stdio.h\
> > 		j:/djgpp/include/sys/djtypes.h\
> > 		j:/djgpp/include/sys/version.h\
> > 		d:/paint/test.h
> > test.o:: $(DEPS_1)
> > 	$(RHIDE_COMPILE.cpp.o)
> 
> The problem is in the dependency marked with "<<<<<<<<".  It names the
> full pathname of test.o, whereas the dependency for test.o uses just
> "test.o".  How's Make supposed to know these two are one and the same
> file?  Make is just a text-processing program, as far as reading the
> Makefile is considered.
> 
> If I change d:/paint/test.o to test.o, everything works like you'd
> expect.

You are indeed absolutely correct Eli, because in the makefile 
generated by v1.4.7(please see below)  the problem appears to 
have been corrected.
Makefile generated by RHIDE 1.4.7. (relevant bits)

all::
DEPS_0= test.o            <<<<<<<<<
NO_LINK=
LINK_FILES=$(filter-out $(NO_LINK),$(DEPS_0))
test.exe:: $(DEPS_0)
        $(RHIDE_COMPILE_LINK)
DEPS_1=test.cpp j:/djgpp/include/stdio.h 
j:/djgpp/include/sys/djtypes.h\
        j:/djgpp/include/sys/version.h test.h
test.o:: $(DEPS_1)
        $(RHIDE_COMPILE.cpp.o)
all:: test.exe

As you can see v1.4.7 correctly specifies 'test.o' instead of v1.4 
wich wrongly specifies 'd:/paint/test.o' . So now MAKE does check 
for test.h and if it has been changed rebuilds test.o as it should.


> 
> Now, I don't know if this is a bug in RHIDE (I don't use RHIDE myself)
> or your own usage error.  

This in my opinion is certainly a bug in RHIDE 1.4 wich has been 
remedied in v.14.7. 
Why does the zip-picker keep recommending v1.4 (rhide14b.zip if I 
can remember correctly)  when v1.4.7 (although a beta) is much 
better( I got v1.4.7 from Robert's site). The reason I ended up with 
v1.4 was because  the zip-picker suggested it.

Once again many thank's to everyone who helped me in my 
problem, I really appreciate everyones help.
Kalum <kalum AT myflat DOT com>

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019