[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: VPATH and vpath problems
From: |
Dan Clarke |
Subject: |
Re: VPATH and vpath problems |
Date: |
Fri, 09 Jun 2006 10:06:12 +0000 |
User-agent: |
Thunderbird 1.5.0.2 (Windows/20060308) |
On 2006-6-7 16:44 UTC, Dan Clarke wrote:
/ / / VPATH = w:/modules7/graphics/pc/vshaders/effects/ / vpath %.hvs
w:/modules7/graphics/pc/vshaders/effects/ / / / %.hvo: %.hvs/ / / /
and I get the following error .../ / / / gnumake: *** No rule to make
target/ / `\gamedir\vshaders\effects\ccorrect.hvo', needed by
`project.exe'. Stop./
Try building in the object directory. Then you can specify the
object files as, e.g.,
ccorrect.hvo
and vpath can find
w:/modules7/graphics/pc/vshaders/effects/ccorrect.hvo
as expected. I'm guessing that you're specifying objects like this:
/gamedir/vshaders/effects/ccorrect.hvo
so that with vpath you can find
gamedir/vshaders/effects/ccorrect.hvo
w:/modules7/graphics/pc/vshaders/effects/ccorrect.hvo/gamedir/vshaders/effects/ccorrect.hvo
neither of which is what you want. See:
http://make.paulandlesley.org/vpath.html
Yes, you're right - I am specifying objects as
"/gamedir/vshaders/effects/ccorrect.hvo". The ".hvo" objects are not
intermediate files. They are actually used by my final program and
cannot be in the same directory as my makefile - they must go into the
directories specified in the example below. The main makefile is in the
gamedir directory, and my .hvo files need to end up off the
"/gamedir/vshaders/" directory.
For example ...
"\modules7\graphics\pc\vshaders\effects\ccorrect.hvs" --->
"\gamedir\vshaders\effects\ccorrect.hvo"
"\modules7\graphics\pc\vshaders\effects\contrast.hvs" --->
"\gamedir\vshaders\effects\contrast.hvo"
"\modules7\graphics\pc\vshaders\effects\blur.hvs" --->
"\gamedir\vshaders\effects\blur.hvo"
"\modules7\graphics\pc\vshaders\prelit\spec.hvs" --->
"\gamedir\vshaders\prelit\spec.hvo"
"\modules7\graphics\pc\vshaders\prelit\reflect.hvs" --->
"\gamedir\vshaders\prelit\reflect.hvo"
"\modules7\graphics\pc\vshaders\unlit\spec2.hvs" --->
"\gamedir\vshaders\unlit\spec2.hvo"
"\modules7\graphics\pc\vshaders\unlit\reflect2.hvs" --->
"\gamedir\vshaders\unlit\reflect2.hvo"
etc.
There's loads more directories like this, all going into some directory
coming off "\gamedir\vshaders\". The path relative to
"\gamedir\vshaders\" matches the path relative to
"\modules7\graphics\pc\vshaders\".
In each directory containing the source ".hvs" files, I have another
included makefile which has a list of all the .hvo files that need
building in that directory.
As there's lots of target directories for these .hvo files, then I can't
just change directory into them (or can I?).
Any ideas?
Thanks again,
- Dan