Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000234Rosetta[All Projects] Input Handlingpublic2013-03-28 09:562013-04-04 16:33
Assigned Torenfrew 
PlatformOSOS Version
Product Version 
Fixed in VersionTrunk 
Summary0000234: if you use multiple extras options, SCons does not order consistently
Descriptionpasted from a list email from Doug Renfrew:

Also, for those who may be unaware, if you use multiple extras options, keeping them in the same order will avoid a lot of headache. For example...

./ mode=release extras=mpi,static bin
./ mode=release extras=static,mpi bin

produces two different directory hierarchies in rosetta_source/build. You will end up with two sets of binarys and end up doing two compiles.

This should probably be a bug. It could be fixed if scons would sort the extras list alphabetically.

TagsNo tags attached.
Application(s) Affectedscons
Command Line Usedscons mode=A,B vs. mode=B,A
Developer OptionsConfirmed As Bug
Fixed in SVN Version54684
Attached Files

- Relationships

-  Notes
Sergey (Administrator)
2013-03-28 11:40

If anyone know the place where extras is process: just use sorted(<extra list>) so it always the same...
renfrew (Developer)
2013-03-28 11:45

I am about to commit that change
renfrew (Developer)
2013-03-28 13:17

I have decided not to commit this yet.

Changing line 255 in rosetta_source/tools/build/ from...
"-".join(options.extras) simply...


Prevents the creation of duplicated paths and different executable names, but a...

./ mode=debug extras=static,mpi

...followed by a...

./ mode=debug extras=mpi,static

...results in a full recompile.

Scons thinks they are different targets, I think.
renfrew (Developer)
2013-03-28 13:24

I do not currently know how scons decides what needs to compiled and what does not need to be compiled. But I suspect that also needs to be changed. I am unassigning this from myself since I suspect I can be of no more help.
rmoretti (Attentive Developer)
2013-04-01 19:01

Line 180 in rosetta_source/tools/build/ probably also needs to change

Or better yet, sort the options.extras where there loaded in the setup_build_options() function in the same file. Probably about line 128, where "default" is set as the default extras tag.
renfrew (Developer)
2013-04-02 17:21
edited on: 2013-04-02 17:33

So I guess I lied about trying to be more help. This patch seems to do the trick
diff --git a/rosetta_source/tools/build/ b/rosetta_source/tools/build/
index f48b502..cc34a5d 100644
--- a/rosetta_source/tools/build/
+++ b/rosetta_source/tools/build/
@@ -125,7 +125,9 @@ directory it is built to, and what settings it ultimately uses.

     # Nothing special is currently done to select mode, kind or extras
     if len(actual.extras) == 0:
- actual.extras.append("default")
+ actual.extras.append("default")
+ else :

     return requested, actual

- Issue History
Date Modified Username Field Change
2013-03-28 09:56 smlewis New Issue
2013-03-28 11:40 Sergey Note Added: 0000220
2013-03-28 11:45 renfrew Note Added: 0000221
2013-03-28 11:45 renfrew Assigned To => renfrew
2013-03-28 11:45 renfrew Status new => assigned
2013-03-28 13:17 renfrew Note Added: 0000222
2013-03-28 13:18 renfrew Assigned To renfrew =>
2013-03-28 13:24 renfrew Note Added: 0000223
2013-03-28 13:36 smlewis Status assigned => acknowledged
2013-04-01 19:01 rmoretti Note Added: 0000235
2013-04-02 17:21 renfrew Note Added: 0000243
2013-04-02 17:33 renfrew Note Edited: 0000243 View Revisions
2013-04-04 16:31 renfrew Assigned To => renfrew
2013-04-04 16:31 renfrew Status acknowledged => assigned
2013-04-04 16:33 renfrew Fixed in SVN Version => 54684
2013-04-04 16:33 renfrew Status assigned => resolved
2013-04-04 16:33 renfrew Fixed in Version => Trunk
2013-04-04 16:33 renfrew Resolution open => fixed

Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker