Commit Graph

4214 Commits

Author SHA1 Message Date
Roland Dobai
b4b9d993db Merge branch 'feature/build_color_output' into 'master'
build system, tools: enable compiler color diagnostics by default, update CMake to 3.24.0

See merge request espressif/esp-idf!19864
2022-09-01 02:35:07 +08:00
Ivan Grokhotkov
4d9018e925 Merge branch 'feature/ulp_cmake_cleanups' into 'master'
ulp: CMake and python cleanups

See merge request espressif/esp-idf!19817
2022-08-31 17:59:05 +08:00
wuzhenghui
c31aaeda2a ll: add reset interface to rtc_cntl_ll 2022-08-31 01:59:36 +00:00
Ivan Grokhotkov
1ba3d58b78
tools: cmake: upgrade from 3.23.1 to 3.24.0 2022-08-30 16:38:14 +02:00
Ivan Grokhotkov
13881a3832
idf.py: ensure that build log is always sanitized from color sequences
The actual output from the build tool (CMake/Ninja) may or may not
contain color escape codes, depending on various factors. The output
written to the log file should never include color escape codes,
though. This is because color escape codes in files are usually not
rendered as "color" in editors, and complicate reading. Also escape
codes would break the regular expressions used to display hints for
compilation errors.
2022-08-30 16:38:14 +02:00
Ivan Grokhotkov
d04b554065
tools: idf.py: enable CLICOLOR_FORCE for interactive builds
If stdout is a TTY (meaning that the output is not redirected), tell
the build tool (GNU Make or Ninja) to enable colorized output.

GNU Make and Ninja also check if their stdout is redirected and
strip color escape sequences in that case. CLICOLOR_FORCE environment
variable overrides this behavior.

With this change, if the compiler was launched with the
-fcolor-diagnostics flag and idf.py output is not redirected, the
final output in the terminal will be colorized.

(-fcolor-diagnostics is handled at CMake level by the previous commit)
2022-08-30 16:38:13 +02:00
Ivan Grokhotkov
56e6263350
cmake: enable CMAKE_COLOR_DIAGNOSTICS by default
Related to https://github.com/espressif/esp-idf/issues/4162

Setting this option informs CMake that it should pass
-fcolor-diagnostics flag to the compiler.

(Colorized build system output, like from GNU Make, is produced even
without this flag.)

Note that if the build is done using Ninja and the build output is
redirected (not a TTY), Ninja will still strip the escape codes from
the output. For the case of idf.py, this is handled in the next
commit.
2022-08-30 16:38:13 +02:00
Mahavir Jain
a8c8946766 Merge branch 'fix/mqtt_ssl_ds_remove_unwanted_readme_section' into 'master'
mqtt/ssl_ds: Remove unwanted readme section

See merge request espressif/esp-idf!19841
2022-08-30 22:30:22 +08:00
Roland Dobai
cb81d14892 Merge branch 'bugfix/build_color_output_windows' into 'master'
tools: idf.py: use actual sys.stdout instead of the memoized one

See merge request espressif/esp-idf!19847
2022-08-30 16:31:42 +08:00
Marius Vikhammer
dfaaefe2ce Merge branch 'bugfix/uart_sclk_freq' into 'master'
uart: fixed sclk_freq not init warning when compiling with asserts disabled

Closes IDFGH-8144

See merge request espressif/esp-idf!19792
2022-08-30 16:24:38 +08:00
Ivan Grokhotkov
b548d9345e Revert "Merge branch 'feature/build_color_output' into 'master'"
This reverts merge request !19330
2022-08-30 15:14:47 +08:00
Aditya Patwardhan
6c7fd1edc0 mqtt/ssl_ds: Remove unwanted references to configure_ds.py, Also updated
the DS documentation
2022-08-30 10:54:15 +05:30
Ivan Grokhotkov
2916bf9b6c
ulp: esp32ulp_mapgen: remove the special case for RISC-V, cleanup
There are multiple changes in this commit:

1. Unify the RISC-V and ULP-FSM code paths in esp32ulp_mapgen.py.
   It seems that these were originally introduced because `nm` output
   for the RISC-V case contained symbol sizes, while for the ULP-FSM
   no symbol sizes were reported. This makes sense, because the
   ULP-FSM object files are produced from assembly source, symbol
   sizes have to be added manually using the .size directive.
   In the case of RISC-V, the object files are built from C sources
   and the sizes are automatically added by the compiler.

   Now 'posix' output format is used for both RISC-V and ULP-FSM.

2. Move BASE_ADDR out of esp32ulp_mapgen.py. This now has to be passed
   from CMake, which should make it easier to modify if a new chip
   with a different RTC RAM base address is added.

3. Add C++ guards to the generated header file.

4. Switch from optparse to argparse for similarity with other IDF
   tools.

5. Add type annotations.
2022-08-30 02:34:28 +02:00
Ivan Grokhotkov
2c5b62f10e
tools: idf.py: use actual sys.stdout instead of the memoized one
This fixes the issue with build output not being colorized on Windows,
while the hints messages are colorized.

The issue occurred because sys.stdout and sys.stderr get overridden
by colorama.init() at runtime, but the default argument
output_stream=sys.stdout holds the reference to the"original"
sys.stdout.

colorama.init() (which, by the way, gets called via a curious chain
of imports, via idf_component_tools.manifest and tqdm package)
overrides standard streams, on Windows only. The overridden streams
contain logic to convert ANSI color codes into Windows Console API
calls to colorize the text.

Since read_and_write_stream function used the default value of
output_stream evaluated at module loading time, it was using the
original sys.stdout, not the one overridden by colorama.

One extra note is that while this does fix the coloring issue, the
solution is a bit fragile, as it relies on one of the following
(on Windows):
- colorama.init() is called (this can change if idf-component-manager
  stops importing tqdm)
- Sufficiently new version of Windows 10 is used, and ANSI color codes
  support is enabled in the Registry.
2022-08-30 01:30:32 +02:00
Fu Hanxi
4f3610f957 Merge branch 'ci/upload_elf_map_to_minio' into 'master'
ci: upload elf map file to s3 server to reduce artifacts size

Closes IDFCI-1385

See merge request espressif/esp-idf!19756
2022-08-30 01:06:11 +08:00
Roland Dobai
84acc58d3c Merge branch 'fix/disable_idf_py_moinitor_hints' into 'master'
Tools: Disable idf.py hints for IDF Monitor

Closes IDFGH-8110

See merge request espressif/esp-idf!19782
2022-08-29 22:51:55 +08:00
Roland Dobai
9d75833884 Merge branch 'contrib/github_pr_9656' into 'master'
upgrade ccache installed version to 4.6.2 (GitHub PR)

Closes IDFGH-8160 and IDFGH-6735

See merge request espressif/esp-idf!19834
2022-08-29 22:34:46 +08:00
Ivan Grokhotkov
02a19c6df5 Merge branch 'feature/build_color_output' into 'master'
build system, tools: enable compiler color diagnostics by default

Closes IDFGH-1965

See merge request espressif/esp-idf!19330
2022-08-29 20:32:42 +08:00
Ivan Grokhotkov
4f0967d44c Merge branch 'feature/update-gdb-to-11.2_20220823' into 'master'
tools: update gdb version to '11.2_20220823'

Closes IDFGH-4276 and IDF-842

See merge request espressif/esp-idf!19723
2022-08-29 19:34:40 +08:00
Ivan Grokhotkov
990681764e
tools: cmake: upgrade from 3.23.1 to 3.24.0 2022-08-29 11:15:25 +02:00
Ivan Grokhotkov
712743d777
idf.py: ensure that build log is always sanitized from color sequences
The actual output from the build tool (CMake/Ninja) may or may not
contain color escape codes, depending on various factors. The output
written to the log file should never include color escape codes,
though. This is because color escape codes in files are usually not
rendered as "color" in editors, and complicate reading. Also escape
codes would break the regular expressions used to display hints for
compilation errors.
2022-08-29 11:15:16 +02:00
Ivan Grokhotkov
12abe1f316
tools: idf.py: enable CLICOLOR_FORCE for interactive builds
If stdout is a TTY (meaning that the output is not redirected), tell
the build tool (GNU Make or Ninja) to enable colorized output.

GNU Make and Ninja also check if their stdout is redirected and
strip color escape sequences in that case. CLICOLOR_FORCE environment
variable overrides this behavior.

With this change, if the compiler was launched with the
-fcolor-diagnostics flag and idf.py output is not redirected, the
final output in the terminal will be colorized.

(-fcolor-diagnostics is handled at CMake level by the previous commit)
2022-08-29 11:15:00 +02:00
morris
d36af75642 Merge branch 'feature/add_esp32c6_rom_header_file' into 'master'
esp_rom: add esp32c6 header files

See merge request espressif/esp-idf!19796
2022-08-29 17:14:09 +08:00
Ivan Grokhotkov
41cffbb2f2
cmake: enable CMAKE_COLOR_DIAGNOSTICS by default
Related to https://github.com/espressif/esp-idf/issues/4162

Setting this option informs CMake that it should pass
-fcolor-diagnostics flag to the compiler.

(Colorized build system output, like from GNU Make, is produced even
without this flag.)

Note that if the build is done using Ninja and the build output is
redirected (not a TTY), Ninja will still strip the escape codes from
the output. For the case of idf.py, this is handled in the next
commit.
2022-08-29 11:05:15 +02:00
Fu Hanxi
2484e00a94 ci: move LDGEN_CHECK_MAPPING to configure_ci_environment.sh 2022-08-29 16:57:31 +08:00
Roland Dobai
94a2d9f16a Merge branch 'bugfix/fix_hints_templates' into 'master'
tools: fix hints templates

See merge request espressif/esp-idf!19789
2022-08-29 16:43:14 +08:00
Roland Dobai
55b7b42724 Merge branch 'bugfix/fix_CN_letters_in_monitor' into 'master'
tools: fix multi-byte character appearance in idf.py monitor

See merge request espressif/esp-idf!19566
2022-08-29 16:36:01 +08:00
morris
b82d6ce928 md5_hash: fix copyright checker 2022-08-29 15:40:37 +08:00
wuzhenghui
fbeb6195c2 esp_rom: add esp32c6 header files 2022-08-29 15:40:37 +08:00
Dominic Cerquetti
823ae5cf45
upgrade ccache installed version to 4.6.2
- primary reason: 4.6.2 fixes errors if the user's home directory contains a space
- alternative fix: the CCACHE_DIR env var can be set to something without a space in it, or set to TMP which properly escapes the home dir name
- there may be other issues with spaces in filenames on builds in other parts of ESP-IDF, see https://github.com/espressif/esp-idf/issues/8364 for more info

tested locally on windows only, use at your own risk
2022-08-27 14:28:20 -04:00
Djordje Nedic
5ee663d592 tools: Add CSV support to idf_size.py
This adds CSV support to idf_size.py and idf.py size actions and using the --format argument which accepts 'text', 'json' or 'csv' as input.

idf_size.py --json argument is deprecated but left to avoid a breaking change.

For idf.py size actions OUTPUT_JSON environment variable set at configuration time is overriden at target build time if --format is used.

Additionally, this commit refactors big parts of code, unified usage of json_dict and manually generated dictionaries for textual output and improves code quality in many parts.
2022-08-26 15:34:21 +02:00
morris
ebd3081d97 Merge branch 'bugfix/fix_rtc_gpio_hold' into 'master'
gpio: Fix missing set hold bit in rtc gpio register

Closes IDFGH-2489

See merge request espressif/esp-idf!19760
2022-08-26 18:13:14 +08:00
Omar Chebib
2f8c76abf2 Merge branch 'bugfix/rename_configs_not_set' into 'master'
Confgen: KConfig options not set in sdkconfig.defaults files can now be renamed

See merge request espressif/esp-idf!19751
2022-08-26 16:33:27 +08:00
Ondrej Kosta
9c73c00a05 Merge branch 'bugfix/iperf_py_script_upt' into 'master'
ci iperf: fixed condition for waiting to iperf server is up in DUT

Closes IDFCI-1285

See merge request espressif/esp-idf!19575
2022-08-26 16:32:49 +08:00
Marius Vikhammer
b844df8c85 uart: fixed sclk_freq not init warning when compiling with asserts disabled
Closes https://github.com/espressif/esp-idf/issues/9642
2022-08-26 11:52:46 +08:00
Omar Chebib
0030e46a96 Confgen: KConfig options not set in sdkconfig.defaults files can now be renamed 2022-08-26 03:36:28 +00:00
simon.chupin
e635492c95 tools: fix hints templates 2022-08-25 18:00:23 +02:00
Roland Dobai
352cb3fb5e Merge branch 'bugfix/idf_tools_test_timeout' into 'master'
ci: increase timeout for python packages install test

Closes IDFCI-1436

See merge request espressif/esp-idf!19775
2022-08-25 21:01:59 +08:00
Roland Dobai
ff38cb8e0d Tools: Disable idf.py hints for IDF Monitor
The feature will be re-enabled later after a proper fix for the
following Github issue.

Closes https://github.com/espressif/esp-idf/issues/9610
2022-08-25 14:53:41 +02:00
Ivan Grokhotkov
5c8db0ea7f
ci: increase timeout for python packages install test
On the build runners, the installation frequently takes around 150
seconds, which is above the current timeout. This change increases
the timeout.

Closes IDFCI-1436
2022-08-25 10:45:03 +02:00
Alexey Lapshin
244a1b5e6a tools: fix test_abort backtrace 2022-08-24 23:00:30 +04:00
Alexey Lapshin
3556536748 tools: update gdb version to '11.2_20220823'
Closes https://github.com/espressif/esp-idf/issues/6124
2022-08-24 23:00:30 +04:00
Jan Procházka
ebef6bc97e added missing call to set hold register bit
This commit fixes gpio_hold_en(pin) function for ESP32, where after wakeup from deep sleep, the pin gets reset to default state and stop holding the pin level.
2022-08-24 13:49:05 +02:00
Omar Chebib
f6ac350337 I2C: i2c_port_t type is now an enumeration
* Closes https://github.com/espressif/esp-idf/issues/9009
2022-08-24 10:51:09 +08:00
Ivan Grokhotkov
ae256e9ca2 Merge branch 'bugfix/docker_remove_libpython2.7' into 'master'
tools: Docker: remove libpython2.7

See merge request espressif/esp-idf!19703
2022-08-24 02:06:18 +08:00
simon.chupin
1cb4f8fdf4 tools: fix multi-byte character appearance in idf.py monitor 2022-08-23 13:25:38 +00:00
Ivan Grokhotkov
d5973b8b14
build system: add 'linux' component to common requirements
'linux' component provides some of the common header files, such as
'sys/queue.h' and 'sys/lock.h'. For chip targets, it is possible to
include these files without having to add any extra requirements.
With this change, the same behavior will apply for the linux target.
2022-08-22 14:50:19 +02:00
Ivan Grokhotkov
b679c95ddc
tools: Docker: remove libpython2.7
libpython2.7 was added to the container to allow running GDB built
with Python 2.7 support and distributed as part of the cross-compiler
toolchain.

Now that we have a new release of GDB which works with Python 3.x,
the GDB shipped with the cross-compiler is no longer used. Removing
libpython2.7 should reduce the image size.

This reverts commit be0372b1db.
2022-08-22 13:25:09 +02:00
Michael (XIAO Xufeng)
0a2e5a7774 Merge branch 'feat/support_esp32c2_uart' into 'master'
uart: update console docs about frequency for ESP32-C2, move frequency of clock sources out of HAL

Closes IDF-5424 and IDF-4332

See merge request espressif/esp-idf!19274
2022-08-22 14:24:26 +08:00
Darian
1de6f9662c Merge branch 'bugfix/remove_remaining_rom_time_t_dependencies' into 'master'
Newlib: Add workaround for ROM Newlib stdio functions using 32-bit time_t callpath

Closes IDFGH-7728

See merge request espressif/esp-idf!19461
2022-08-22 11:23:17 +08:00