[Scons-users] Follow-up: Success depends on target name!
    Marc Branchaud 
    mbranchaud at xiplink.com
       
    Thu Oct  4 17:19:13 EDT 2012
    
    
  
On 12-10-04 04:57 PM, Marc Branchaud wrote:
> Hi all,
> 
> I think I've found a bug, but I might be missing something.  I'm trying to
> use a custom toolchain for my builds.  The following SConstruct doesn't work
> in SCons 2.2.0 (nor even in SCons 1.2.0):
> 
> -- 8< --
> e = DefaultEnvironment()
> 
> mycc = e.Command(target="tools/mycc",
>                  source="/usr/bin/gcc",
>                  action="cp $SOURCE $TARGET")
> 
> e.Replace(CC = mycc[0].abspath)
> 
> e.Program(target='testapp', source='test.c')
> -- >8 --
While crafting the example for this problem, I ran into some really confusing
behaviour.  The build works after I change the above SConstruct so that mycc
is no longer in the tools/ subdirectory:
	e = DefaultEnvironment()
	mycc = e.Command(target="mycc",
	                 source="/usr/bin/gcc",
	                 action="cp $SOURCE $TARGET")
	e.Replace(CC = mycc[0].abspath)
	e.Program(target='testapp', source='test.c')
But it fails if I give the Program a different target name!  The following
names all cause SCons to miss the dependency on mycc:
	app
	app2
	2app
	glop
	gloptest (but testglop works)
	abcdefg
	aragon   (but waragon works)
	frodo    (but phrodo works)
	gimli    (but qgimli works)
	legolas  (but plegolas works)
	boromir  (but sauron works)
I can't imagine what SCons has against the Fellowship of the Ring... :)
All these failing target names work if I don't replace CC in the environment.
 Also, I see the same behaviour in both 1.2.0 and 2.2.0.
Can anyone else confirm this weirdness?
		M.
    
    
More information about the Scons-users
mailing list