For some reason my post with the code was deleted. I'll try posting it again.
SConstruct
------------------
objs = objs + SConscript('/xyz/SConscript', variant_dir='build/xyz', exports='env', duplicate=0)
SConscript
------------------
import rtconfig
from building import *
Import('env')
EXEC_PATH = rtconfig.EXEC_PATH
PREFIX = rtconfig.PREFIX
OBJCPY = '"' + EXEC_PATH + '/' + PREFIX + 'objcopy.exe"'
mybld = Builder(action = OBJCPY + ' --input-target binary --output-target elf32-littlearm --binary-architecture arm $SOURCE $TARGET',
single_source = 1,
suffix = '.o',
src_suffix = '.xyz')
env['BUILDERS']['myBuild'] = mybld
files = Glob('*.xyz')
CPPPATH = [GetCurrentDir()]
group = DefineGroup('Custom', files, depend = [''], CPPPATH = CPPPATH)
Return('group')