To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=73081
                 Issue #|73081
                 Summary|makedepend's complexity grows terribly with number of 
                        |files
               Component|tools
                 Version|OOo 2.1
                Platform|All
                     URL|
              OS/Version|All
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|PATCH
                Priority|P3
            Subcomponent|code
             Assigned to|mh
             Reported by|kendy





------- Additional comments from [EMAIL PROTECTED] Wed Jan  3 05:50:35 -0800 
2007 -------
makedepend's complexity grows terribly the more include files include another 
include files.  The reason is the way makedepend remembers values of #defines - 
it's per file, and every check whether the symbol was defined or not descents 
the entire structure of the include files and tries to search for the 
definition.  Of course the number of tests grows terribly when include files 
are included by another ones.  This patch fixes that:

http://svn.gnome.org/viewcvs/*checkout*/ooo-build/trunk/patches/src680/fast-mkdepend.diff

I introduced a separate data structure that holds all the definitions.  
Additionally I changed it from sorted list to a hash (with linked lists for the 
conflicts).

Please have a look.  I tested it so that I removed most of the external header 
guards (using 
http://svn.gnome.org/viewcvs/*checkout*/ooo-build/trunk/bin/strip-guards), and 
compiled OOo with and without the modified makedepend (clean builds).  Both 
builds have exactly the same *.dpcc files, though the build with unmodified 
makedepend took about 6 times more time to finish.  This is the extreme case of 
course, because usually the files have the external header guards; but I'd love 
to get rid of them ;-)

---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to