fbuild 1.2.8__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (121) hide show
  1. fbuild/__init__.py +390 -0
  2. fbuild/assets/example.txt +1 -0
  3. fbuild/build/__init__.py +117 -0
  4. fbuild/build/archive_creator.py +186 -0
  5. fbuild/build/binary_generator.py +444 -0
  6. fbuild/build/build_component_factory.py +131 -0
  7. fbuild/build/build_info_generator.py +624 -0
  8. fbuild/build/build_state.py +325 -0
  9. fbuild/build/build_utils.py +93 -0
  10. fbuild/build/compilation_executor.py +422 -0
  11. fbuild/build/compiler.py +165 -0
  12. fbuild/build/compiler_avr.py +574 -0
  13. fbuild/build/configurable_compiler.py +664 -0
  14. fbuild/build/configurable_linker.py +637 -0
  15. fbuild/build/flag_builder.py +214 -0
  16. fbuild/build/library_dependency_processor.py +185 -0
  17. fbuild/build/linker.py +708 -0
  18. fbuild/build/orchestrator.py +67 -0
  19. fbuild/build/orchestrator_avr.py +651 -0
  20. fbuild/build/orchestrator_esp32.py +878 -0
  21. fbuild/build/orchestrator_rp2040.py +719 -0
  22. fbuild/build/orchestrator_stm32.py +696 -0
  23. fbuild/build/orchestrator_teensy.py +580 -0
  24. fbuild/build/source_compilation_orchestrator.py +218 -0
  25. fbuild/build/source_scanner.py +516 -0
  26. fbuild/cli.py +717 -0
  27. fbuild/cli_utils.py +314 -0
  28. fbuild/config/__init__.py +16 -0
  29. fbuild/config/board_config.py +542 -0
  30. fbuild/config/board_loader.py +92 -0
  31. fbuild/config/ini_parser.py +369 -0
  32. fbuild/config/mcu_specs.py +88 -0
  33. fbuild/daemon/__init__.py +42 -0
  34. fbuild/daemon/async_client.py +531 -0
  35. fbuild/daemon/client.py +1505 -0
  36. fbuild/daemon/compilation_queue.py +293 -0
  37. fbuild/daemon/configuration_lock.py +865 -0
  38. fbuild/daemon/daemon.py +585 -0
  39. fbuild/daemon/daemon_context.py +293 -0
  40. fbuild/daemon/error_collector.py +263 -0
  41. fbuild/daemon/file_cache.py +332 -0
  42. fbuild/daemon/firmware_ledger.py +546 -0
  43. fbuild/daemon/lock_manager.py +508 -0
  44. fbuild/daemon/logging_utils.py +149 -0
  45. fbuild/daemon/messages.py +957 -0
  46. fbuild/daemon/operation_registry.py +288 -0
  47. fbuild/daemon/port_state_manager.py +249 -0
  48. fbuild/daemon/process_tracker.py +366 -0
  49. fbuild/daemon/processors/__init__.py +18 -0
  50. fbuild/daemon/processors/build_processor.py +248 -0
  51. fbuild/daemon/processors/deploy_processor.py +664 -0
  52. fbuild/daemon/processors/install_deps_processor.py +431 -0
  53. fbuild/daemon/processors/locking_processor.py +777 -0
  54. fbuild/daemon/processors/monitor_processor.py +285 -0
  55. fbuild/daemon/request_processor.py +457 -0
  56. fbuild/daemon/shared_serial.py +819 -0
  57. fbuild/daemon/status_manager.py +238 -0
  58. fbuild/daemon/subprocess_manager.py +316 -0
  59. fbuild/deploy/__init__.py +21 -0
  60. fbuild/deploy/deployer.py +67 -0
  61. fbuild/deploy/deployer_esp32.py +310 -0
  62. fbuild/deploy/docker_utils.py +315 -0
  63. fbuild/deploy/monitor.py +519 -0
  64. fbuild/deploy/qemu_runner.py +603 -0
  65. fbuild/interrupt_utils.py +34 -0
  66. fbuild/ledger/__init__.py +52 -0
  67. fbuild/ledger/board_ledger.py +560 -0
  68. fbuild/output.py +352 -0
  69. fbuild/packages/__init__.py +66 -0
  70. fbuild/packages/archive_utils.py +1098 -0
  71. fbuild/packages/arduino_core.py +412 -0
  72. fbuild/packages/cache.py +256 -0
  73. fbuild/packages/concurrent_manager.py +510 -0
  74. fbuild/packages/downloader.py +518 -0
  75. fbuild/packages/fingerprint.py +423 -0
  76. fbuild/packages/framework_esp32.py +538 -0
  77. fbuild/packages/framework_rp2040.py +349 -0
  78. fbuild/packages/framework_stm32.py +459 -0
  79. fbuild/packages/framework_teensy.py +346 -0
  80. fbuild/packages/github_utils.py +96 -0
  81. fbuild/packages/header_trampoline_cache.py +394 -0
  82. fbuild/packages/library_compiler.py +203 -0
  83. fbuild/packages/library_manager.py +549 -0
  84. fbuild/packages/library_manager_esp32.py +725 -0
  85. fbuild/packages/package.py +163 -0
  86. fbuild/packages/platform_esp32.py +383 -0
  87. fbuild/packages/platform_rp2040.py +400 -0
  88. fbuild/packages/platform_stm32.py +581 -0
  89. fbuild/packages/platform_teensy.py +312 -0
  90. fbuild/packages/platform_utils.py +131 -0
  91. fbuild/packages/platformio_registry.py +369 -0
  92. fbuild/packages/sdk_utils.py +231 -0
  93. fbuild/packages/toolchain.py +436 -0
  94. fbuild/packages/toolchain_binaries.py +196 -0
  95. fbuild/packages/toolchain_esp32.py +489 -0
  96. fbuild/packages/toolchain_metadata.py +185 -0
  97. fbuild/packages/toolchain_rp2040.py +436 -0
  98. fbuild/packages/toolchain_stm32.py +417 -0
  99. fbuild/packages/toolchain_teensy.py +404 -0
  100. fbuild/platform_configs/esp32.json +150 -0
  101. fbuild/platform_configs/esp32c2.json +144 -0
  102. fbuild/platform_configs/esp32c3.json +143 -0
  103. fbuild/platform_configs/esp32c5.json +151 -0
  104. fbuild/platform_configs/esp32c6.json +151 -0
  105. fbuild/platform_configs/esp32p4.json +149 -0
  106. fbuild/platform_configs/esp32s3.json +151 -0
  107. fbuild/platform_configs/imxrt1062.json +56 -0
  108. fbuild/platform_configs/rp2040.json +70 -0
  109. fbuild/platform_configs/rp2350.json +76 -0
  110. fbuild/platform_configs/stm32f1.json +59 -0
  111. fbuild/platform_configs/stm32f4.json +63 -0
  112. fbuild/py.typed +0 -0
  113. fbuild-1.2.8.dist-info/METADATA +468 -0
  114. fbuild-1.2.8.dist-info/RECORD +121 -0
  115. fbuild-1.2.8.dist-info/WHEEL +5 -0
  116. fbuild-1.2.8.dist-info/entry_points.txt +5 -0
  117. fbuild-1.2.8.dist-info/licenses/LICENSE +21 -0
  118. fbuild-1.2.8.dist-info/top_level.txt +2 -0
  119. fbuild_lint/__init__.py +0 -0
  120. fbuild_lint/ruff_plugins/__init__.py +0 -0
  121. fbuild_lint/ruff_plugins/keyboard_interrupt_checker.py +158 -0
@@ -0,0 +1,151 @@
1
+ {
2
+ "name": "ESP32-S3",
3
+ "description": "Configuration for ESP32-S3 MCU extracted from PlatformIO",
4
+ "mcu": "esp32s3",
5
+ "architecture": "xtensa-esp32s3",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-Os",
10
+ "-mlongcalls",
11
+ "-ffunction-sections",
12
+ "-fdata-sections",
13
+ "-Wno-error=unused-function",
14
+ "-Wno-error=unused-variable",
15
+ "-Wno-error=unused-but-set-variable",
16
+ "-Wno-error=deprecated-declarations",
17
+ "-Wno-error=extra",
18
+ "-Wno-unused-parameter",
19
+ "-Wno-sign-compare",
20
+ "-Wno-enum-conversion",
21
+ "-gdwarf-4",
22
+ "-ggdb",
23
+ "-mdisable-hardware-atomics",
24
+ "-freorder-blocks",
25
+ "-Wwrite-strings",
26
+ "-fstack-protector",
27
+ "-fstrict-volatile-bitfields",
28
+ "-fno-jump-tables",
29
+ "-fno-tree-switch-conversion",
30
+ "-MMD"
31
+ ],
32
+ "c": [
33
+ "-fno-builtin-memcpy",
34
+ "-fno-builtin-memset",
35
+ "-fno-builtin-bzero",
36
+ "-fno-builtin-stpcpy",
37
+ "-fno-builtin-strncpy",
38
+ "-std=gnu17",
39
+ "-Wno-old-style-declaration",
40
+ "-Wno-strict-prototypes"
41
+ ],
42
+ "cxx": [
43
+ "-fno-builtin-memcpy",
44
+ "-fno-builtin-memset",
45
+ "-fno-builtin-bzero",
46
+ "-fno-builtin-stpcpy",
47
+ "-fno-builtin-strncpy",
48
+ "-std=gnu++2b",
49
+ "-fexceptions",
50
+ "-fno-rtti",
51
+ "-fuse-cxa-atexit"
52
+ ]
53
+ },
54
+
55
+ "linker_flags": [
56
+ "-mlongcalls",
57
+ "-nostartfiles",
58
+ "-Wl,--cref",
59
+ "-Wl,--defsym=IDF_TARGET_ESP32S3=0",
60
+ "-Wl,--no-warn-rwx-segments",
61
+ "-Wl,--orphan-handling=warn",
62
+ "-fno-rtti",
63
+ "-fno-lto",
64
+ "-Wl,--gc-sections",
65
+ "-Wl,--warn-common",
66
+ "-Wl,--wrap=log_printf",
67
+ "-Wl,--wrap=longjmp",
68
+ "-Wl,--undefined=FreeRTOS_openocd_params",
69
+ "-u", "nvs_sec_provider_include_impl",
70
+ "-u", "_Z5setupv",
71
+ "-u", "_Z4loopv",
72
+ "-u", "esp_app_desc",
73
+ "-u", "esp_efuse_startup_include_func",
74
+ "-u", "ld_include_highint_hdl",
75
+ "-u", "start_app",
76
+ "-u", "start_app_other_cores",
77
+ "-u", "__ubsan_include",
78
+ "-u", "esp_system_include_startup_funcs",
79
+ "-u", "__assert_func",
80
+ "-u", "esp_security_init_include_impl",
81
+ "-u", "app_main",
82
+ "-u", "esp_libc_include_heap_impl",
83
+ "-u", "esp_libc_include_reent_syscalls_impl",
84
+ "-u", "esp_libc_include_syscalls_impl",
85
+ "-u", "esp_libc_include_pthread_impl",
86
+ "-u", "esp_libc_include_assert_impl",
87
+ "-u", "esp_libc_include_getentropy_impl",
88
+ "-u", "esp_libc_include_init_funcs",
89
+ "-u", "esp_libc_init_funcs",
90
+ "-u", "pthread_include_pthread_impl",
91
+ "-u", "pthread_include_pthread_cond_var_impl",
92
+ "-u", "pthread_include_pthread_local_storage_impl",
93
+ "-u", "pthread_include_pthread_rwlock_impl",
94
+ "-u", "pthread_include_pthread_semaphore_impl",
95
+ "-u", "__cxa_guard_dummy",
96
+ "-u", "__cxx_init_dummy",
97
+ "-u", "esp_timer_init_include_func",
98
+ "-u", "uart_vfs_include_dev_init",
99
+ "-u", "include_esp_phy_override",
100
+ "-u", "usb_serial_jtag_vfs_include_dev_init",
101
+ "-u", "usb_serial_jtag_connection_monitor_include",
102
+ "-u", "esp_vfs_include_console_register",
103
+ "-u", "vfs_include_syscalls_impl",
104
+ "-u", "esp_vfs_include_nullfs_register",
105
+ "-u", "esp_system_include_coredump_init"
106
+ ],
107
+
108
+ "linker_scripts": [
109
+ "esp32s3.peripherals.ld",
110
+ "esp32s3.rom.ld",
111
+ "esp32s3.rom.api.ld",
112
+ "esp32s3.rom.bt_funcs.ld",
113
+ "esp32s3.rom.libgcc.ld",
114
+ "esp32s3.rom.wdt.ld",
115
+ "esp32s3.rom.version.ld",
116
+ "esp32s3.rom.ble_cca.ld",
117
+ "esp32s3.rom.ble_test.ld",
118
+ "esp32s3.rom.libc.ld",
119
+ "esp32s3.rom.newlib.ld",
120
+ "memory.ld",
121
+ "sections.ld"
122
+ ],
123
+
124
+ "defines": [
125
+ "ESP32_ARDUINO_LIB_BUILDER",
126
+ ["ESP_MDNS_VERSION_NUMBER", "\"1.9.0\""],
127
+ "ESP_PLATFORM",
128
+ ["IDF_VER", "\"v5.5.1-710-g8410210c9a\""],
129
+ ["MBEDTLS_CONFIG_FILE", "\"mbedtls/esp_config.h\""],
130
+ ["MD5_ENABLED", "1"],
131
+ ["OPENTHREAD_CONFIG_FILE", "\"openthread-core-esp32x-spinel-config.h\""],
132
+ ["OPENTHREAD_PROJECT_LIB_CONFIG_FILE", "\"openthread-core-esp32x-spinel-config.h\""],
133
+ ["SERIAL_FLASHER_BOOT_HOLD_TIME_MS", "50"],
134
+ ["SERIAL_FLASHER_RESET_HOLD_TIME_MS", "100"],
135
+ ["SOC_MMU_PAGE_SIZE", "CONFIG_MMU_PAGE_SIZE"],
136
+ ["SOC_XTAL_FREQ_MHZ", "CONFIG_XTAL_FREQ"],
137
+ "UNITY_INCLUDE_CONFIG_H",
138
+ "_GLIBCXX_HAVE_POSIX_SEMAPHORE",
139
+ "_GLIBCXX_USE_POSIX_SEMAPHORE",
140
+ "_GNU_SOURCE",
141
+ "_POSIX_READER_WRITER_LOCKS",
142
+ "TF_LITE_STATIC_MEMORY",
143
+ ["CHIP_CONFIG_SOFTWARE_VERSION_NUMBER", "0"],
144
+ ["CHIP_DNSSD_DEFAULT_PLATFORM", "true"],
145
+ ["CHIP_DNSSD_DEFAULT_NONE", "false"],
146
+ ["CHIP_DNSSD_DEFAULT_MINIMAL", "false"],
147
+ "ARDUINO_ARCH_ESP32",
148
+ "CHIP_HAVE_CONFIG_H",
149
+ ["ESP32", "ESP32"]
150
+ ]
151
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "NXP i.MX RT1062",
3
+ "description": "Configuration for i.MX RT1062 MCU (Teensy 4.x) - ARM Cortex-M7 @ 600MHz",
4
+ "mcu": "imxrt1062",
5
+ "architecture": "arm",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-mcpu=cortex-m7",
10
+ "-mthumb",
11
+ "-mfloat-abi=hard",
12
+ "-mfpu=fpv5-d16",
13
+ "-O2",
14
+ "-g",
15
+ "-Wall",
16
+ "-Wextra",
17
+ "-Wno-unused-parameter",
18
+ "-ffunction-sections",
19
+ "-fdata-sections",
20
+ "-MMD"
21
+ ],
22
+ "c": [
23
+ "-std=gnu11"
24
+ ],
25
+ "cxx": [
26
+ "-std=gnu++17",
27
+ "-fno-exceptions",
28
+ "-fno-rtti",
29
+ "-felide-constructors",
30
+ "-fno-threadsafe-statics"
31
+ ]
32
+ },
33
+
34
+ "linker_flags": [
35
+ "-mcpu=cortex-m7",
36
+ "-mthumb",
37
+ "-mfloat-abi=hard",
38
+ "-mfpu=fpv5-d16",
39
+ "-O2",
40
+ "-Wl,--gc-sections",
41
+ "-Wl,--print-memory-usage",
42
+ "-lm",
43
+ "-lstdc++"
44
+ ],
45
+
46
+ "linker_scripts": [],
47
+
48
+ "defines": [
49
+ "__IMXRT1062__",
50
+ "ARDUINO_ARCH_TEENSY",
51
+ ["ARDUINO", "10819"],
52
+ ["TEENSYDUINO", "159"],
53
+ "USB_SERIAL",
54
+ "LAYOUT_US_ENGLISH"
55
+ ]
56
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ "name": "RP2040",
3
+ "description": "Configuration for RP2040 MCU (Raspberry Pi Pico) extracted from arduino-pico",
4
+ "mcu": "rp2040",
5
+ "architecture": "arm-cortex-m0plus",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-march=armv6-m",
10
+ "-mcpu=cortex-m0plus",
11
+ "-mthumb",
12
+ "-Os",
13
+ "-ffunction-sections",
14
+ "-fdata-sections",
15
+ "-fno-exceptions",
16
+ "-Wno-error=unused-function",
17
+ "-Wno-error=unused-variable",
18
+ "-Wno-error=deprecated-declarations",
19
+ "-Wno-unused-parameter",
20
+ "-Wno-sign-compare",
21
+ "-g",
22
+ "-MMD"
23
+ ],
24
+ "c": [
25
+ "-std=gnu17"
26
+ ],
27
+ "cxx": [
28
+ "-std=gnu++17",
29
+ "-fno-rtti",
30
+ "-fno-exceptions",
31
+ "-fno-threadsafe-statics"
32
+ ]
33
+ },
34
+
35
+ "linker_flags": [
36
+ "-march=armv6-m",
37
+ "-mcpu=cortex-m0plus",
38
+ "-mthumb",
39
+ "-Wl,--cref",
40
+ "-Wl,--check-sections",
41
+ "-Wl,--gc-sections",
42
+ "-Wl,--unresolved-symbols=report-all",
43
+ "-Wl,--warn-common",
44
+ "-Wl,--warn-section-align",
45
+ "-Wl,--wrap=malloc",
46
+ "-Wl,--wrap=calloc",
47
+ "-Wl,--wrap=realloc",
48
+ "-Wl,--wrap=free",
49
+ "-u", "_printf_float",
50
+ "-u", "_scanf_float"
51
+ ],
52
+
53
+ "linker_scripts": [
54
+ "memmap_default.ld"
55
+ ],
56
+
57
+ "defines": [
58
+ "ARDUINO_ARCH_RP2040",
59
+ ["F_CPU", "133000000L"],
60
+ "PICO_BOARD",
61
+ "PICO_BUILD",
62
+ "PICO_NO_HARDWARE",
63
+ "PICO_ON_DEVICE",
64
+ ["TARGET_RP2040", "1"],
65
+ ["PICO_RP2040", "1"],
66
+ "CFG_TUSB_MCU=OPT_MCU_RP2040",
67
+ "LWIP_IPV4=1",
68
+ "LWIP_IPV6=0"
69
+ ]
70
+ }
@@ -0,0 +1,76 @@
1
+ {
2
+ "name": "RP2350",
3
+ "description": "Configuration for RP2350 MCU (Raspberry Pi Pico 2) extracted from arduino-pico",
4
+ "mcu": "rp2350",
5
+ "architecture": "arm-cortex-m33",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-march=armv8-m.main+fp+dsp",
10
+ "-mcpu=cortex-m33",
11
+ "-mthumb",
12
+ "-mfloat-abi=hard",
13
+ "-mfpu=fpv5-sp-d16",
14
+ "-Os",
15
+ "-ffunction-sections",
16
+ "-fdata-sections",
17
+ "-fno-exceptions",
18
+ "-Wno-error=unused-function",
19
+ "-Wno-error=unused-variable",
20
+ "-Wno-error=deprecated-declarations",
21
+ "-Wno-unused-parameter",
22
+ "-Wno-sign-compare",
23
+ "-g",
24
+ "-MMD"
25
+ ],
26
+ "c": [
27
+ "-std=gnu17"
28
+ ],
29
+ "cxx": [
30
+ "-std=gnu++17",
31
+ "-fno-rtti",
32
+ "-fno-exceptions",
33
+ "-fno-threadsafe-statics"
34
+ ]
35
+ },
36
+
37
+ "linker_flags": [
38
+ "-march=armv8-m.main+fp+dsp",
39
+ "-mcpu=cortex-m33",
40
+ "-mthumb",
41
+ "-mfloat-abi=hard",
42
+ "-mfpu=fpv5-sp-d16",
43
+ "-Wl,--cref",
44
+ "-Wl,--check-sections",
45
+ "-Wl,--gc-sections",
46
+ "-Wl,--unresolved-symbols=report-all",
47
+ "-Wl,--warn-common",
48
+ "-Wl,--warn-section-align",
49
+ "-Wl,--wrap=malloc",
50
+ "-Wl,--wrap=calloc",
51
+ "-Wl,--wrap=realloc",
52
+ "-Wl,--wrap=free",
53
+ "-u", "_printf_float",
54
+ "-u", "_scanf_float"
55
+ ],
56
+
57
+ "linker_scripts": [
58
+ "memmap_default.ld"
59
+ ],
60
+
61
+ "defines": [
62
+ "ARDUINO_ARCH_RP2040",
63
+ ["F_CPU", "150000000L"],
64
+ "PICO_BOARD",
65
+ "PICO_BUILD",
66
+ "PICO_NO_HARDWARE",
67
+ "PICO_ON_DEVICE",
68
+ ["TARGET_RP2350", "1"],
69
+ ["PICO_RP2350", "1"],
70
+ "PICO_RP2350A",
71
+ "CFG_TUSB_MCU=OPT_MCU_RP2040",
72
+ "LWIP_IPV4=1",
73
+ "LWIP_IPV6=0",
74
+ "__ARM_FEATURE_DSP=1"
75
+ ]
76
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "name": "STM32F1",
3
+ "description": "Configuration for STM32F1xx MCU family (Cortex-M3)",
4
+ "mcu": "stm32f1",
5
+ "architecture": "arm-cortex-m3",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-Os",
10
+ "-mcpu=cortex-m3",
11
+ "-mthumb",
12
+ "-ffunction-sections",
13
+ "-fdata-sections",
14
+ "-Wno-error=unused-function",
15
+ "-Wno-error=unused-variable",
16
+ "-Wno-error=deprecated-declarations",
17
+ "-Wno-unused-parameter",
18
+ "-Wno-sign-compare",
19
+ "-g",
20
+ "-gdwarf-2",
21
+ "-MMD"
22
+ ],
23
+ "c": [
24
+ "-std=gnu17",
25
+ "-Wno-old-style-declaration"
26
+ ],
27
+ "cxx": [
28
+ "-std=gnu++17",
29
+ "-fno-exceptions",
30
+ "-fno-rtti",
31
+ "-fno-threadsafe-statics"
32
+ ]
33
+ },
34
+
35
+ "linker_flags": [
36
+ "-mcpu=cortex-m3",
37
+ "-mthumb",
38
+ "-Wl,--gc-sections",
39
+ "-Wl,--cref",
40
+ "-Wl,--check-sections",
41
+ "-Wl,--unresolved-symbols=report-all",
42
+ "-Wl,--warn-common",
43
+ "--specs=nano.specs",
44
+ "--specs=nosys.specs",
45
+ "-Wl,--entry=Reset_Handler"
46
+ ],
47
+
48
+ "linker_scripts": [
49
+ "ldscript.ld"
50
+ ],
51
+
52
+ "defines": [
53
+ "STM32F1",
54
+ "ARDUINO_ARCH_STM32",
55
+ ["STM32_CORE_VERSION_MAJOR", "2"],
56
+ ["STM32_CORE_VERSION_MINOR", "12"],
57
+ "USE_HAL_DRIVER"
58
+ ]
59
+ }
@@ -0,0 +1,63 @@
1
+ {
2
+ "name": "STM32F4",
3
+ "description": "Configuration for STM32F4xx MCU family (Cortex-M4)",
4
+ "mcu": "stm32f4",
5
+ "architecture": "arm-cortex-m4",
6
+
7
+ "compiler_flags": {
8
+ "common": [
9
+ "-Os",
10
+ "-mcpu=cortex-m4",
11
+ "-mthumb",
12
+ "-mfloat-abi=hard",
13
+ "-mfpu=fpv4-sp-d16",
14
+ "-ffunction-sections",
15
+ "-fdata-sections",
16
+ "-Wno-error=unused-function",
17
+ "-Wno-error=unused-variable",
18
+ "-Wno-error=deprecated-declarations",
19
+ "-Wno-unused-parameter",
20
+ "-Wno-sign-compare",
21
+ "-g",
22
+ "-gdwarf-2",
23
+ "-MMD"
24
+ ],
25
+ "c": [
26
+ "-std=gnu17",
27
+ "-Wno-old-style-declaration"
28
+ ],
29
+ "cxx": [
30
+ "-std=gnu++17",
31
+ "-fno-exceptions",
32
+ "-fno-rtti",
33
+ "-fno-threadsafe-statics"
34
+ ]
35
+ },
36
+
37
+ "linker_flags": [
38
+ "-mcpu=cortex-m4",
39
+ "-mthumb",
40
+ "-mfloat-abi=hard",
41
+ "-mfpu=fpv4-sp-d16",
42
+ "-Wl,--gc-sections",
43
+ "-Wl,--cref",
44
+ "-Wl,--check-sections",
45
+ "-Wl,--unresolved-symbols=report-all",
46
+ "-Wl,--warn-common",
47
+ "--specs=nano.specs",
48
+ "--specs=nosys.specs",
49
+ "-Wl,--entry=Reset_Handler"
50
+ ],
51
+
52
+ "linker_scripts": [
53
+ "ldscript.ld"
54
+ ],
55
+
56
+ "defines": [
57
+ "STM32F4",
58
+ "ARDUINO_ARCH_STM32",
59
+ ["STM32_CORE_VERSION_MAJOR", "2"],
60
+ ["STM32_CORE_VERSION_MINOR", "12"],
61
+ "USE_HAL_DRIVER"
62
+ ]
63
+ }
fbuild/py.typed ADDED
File without changes