331 Commits

Author SHA1 Message Date
Frantisek Hrbata
496e9cdff8 fix(hints): handle multiple missing headers in the output
The object files are compiled simultaneously, which can result in
several error messages about missing headers. The current regex used to
find missing headers in the compiler's output employs a greedy search,
potentially capturing multiple error messages from different compilation
units. This can cause bug reports where the original component cannot be
identified. Strengthen the regex to ensure it only processes the first
reported error.

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-11-20 18:41:55 +08:00
Alexey Lapshin
2a6e08431b Merge branch 'feature/move-gdb-options-to_project_description_json' into 'master'
feat(debugging): move gdbinit generation to CMake

Closes IDF-11489

See merge request espressif/esp-idf!34779
2024-11-20 14:30:40 +08:00
Alexey Lapshin
48a49c8154 feat(debugging): move gdbinit generation to CMake
This feature is useful for 3rd-party software to run GDB with predefined
options that described in project_description.json file

allow to pass custom options to "idf.py gdb":

  --gdb-commands: command line arguments for gdb. (without changes)
  -ex: pass command to gdb.
  -x: pass gdbinit file to gdb. Alias for old --gdbinit command
2024-11-19 16:41:38 +07:00
Peter Dragun
6495a8318d Merge branch 'monitor_multi_elf' into 'master'
feat(monitor): Add support for decoding output based on multiple ELF files

Closes IDF-11026

See merge request espressif/esp-idf!34858
2024-11-19 17:18:35 +08:00
Tomas Rezucha
66596b7f59 feat(hints/usb): Add a hint about too small control transfer size 2024-11-18 21:03:30 +08:00
Peter Dragun
28dcb9a889 feat(monitor): Add support for decoding output based on multiple ELF files 2024-11-18 12:35:45 +01:00
gaoxu
64bbb53b8f feat(esp32h21): introduce target esp32h21(stage 1) 2024-11-12 15:42:27 +08:00
Aditya Patwardhan
6930dff98d Merge branch 'feature/add_option_to_provide_flash_file_for_qemu' into 'master'
feat(tools): Added option to specify flash image in "idf.py qemu"

See merge request espressif/esp-idf!34031
2024-10-24 02:22:43 +08:00
Roland Dobai
4460d9fb1b fix(tools): Print message about GDBGUI being not supported with Python 3.13 2024-10-22 14:22:18 +02:00
Aditya Patwardhan
a58a07ecfe feat(tools): Added option to specify flash image in "idf.py qemu" 2024-10-21 18:48:02 +08:00
Marius Vikhammer
8e511ffb4e fix(hints): added missing seperator between hints 2024-10-17 17:04:55 +08:00
Marius Vikhammer
bb8fa9300f Merge branch 'change/rename_va_narg' into 'master'
fix(system): rename __VA_NARG__ macro

Closes IDF-11367

See merge request espressif/esp-idf!34068
2024-10-17 08:57:44 +08:00
Marius Vikhammer
64e0fc7a5a fix(system): rename __VA_NARG__ macro
__VA_NARG__ is copied from a forum post and is a pretty common implementation
with a high chance of causing naming collision

Added ESP_ namespace to avoid this.
2024-10-15 09:41:00 +08:00
Roland Dobai
0a354e09ef Tools: Add new ROM binary release including for ESP32-C5 2024-10-14 14:32:35 +08:00
Martin Vychodil
f659405ee0 Merge branch 'feat/monitor_auto_color' into 'master'
feat(tools): Add auto color to monitor and disable colors from chip logs

Closes IDF-362 and DOC-9110

See merge request espressif/esp-idf!33623
2024-10-11 01:04:26 +08:00
Alexey Lapshin
9d32a31657 feat(tools): add binary size exceeded hint 2024-10-07 19:00:04 +07:00
Peter Dragun
2c458f3af1 feat(tools): Add auto color to monitor and disable colors from chip logs
ANSI color codes are handled on the host side instead of the chip side. This
will result in shorter log messages transmitted over serial.
2024-10-01 11:46:20 +02:00
Radim Karniš
4a04a9e95c feat(idf_py): Allow tracing interactions during flashing with --trace 2024-09-26 11:27:04 +02:00
Konstantin Kondrashov
dcd433e62c Merge branch 'bugfix/werror_hint' into 'master'
fix(tools): Fix a regular expression in hints.yml for Werror=

See merge request espressif/esp-idf!33625
2024-09-19 01:30:27 +08:00
Konstantin Kondrashov
d1a00f5808 fix(tools): Fix a regular expression in hints.yml for Werror= 2024-09-18 16:33:47 +03:00
Alexey Gerenkov
5c43055e3e Merge branch 'esp32c61_jtag_doc_update' into 'master'
docs(jtag): update esp32c61 jtag debugging guide

Closes IDF-10168

See merge request espressif/esp-idf!33546
2024-09-18 19:36:23 +08:00
Erhan Kurubas
6ade64eb05 docs(jtag): update esp32c61 jtag debugging guide 2024-09-18 10:44:41 +03:00
Marek Fiala
6ec1e9107f feat(tools): Move sample_project from examples to tools
Extended example readme.md by further development options.
2024-09-16 09:12:50 +02:00
Alexey Lapshin
c605620073 Merge branch 'fix/keep-got-sections-for-riscv' into 'master'
feat(esp_system): drop .got* sections and add hint

See merge request espressif/esp-idf!32969
2024-09-06 19:21:06 +08:00
Roland Dobai
17fed13a27 Merge branch 'distutils' into 'master'
fix(tools): remove distutils to support python 3.12

Closes IDFGH-13510

See merge request espressif/esp-idf!33260
2024-09-06 14:23:04 +08:00
Alexey Lapshin
73987108cd feat(esp_system): drop .got* sections and add hint
Closes https://github.com/espressif/esp-idf/issues/14296
2024-09-05 15:47:01 +07:00
Guilhem Saurel
727c6a82ea fix(tools): python3.12 support
remove distutils use
2024-09-04 18:00:56 +02:00
laokaiyao
462698f2de change(i2s): add warning for inaccurate sample rate 2024-08-29 19:03:19 +08:00
harshal.patil
e5f22521da
docs(secure_boot_v2): Mention idf.py and openssl commands to generate and verify signatures
- Adds support for verify_signature command in idf.py

Closes https://github.com/espressif/esptool/issues/942
2024-08-27 15:44:05 +05:30
Ivan Grokhotkov
0773caf283 Merge branch 'feature/idf_py_efuse_qemu' into 'master'
feat(idf.py): support efuse-related commands in QEMU

Closes QEMU-193

See merge request espressif/esp-idf!29809
2024-08-21 16:13:54 +08:00
Ivan Grokhotkov
7b228ce8ab
feat(idf.py): allow running idf.py efuse-* commands with QEMU 2024-08-15 16:57:08 +02:00
Ivan Grokhotkov
c521fcb6fd
fix(cmake): report correct error on unknown component name
Previously the error message was

CMake Error at /home/user/esp-idf/tools/cmake/build.cmake:296 (__component_get_property):
  __component_get_property Function invoked with incorrect arguments for
  function named: __component_get_property
Call Stack (most recent call first):
  /home/user/esp-idf/tools/cmake/build.cmake:341 (__build_resolve_and_add_req)
  /home/user/esp-idf/tools/cmake/build.cmake:638 (__build_expand_requirements)
  /home/user/esp-idf/tools/cmake/project.cmake:710 (idf_build_process)
  CMakeLists.txt:6 (project)

Now it will be:

CMake Error at /home/user/esp-idf/tools/cmake/build.cmake:298 (message):
  Failed to resolve component 'whatever' required by component 'main'.
Call Stack (most recent call first):
  /home/user/esp-idf/tools/cmake/build.cmake:345 (__build_resolve_and_add_req)
  /home/user/esp-idf/tools/cmake/build.cmake:642 (__build_expand_requirements)
  /home/user/esp-idf/tools/cmake/project.cmake:710 (idf_build_process)
  CMakeLists.txt:6 (project)

Also improved the hint to show the component name in quotes.
2024-08-12 17:54:44 +02:00
Marius Vikhammer
837f2cd48a fix(tools): fixed spelling mistakes in idf.py hints 2024-08-05 15:44:48 +08:00
Radim Karniš
ed9b2d1fd6 change(port_detection): Filter out BT and WLAN debug serial ports on MacOS
Closes https://github.com/espressif/esp-idf/issues/14058
2024-07-04 20:40:10 +08:00
Jan Beran
832c3f265a fix: Generate secure keys in project dir instead of build dir 2024-06-28 12:36:49 +02:00
Roland Dobai
53d3f2f594 Merge branch 'feat/wrapper_tests' into 'master'
feat: Add unit tests for new wrapper commands

Closes IDF-10224

See merge request espressif/esp-idf!31525
2024-06-26 16:06:01 +08:00
Peter Dragun
2662a5125c fix(tools/idf_monitor): exit with error if monitor is run with --no-reset and without --port
Closes https://github.com/espressif/esp-idf/issues/14040
2024-06-24 13:47:40 +02:00
Jan Beran
b286105d5f feat: Add unit tests for new wrapper commands 2024-06-24 10:56:10 +02:00
Marc Finet
9456c157ff feat(build): Add config to disable warn be considered as errors
The -Werror=all activates error for all warnings in -Wall, however, it
does not activate error for other default warnings, such as:
- int-conversion (pointer from integer w/o a cast)
- incompatible-pointer-types
- discarded-qualifiers

Which are IMO even more important that -Wall.

This commit fixes that by activating error for all warnings (i.e. from
-Wall and default ones) and removing those from -Wextra, as the culprit
commit seemed to address.

Fixes: 60f29236f6 "Build system: Raise warning level" (2016-11-16)

In order to avoid long analysis during esp-idf upgrade, provide a way to
restore the previous -Werror=all behavior that consider only warnings
from -Wall (and not default ones).

Also add a hint to use the Kconfig option on compilation error, but warn
that fixing the code is the preferred way.

Merges https://github.com/espressif/esp-idf/pull/11239

Suggested-By: Ivan Grokhotkov <ivan@espressif.com>
2024-06-20 14:43:26 +08:00
Ivan Grokhotkov
f95caa751b Merge branch 'feature/update-qemu-to-esp_develop_9.0.0_20240606' into 'master'
feat(tools): update qemu version to esp_develop_9.0.0_20240606

See merge request espressif/esp-idf!31375
2024-06-14 20:41:52 +08:00
Ivan Grokhotkov
6ddf31bbdc
feat(tools): enable idf.py qemu integration for ESP32-S3 2024-06-12 10:50:13 +02:00
Jakub Kocka
23ba79d5c7 fix(tools): Avoid crashing when Git is used to acquire IDF version
Closes https://github.com/espressif/esp-idf/issues/13345
2024-06-11 08:13:25 +02:00
Jan Beran
950428c2f4 feat(tools): Add often used espefuse subcommands to idf.py 2024-06-07 16:23:17 +02:00
Roland Dobai
7b7f73ba2a Merge branch 'feat/add_espsecure_subcommands' into 'master'
feat: Add espsecure subcommands into idf.py

See merge request espressif/esp-idf!29424
2024-05-31 18:29:55 +08:00
Frantisek Hrbata
fbe8bf89ee fix: properly resolve component dependencies
There is currently a bug in the __build_resolve_and_add_req function in
tools/cmake/build.cmake where the check for registered component
requirements is incorrectly applied to the component itself rather than
its dependencies. This issue likely originated from a typo, using
component_target instead of _component_target. To prevent further
confusion, _component_target has been renamed to _req_target.

Fixing this revealed multiple incorrect dependencies for the Linux
target, which have now been resolved by explicitly specifying the
dependencies for the Linux target.

Closes https://github.com/espressif/esp-idf/issues/13447

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-05-30 22:01:55 +08:00
Frantisek Hrbata
6f41dee0cd feat: add diff option support to idf.py size commands
This adds a possibility to specify --diff option to idf.py size,
size-components and size-files commands. This can be map file directly,
project directory or build directory.

Usage example:
idf.py size-components --diff ../hello_world2/build/hello_world.map
idf.py size-components --diff ../hello_world2/build
idf.py size-components --diff ../hello_world2

Signed-off-by: Frantisek Hrbata <frantisek.hrbata@espressif.com>
2024-05-24 15:19:37 +08:00
Roland Dobai
06b4b97326 fix(tools): Use GDGBUI arguments based on its version
Closes https://github.com/espressif/esp-idf/issues/13665
2024-05-23 07:33:11 +02:00
Jan Beran
981062d54f feat(tools): add often used espsecure subcommands to idf.py 2024-05-20 15:13:35 +02:00
Alexey Lapshin
2b36636f6f fix(system): print warning if stray section is found while linking 2024-05-17 13:37:42 +04:00
Erhan Kurubas
810adf2dcc change(gdbinit): set remote timeout for the gdb connection 2024-05-06 22:06:18 +02:00