Bug 20934 - Parallel make fails in src/glx/x11/
Summary: Parallel make fails in src/glx/x11/
Status: RESOLVED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Mesa core (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Dan Nicholson
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-29 10:17 UTC by Rémi Cardona
Modified: 2009-08-04 10:49 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Add dep to libGL.so on $(TOP)/$(LIB_DIR) (552 bytes, patch)
2009-03-29 10:17 UTC, Rémi Cardona
Details | Splinter Review
Ensure $(TOP)/$(LIB_DIR) is created immediately (835 bytes, patch)
2009-03-29 10:38 UTC, Dan Nicholson
Details | Splinter Review
Create leading directories from mklib (848 bytes, patch)
2009-08-03 08:44 UTC, Dan Nicholson
Details | Splinter Review

Description Rémi Cardona 2009-03-29 10:17:43 UTC
Created attachment 24354 [details] [review]
Add dep to libGL.so on $(TOP)/$(LIB_DIR)

"make -jX" fails in src/glx/x11/ due to lib(64)/ not being created when mklib is ran.

The following patch adds a dep from libGL.so to lib(64)/. I'm pretty sure that the dep should be added to other libs as well but since libGL seems to be the first one being built, it solves the issue at hand.

This bug happens on all 7.4 RCs and the final release too.

Downstream bug report : http://bugs.gentoo.org/263914

Thanks
Comment 1 Dan Nicholson 2009-03-29 10:38:11 UTC
Created attachment 24355 [details] [review]
Ensure $(TOP)/$(LIB_DIR) is created immediately

Where is the rule for $(TOP)/$(LIB_DIR)? I don't see it in glx/x11/Makefile in master or 7.4. And actually, I would prefer to just handle this once in src/Makefile. Does this patch work? Or are you just jumping straight into src/glx/x11?
Comment 2 Rémi Cardona 2009-03-29 15:50:54 UTC
(In reply to comment #1)
> Created an attachment (id=24355) [details]
> Ensure $(TOP)/$(LIB_DIR) is created immediately
> 
> Where is the rule for $(TOP)/$(LIB_DIR)?

src/Makefile:31

> I don't see it in glx/x11/Makefile in
> master or 7.4. And actually, I would prefer to just handle this once in
> src/Makefile. Does this patch work? Or are you just jumping straight into
> src/glx/x11?

It looks like it should work as well, I'll ask the impacted user to try it out. Right now, we're running make from $(TOP), so I guess that ought to do it.

mklib could also create the install dir if it doesn't exist... Just a thought.

Thanks for your help
Comment 3 Rémi Cardona 2009-07-21 14:32:59 UTC
Hi Dan,

Could you apply either patch to the 7.5 branch? I couldn't find anything remotely similar in mesa's history.

Thanks
Comment 4 Dan Nicholson 2009-08-03 08:44:20 UTC
Created attachment 28306 [details] [review]
Create leading directories from mklib

Sorry for the slow delay.

It turns out that it was remarkably easier to fix this the right way by having mklib create the directories it needs instead of hoping that make has done it for us.

I think this should reliably fix any race so long as mklib is used to create the libraries in $(LIB_DIR).

If this looks acceptable, I'll check it in and cherry-pick back to 7.5.
Comment 5 Rémi Cardona 2009-08-03 09:01:57 UTC
That's probably even safer than my original patch. That looks good to me.

Thanks
Comment 6 Dan Nicholson 2009-08-04 06:34:34 UTC
Pushed to master and mesa_7_5_branch.
Comment 7 Rémi Cardona 2009-08-04 10:49:55 UTC
Thanks


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.