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
Reportersmlewis 
Assigned Torenfrew 
PrioritynormalSeverityminorReproducibilityalways
StatusresolvedResolutionfixed 
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...

./scons.py mode=release extras=mpi,static bin
./scons.py 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
(0000220)
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...
(0000221)
renfrew (Developer)
2013-03-28 11:45

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

I have decided not to commit this yet.

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

...to simply...

"-".join(sorted(options.extras))

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

./scons.py mode=debug extras=static,mpi

...followed by a...

./scons.py mode=debug extras=mpi,static

...results in a full recompile.

Scons thinks they are different targets, I think.
(0000223)
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.
(0000235)
rmoretti (Attentive Developer)
2013-04-01 19:01

Line 180 in rosetta_source/tools/build/setup.py 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.
(0000243)
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
[code]
diff --git a/rosetta_source/tools/build/setup.py b/rosetta_source/tools/build/setup.py
index f48b502..cc34a5d 100644
--- a/rosetta_source/tools/build/setup.py
+++ b/rosetta_source/tools/build/setup.py
@@ -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 :
+ actual.extras.data.sort()

     return requested, actual
[/code]


- 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