|
From: Tom H. <to...@co...> - 2005-11-11 10:56:52
|
In message <yek...@de...>
Tom Hughes <to...@co...> wrote:
> In message <200...@cn...>
> Yao Qi <qiy...@cn...> wrote:
>
>> Now, all the TOOLs are dependent on VEX/libvex.a and coregrind/valgrind
>> is not, so when run 'make' in top directory of source code tree, the
>> updated files in VEX could not be compiled ,VEX/libvex.a could not be
>> updated, and finally all the TOOLs will not re-link VEX/libvex.a. So
>> everytime when I modify files in VEX directory, I should 'make libvex.a'
>> in VEX to build libvex.a and 'make' in lackey/, for example, to link
>> this new VEX/libvex.a to lackey or someother TOOLs.
>
> The reason coregrind/valgrind is not dependent on it is because it
> doesn't link with it, hence it is not dependent on it!
>
> The only things dependent on libvex.a are the tool binaries so each
> of those should have a dependency on it. I might even see if that works...
Right. The tools are already (correctly) dependent on libvex.a but
the problem is that the make process processing that dependency has
no way of knowing what libvex.a is dependent on so can't know whether
or not it needs to be rebuilt.
Nick did put the VEX directory in SUBDIRS at one point so it always
got build but Julian took it out again because it was causing VEX to
rebuilt even when it didn't need to be.
That wouldn't work now anyway as it would build libvex.a rather than
the appropriate platform specific versions.
Tom
--
Tom Hughes (to...@co...)
http://www.compton.nu/
|