DYNALIB_TABLE_EXTERN(hal_gpio); DYNALIB_TABLE_EXTERN(hal_spi); DYNALIB_TABLE_EXTERN(hal_core); DYNALIB_TABLE_EXTERN(hal_socket); DYNALIB_TABLE_EXTERN(hal_cellular); DYNALIB_TABLE_EXTERN(hal_usart); DYNALIB_TABLE_EXTERN(hal_concurrent); DYNALIB_TABLE_EXTERN(hal_can); /** * The module export table. This lists the addresses of individual library dynalib jump tables. * Libraries must not be reordered or removed, only new ones added to the end. */ extern "C" __attribute__((externally_visible)) const void* const system_part2_module[] = { DYNALIB_TABLE_NAME(hal), DYNALIB_TABLE_NAME(rt), DYNALIB_TABLE_NAME(system), DYNALIB_TABLE_NAME(hal_peripherals), DYNALIB_TABLE_NAME(hal_i2c), DYNALIB_TABLE_NAME(hal_gpio), DYNALIB_TABLE_NAME(hal_spi), DYNALIB_TABLE_NAME(hal_core), DYNALIB_TABLE_NAME(hal_socket), DYNALIB_TABLE_NAME(hal_cellular), DYNALIB_TABLE_NAME(hal_usart), DYNALIB_TABLE_NAME(system_net), DYNALIB_TABLE_NAME(system_cloud), DYNALIB_TABLE_NAME(hal_concurrent), DYNALIB_TABLE_NAME(hal_can), };
DYNALIB_TABLE_EXTERN(hal_can); DYNALIB_TABLE_EXTERN(hal_usb); DYNALIB_TABLE_EXTERN(hal_rgbled); DYNALIB_TABLE_EXTERN(hal_bootloader); // strange that this is needed given that the entire block is scoped extern "C" // without it, the section name doesn't match *.system_part2_module as expected in the linker script extern "C" __attribute__((externally_visible)) const void* const system_part2_module[]; /** * The module export table. This lists the addresses of individual library dynalib jump tables. * Libraries must not be reordered or removed, only new ones added to the end. */ extern "C" __attribute__((externally_visible)) const void* const system_part2_module[] = { DYNALIB_TABLE_NAME(hal), DYNALIB_TABLE_NAME(rt), DYNALIB_TABLE_NAME(system), DYNALIB_TABLE_NAME(hal_peripherals), DYNALIB_TABLE_NAME(hal_i2c), DYNALIB_TABLE_NAME(hal_gpio), DYNALIB_TABLE_NAME(hal_spi), DYNALIB_TABLE_NAME(hal_core), DYNALIB_TABLE_NAME(hal_socket), DYNALIB_TABLE_NAME(hal_wlan), DYNALIB_TABLE_NAME(hal_usart), DYNALIB_TABLE_NAME(system_net), DYNALIB_TABLE_NAME(system_cloud), DYNALIB_TABLE_NAME(hal_concurrent), DYNALIB_TABLE_NAME(hal_can), DYNALIB_TABLE_NAME(hal_usb),
#include "module_system_part1.h" #include "system_part1_loader.c" DYNALIB_TABLE_EXTERN(communication); DYNALIB_TABLE_EXTERN(services); DYNALIB_TABLE_EXTERN(system_module_part1); DYNALIB_TABLE_EXTERN(crypto); __attribute__((externally_visible)) const void* const system_part1_module[] = { DYNALIB_TABLE_NAME(communication), DYNALIB_TABLE_NAME(services), DYNALIB_TABLE_NAME(system_module_part1), DYNALIB_TABLE_NAME(crypto), };