Subversion Repositories idreammicro-avr

Compare Revisions

Ignore whitespace Rev 6 → Rev 7

/trunk/build_system/build_tools.py
0,0 → 1,49
"""
Build project.
"""
def BuildProject(env, libraries, sources, target_name):
# Build libraries.
for library in libraries:
SConscript(
'#libraries/' + library + '/SConscript',
exports = { 'env' : env },
duplicate = 0
)
# Build program.
env.Program(target = target_name + '.elf', source = sources)
# Create hex binary file.
env.Command(
target_name + '.hex',
target_name + '.elf',
env['OBJCOPY'] + ' -O ihex $SOURCE $TARGET'
)
AddMethod(Environment, BuildProject)
 
"""
Build library.
"""
def BuildLibrary(env, sources, target_name):
# Build static library.
env.StaticLibrary(target = target_name, source = sources)
# Append LIBPATH and LIBS.
env.Append(LIBPATH = [ '#build/libraries/' + target_name + '/' + env['NAME'] ])
env.Append(LIBS = [ target_name ])
 
AddMethod(Environment, BuildLibrary)
 
"""
Compute memory usage.
"""
def ComputeMemoryUsage(env, target_name):
# Compute memory usage.
env.Command(
None,
target_name + '.elf',
env['SIZE'] + ' -C --mcu=' + env['MCU'] + ' $SOURCE'
)
AddMethod(Environment, ComputeMemoryUsage)
/trunk/SConstruct
1,2 → 1,5
# Import build tools.
SConscript('build_system/build_tools.py')
 
# Execute projects SConscript.
SConscript('projects/SConscript')
/trunk/projects/SConscript
1,7 → 1,7
# Define projects to build.
projects = [
'helloworld/',
'input_to_output/'
#'input_to_output/'
]
 
# Build each project.
/trunk/projects/helloworld/SConscript
9,31 → 9,11
'digital_io'
]
 
# Build libraries.
for library in libraries:
SConscript(
'#libraries/' + library + '/SConscript',
exports = { 'env_target' : env_target },
duplicate = 0
)
 
# Set source file.
sources = 'helloworld.c'
 
# Build program.
env_target.Program(target = TARGET + '.elf', source = sources)
# Build project and libraries.
env_target.BuildProject(libraries, sources, TARGET)
 
# Create hex binary file.
env_target.Command(
TARGET + '.hex',
TARGET + '.elf',
env_target['OBJCOPY'] + ' -O ihex $SOURCE $TARGET'
)
 
# Compute memory usage.
env_target.Command(
None,
TARGET + '.elf',
env_target['SIZE'] + ' -C --mcu=' + env_target['MCU'] + ' $SOURCE'
)
 
env_target.ComputeMemoryUsage(TARGET)
/trunk/libraries/digital_io/test/SConscript
9,20 → 9,8
'digital_io__test.c'
]
 
# Build program.
env_target.Program(target = TARGET + '.elf', source = sources)
# Build project and libraries.
env_target.BuildProject(sources, TARGET)
 
# Create hex binary file.
env_target.Command(
TARGET + '.hex',
TARGET + '.elf',
env_target['OBJCOPY'] + ' -O ihex $SOURCE $TARGET'
)
 
# Compute memory usage.
env_target.Command(
None,
TARGET + '.elf',
env_target['SIZE'] + ' -C --mcu=' + env_target['MCU'] + ' $SOURCE'
)
 
env_target.ComputeMemoryUsage(TARGET)
/trunk/libraries/digital_io/demo/SConscript
9,20 → 9,8
'digital_io__demo.c'
]
 
# Build program.
env_target.Program(target = TARGET + '.elf', source = sources)
# Build project and libraries.
env_target.BuildProject(sources, TARGET)
 
# Create hex binary file.
env_target.Command(
TARGET + '.hex',
TARGET + '.elf',
env_target['OBJCOPY'] + ' -O ihex $SOURCE $TARGET'
)
 
# Compute memory usage.
env_target.Command(
None,
TARGET + '.elf',
env_target['SIZE'] + ' -C --mcu=' + env_target['MCU'] + ' $SOURCE'
)
 
env_target.ComputeMemoryUsage(TARGET)
/trunk/libraries/digital_io/SConstruct
1,3 → 1,6
# Import build tools.
SConscript('min_env/build_tools.py')
 
# Create and initialize the environment.
env = Environment()
 
/trunk/libraries/digital_io/src/SConscript
9,9 → 9,5
'digital_io.c'
]
 
# Build static library.
env_target.StaticLibrary(target = TARGET, source = sources)
 
# Append LIBPATH and LIBS.
env_target.Append(LIBPATH = [ '#build/' + '/libraries/' + TARGET + '/' + env_target['NAME']])
env_target.Append(LIBS = [ TARGET ])
# Build library.
env_target.BuildLibrary(sources, TARGET)
/trunk/libraries/digital_io/min_env/build_tools.py
0,0 → 1,41
"""
Build project.
"""
def BuildProject(env, sources, target_name):
# Build program.
env.Program(target = target_name + '.elf', source = sources)
# Create hex binary file.
env.Command(
target_name + '.hex',
target_name + '.elf',
env['OBJCOPY'] + ' -O ihex $SOURCE $TARGET'
)
AddMethod(Environment, BuildProject)
 
"""
Build library.
"""
def BuildLibrary(env, sources, target_name):
# Build static library.
env.StaticLibrary(target = target_name, source = sources)
# Append LIBPATH and LIBS.
env.Append(LIBPATH = [ '#build/libraries/' + target_name + '/' + env['NAME'] ])
env.Append(LIBS = [ target_name ])
 
AddMethod(Environment, BuildLibrary)
 
"""
Compute memory usage.
"""
def ComputeMemoryUsage(env, target_name):
# Compute memory usage.
env.Command(
None,
target_name + '.elf',
env['SIZE'] + ' -C --mcu=' + env['MCU'] + ' $SOURCE'
)
AddMethod(Environment, ComputeMemoryUsage)