Bug 855 - waf dies badly when switching from debug to optimized build or vice versa
waf dies badly when switching from debug to optimized build or vice versa
Status: RESOLVED FIXED
Product: ns-3
Classification: Unclassified
Component: build system
ns-3-dev
All All
: P4 normal
Assigned To: ns-bugs
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2010-04-01 13:24 EDT by Andrey Mazo
Modified: 2010-04-23 10:47 EDT (History)
3 users (show)

See Also:


Attachments
waf traceback (2.29 KB, text/plain)
2010-04-01 13:24 EDT, Andrey Mazo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Mazo 2010-04-01 13:24:59 EDT
Created attachment 806 [details]
waf traceback

Steps to reproduce:
0) Take a clean working copy
1) ./waf configure -d debug
2) ./waf build
3) ./waf configure -d optimized
4) ./waf build
Then waf dies with exception TypeError: argument of type 'int' is not iterable.
The full traceback is in attachment.
Mercurial revision is b920710704c9.

The current workaround is to add "./waf distclean" after step 2).

This bug really annoys me, as I have to switch frequently between debug/optimized/release builds.
Also this bug is probably an upstream (waf) bug, but I think, it should be kept here as a tracker anyway.
Comment 1 Andrey Mazo 2010-04-01 13:38:58 EDT
(In reply to comment #0)
> Mercurial revision is b920710704c9.
Looks like revision 93a684517ead is not affected.
It seems, that changeset d6c026abfb3f (waf upgrade from 1.5.11 to 1.5.13) broke the things.
Comment 2 Andrey Mazo 2010-04-02 04:20:24 EDT
(In reply to comment #1)
Looks like, the bug is fixed with upstream changeset 7524 [1].
So it must be working in coming waf-1.5.16.

[1] http://code.google.com/p/waf/source/detail?spec=svn7540&r=7524
Comment 3 Andrey Mazo 2010-04-18 18:32:46 EDT
(In reply to comment #2)
> So it must be working in coming waf-1.5.16.

waf-1.5.16 released.
Comment 4 Andrey Mazo 2010-04-19 17:47:12 EDT
(In reply to comment #3)
> waf-1.5.16 released.

Seems to be blocked by waf's issue 658 [1].

[1] http://code.google.com/p/waf/issues/detail?id=658
Comment 5 Josh Pelkey 2010-04-21 12:58:29 EDT
(In reply to comment #4)
> (In reply to comment #3)
> > waf-1.5.16 released.
> 
> Seems to be blocked by waf's issue 658 [1].
> 
> [1] http://code.google.com/p/waf/issues/detail?id=658

This bug probably deserves a higher status and possibly a tutorial update if we can't fix it soon.  The tutorial has a new user go through the process of reconfiguring for optimized and rebuilding.  This will fail on them :(
Comment 6 Andrey Mazo 2010-04-21 17:26:55 EDT
(In reply to comment #5)
> This bug probably deserves a higher status and possibly a tutorial update if we
> can't fix it soon.  The tutorial has a new user go through the process of
> reconfiguring for optimized and rebuilding.  This will fail on them :(

1) Well, upgrading waf after RC1 isn't an option, I suppose.
2) Repacking current waf version with a little change isn't good too, though isn't so dangerous.
3) Adding some words to the documentation seems to be the safest way, though may add some complexity.

I'd prefer option 3) with this bug to be a reminder to change documentation back after actial bug fix.
Comment 7 Andrey Mazo 2010-04-22 04:02:08 EDT
(In reply to comment #4)
> Seems to be blocked by waf's issue 658 [1].
> 
> [1] http://code.google.com/p/waf/issues/detail?id=658

Fixed in waf changesets 7682 and 7683, so waiting for waf-1.5.17.
Currently testing waf's revision 7685 -- looks good to me.
Comment 8 Gustavo J. A. M. Carneiro 2010-04-23 09:51:33 EDT
waf 1.5.16 fixes the problem
Comment 9 Gustavo J. A. M. Carneiro 2010-04-23 10:47:18 EDT
changeset:   6274:3e8b3f2306c9
tag:         tip
user:        Gustavo J. A. M. Carneiro  <gjc@inescporto.pt>
date:        Fri Apr 23 15:46:46 2010 +0100
summary:     Upgrade to WAF 1.5.16.  Fixes bug #855.