bug-make
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Intermittent parallel make rebuild failures


From: David Highley
Subject: Re: Intermittent parallel make rebuild failures
Date: Tue, 5 Oct 2010 08:41:48 -0700 (PDT)

"Edward Welbourne wrote:"
> 
> > Every time the subject of cache comes up its because they are always
> > wrong.
> 
> well, this *is* a *bug* list - every time anything comes up here, it's
> because someone's found a bug in it !  The vast amount of the time
> that the cache works just fine and makes builds faster is (quite
> properly) not normally the subject of posts to the bug-make list ...

That's the issue, things used to work reliably. Now we seem to accept
that they work most of the time. So far I find no acceptable way of
modifying this build to be reliable. Here is the tough part of trying to
fix this issue. If your trying to support a large build system and have
consistency across subsystems and minimize multiple typing of code to
minimize maintenance failures then it is very hard to solve this issue.

So far the only way I have been able to get the build to work it to add
the macro $(DIRS) to the dependency line and change the $(LINK) macro
not to use $^ but to use $(INF_DIST_SVCS_OBJS) which totally breaks any
kind of maintainability across a large build system.

In the information provided the macro $(LINK) can be one of:
LINK_STATIC             = \
                          PATH=$(PATH) \
                          $(AR) \
                          $(AR_OUT) \
                          $^
LINK_SHARED             = \
                          PATH=$(PATH) \
                          LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) \
                          $(LD) \
                          $(LD_OUT) \
                          $(LIB_NAME) \
                          $(LDXFLAGS) \
                          $(LDBFLAGS) \
                          $^
LINK_DLL                = \
                          PATH=$(PATH) \
                          LD_LIBRARY_PATH=$(LD_LIBRARY_PATH) \
                          $(LD) \
                          $(LD_OUT) \
                          $(LIB_NAME) \
                          $(LDXFLAGS) \
                          $(LDBFLAGS) \
                          $^ \
                          $(LIBS) \
                          $(PLATFORM_LIBS) \
                          $(MANIFEST)

> 
>       Eddy.
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]