You need to give a filename relative to the SConstruct directory (i.e. 'src/subtree1/linkerscript.lds')

SCons doesn't add the file to the dependencies (you could do this manually with Depends(program, filename))

It's (of course) unportable (ok, with the linkerscripts example that doesn't make sense, since linkerscripts mostly are unportable, but there maybe more examples, where portability makes sense)
A solution may be to write a custom Builder.