[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
make version 3.79.1
From: |
Günter Neiß |
Subject: |
make version 3.79.1 |
Date: |
Wed, 24 Jan 2001 16:51:06 +0100 |
Hi,
I am not really shure if the problem I found should be called a bug,
but I thing I should tell the problem to improve usability of make.
I use make Version 3.79.1 under
- Linux / Intel Pentium
- HP-UX / HP-RISC
but I don't think that makes any difference.
I wrote some complex makefiles that automaticaly generates libraries and
executables
for a whole project, putting the generated files in different places
depending on the
OS it's running on.
I use the technic described in the manual of automaticaly generating
dependency (*.d) files for the project.
Assuming there is a file foo.c that includes foo.h and bar.h.
After make runs the first time there will be a file foo.d looking like:
-----------
foo.c foo.d: foo.h bar.h
-----------
Because the makefile includes foo.d everything works fine.
Even if I add another include to foo.c (let's sav tmp.h) the file foo.d
will be
remade...
But now it comes:
If I edit foo.c, removing the include "bar.h" (because that's no more
needed)
and at the same time delete the file bar.h,
the next run of make will find that foo.d depends on bar.h, but could
not find it.
Make shows the error:
no rule to make bar.h needed by foo.d stop
I found no way to tell make that foo.d depends on bar.h, but if bar.h
doesn't exist don't try to generate it, instead regenerate foo.d
If there is a way to do that, please give me a hint, otherwise thing
about how to
implement such a special dependency.
greetings
Günter
smime.p7s
Description: Kryptographische Unterschrift mit S/MIME
- make version 3.79.1,
Günter Neiß <=