Topic: Generating Makefile hangs

I've recently been encountering quite a lot of occasions where, on trying to BUILD, SF2.1 hangs, then greys out, displaying,

      Generating Makefile...

It sometimes does this two or three times in a row.
I Use the task manager to kill it each time and, changing nothing, just try again until it succeeds.

This is recent behaviour.  SF2.1 was not doing this when I first started using it. 
It might well be due to some setting or error in my computer, therefore.
I am reporting it just in case anyone else has any similar experience.
---
John

Re: Generating Makefile hangs

John,

I'm looking into the issue.  I have one question first.  Is there anything in the Makefile after this lockup?  Just curious.

Also, version 2.2 has been out for a while now.  I would suggest upgrading, although it is doubtful this problem will be resolved by the upgrade.

Jeff Armstrong
Approximatrix, LLC

Re: Generating Makefile hangs

John,

It appears that I can replicate the issue.  I'm looking into the causes now.

Jeff Armstrong
Approximatrix, LLC

Re: Generating Makefile hangs

Sorry to refer to SF2.1.
I meant SF2.2.

Glad you've spotted the prob.
---
J.

Re: Generating Makefile hangs

John,

It looks like there were three possible issues:

1. There was a somewhat inadvisable operation occurring in the thread that generates the makefile (it was modifying stored project filenames internally).  This problem was more generic, but it could theoretically cause crashes I suppose.

2. The system for checking if INCLUDEd files were part of the current project had a handful of possible failure points.  It has been cleaned up substantially, and a safety measure to prevent lockup is now in place.

3. The result of asking the dependency calculation engine if the queue was empty was never checked.  Instead, it was assumed the dependency queue was empty.  Theoretically it could lead to some odd cases where a deadlock (two threads waiting on each other) could occur.

They've all been fixed in the development version, which is just about ready for testing.

Jeff Armstrong
Approximatrix, LLC