Re: Mesa3D graphics library build failure when using Scons 3.0.3 and newer on Windows with Visual Studio 2017, Scons 3.0.1 is unaffected.
Bill Deegan <[email protected]>
| Newsgroups | gmane.comp.programming.tools.scons.user |
|---|---|
| Message-ID | <CAEyG4CEPBbt_Fht2O304wN3-7UuZN8FH897_U4FyY3kdBY7_jg@mail.gmail.com> |
O.k. that's just a workaround. MD5-timestamp decider had a bugfix between 3.0.1 and 3.0.4. Somehow that's causing scons to not see the dependencies to generate the nir_opcodes.h. Regardless the way the mesa build is calling the scripts is pretty non-standard. Though the way they add the python dependencies is pretty clever. (And very thorough). Calling any builder with sources set to []... Regardless I'll see if I can get to the bottom of why the changes to MD5-timestamp decider are breaking this build. You could probably just (for the time being) detect which version of scons and if 3.0.1 or less enable md5-timestamp, otherwise let it default (which is MD5). It's a bit slower, but theoretically more correct. -Bill SCons Project Co-Manager On Mon, Feb 25, 2019 at 7:29 AM Liviu Prodea <[email protected]> wrote: > Yes, that hack works around it. Added Jose Fonseca from VMware to this > discussion as he is familiar with Mesa3D scons build internals. > > > ================================================================== > On Monday, February 25, 2019, 3:08:27 AM GMT+2, Bill Deegan < > [email protected]> wrote: > > > Finally got around to reproducing this. > Setting up for a build is a bit complicated, I ended up having to comment > out a couple lines in the build.cmd > > o.k. Try this: > comment out line 311 in mesascons/gallium.py > # env.Decider('MD5-timestamp') > > > > > On Tue, Feb 19, 2019 at 9:42 AM Bill Deegan <[email protected]> > wrote: > > Curious. Those changes should only affect using MD5-timestamp decider.. > > I'll take a look. > > On Tue, Feb 19, 2019 at 9:07 AM Liviu Prodea <[email protected]> > wrote: > > > ================================================================================= > > > > > Bisect is complete. I narrowed it down to 4 commits. Cannot go any further > due to skipping of commits that don't even get at nir code base. Replay log > is available here: https://bugs.freedesktop.org/attachment.cgi?id=143412 > > Affected commits attempt to generate src/compiler/nir/nir.h before src/compiler/nir/nir_opcodes.h > from their respective python sources which is obviously incorrect. > On Monday, February 18, 2019, 8:32:34 PM GMT+2, Daniel Moody < > [email protected]> wrote: > > > Which commits did you bisect too? > > On Mon, Feb 18, 2019, 11:37 AM Bill Deegan <[email protected] > wrote: > > nir_opcodes.h and any other file which are not present when needed are > indeed relevant. > They indicate what in the build logic is missing dependencies. > If the dependencies were correct, then those files would be > created/present before any file which depends on them is compiled.. > > -Bill > > On Mon, Feb 18, 2019 at 1:15 AM Liviu Prodea <[email protected]> > wrote: > > I am not a Mesa3D developer so I also filed a bug with them as well: > https://bugs.freedesktop.org/show_bug.cgi?id=109443 > > > I dug up a bit more now that I have Scons source code at hand. It appears > that Scons 3.0.2 that has been pulled from pypi is also affected. I tried > bisecting between rel_3.0.1 and rel_3.0.2 branches range but when I get > close to finish, I end up with 2 commits that are completely broken and 1 > with excessive debug that I don't know if it fails on same spot as master, > rel_3.0.4, rel_3.0.3 or rel_3.0.2. > > > > I don't think nir_opcodes.h is relevant because if I change the > configuration (add off-screen rendering / build llvmpipe / other changes) > it stumbles in other header file. Also if I keep retrying building after > failure without cleaning it succeeds eventually after plenty of tries with > failures in random header files so it makes progress. > > > > ======================================== > > > On Sunday, February 17, 2019, 10:30:43 PM GMT+2, Bill Deegan < > [email protected]> wrote: > > > what generates "'nir_opcodes.h" ? > Is that output from bison/flex/some other code generator, or is that just > a file which is checked into your tree? > > On Sun, Feb 17, 2019 at 2:01 AM Liviu Prodea <[email protected]> > wrote: > > I applied the patch and it succeeded in getting past configuration phase > but the end result is the same as with Scons 3.0.4 release. > > _______________________________________________ > Scons-users mailing list > [email protected] > https://pairlist4.pair.net/mailman/listinfo/scons-users > > _______________________________________________ Scons-users mailing list [email protected] https://pairlist4.pair.net/mailman/listinfo/scons-users