Import('env') headers = [] instances = [] sources = [] aliases = {} type_aliases = {} periph = env['PLATFORM_SPEC'].get('periph', {}) if 'stm32_gpio' in periph: headers.append('stm32_gpio.h') for name, data in periph['stm32_gpio'].items(): instances.append({ 'type': 'STM32_GPIO_%s_t' % data['type'], 'name': name, 'args': [data['offset']], }) type_aliases['Pin'] = 'STM32_GPIO_%s_t::Pin' % data['type'] type_aliases['PinArray'] = 'STM32_GPIO_%s_t::PinArray' % data['type'] env.Jinja2('gpio.h', '../templates/periph_instances.h.j2', headers = headers, instances = instances, aliases = aliases, type_aliases = type_aliases) Return('sources')