Commit Graph

175 Commits

Author SHA1 Message Date
Roland Dobai
e89fc00e5b CI: Don't build with "make" because the support is removed in v5.0 2021-11-02 13:13:31 +01:00
Fu Hanxi
9919b75ec1 build: add CONFIG_APP_REPRODUCIBLE_BUILD menuconfig option to produce reproducible binaries 2021-10-26 10:43:15 +08:00
Jan Brudný
798a174686 Add copyright check to pre-commit-config 2021-09-20 17:50:55 +08:00
SalimTerryLi
874a720286
soc/ll: workaround compiler bug that generate 8/16 bits inst instead of 32 bits one
update all struct headers to be more "standardized":

- bit fields are properly wrapped with struct
- bitwidth sum should be 32 within same struct, so that it's correctly padded with reserved bits
- bit field should be uint32_t
- typedef volatile struct xxx{} yyy;: xxx must exists. refer: https://github.com/espressif/esp-idf/pull/3199

added helper macros to force peripheral registers being accessed in 32 bitwidth

added a check script into ci
2021-08-30 13:50:58 +08:00
Zim Kalinowski
f65c8249af Merge branch 'feature/esp_docs' into 'master'
docs: update to use esp-docs

Closes IDF-3105

See merge request espressif/esp-idf!13333
2021-08-24 00:56:57 +00:00
Marius Vikhammer
7411321603 docs: update to use esp-docs 2021-08-24 08:56:48 +08:00
Fu Hanxi
d66a407eb3 ci: enable clang-tidy check for more components
Use internal project clang-tidy-runner

Move sonarqube related configs to sonar-project.properties
2021-08-19 09:26:20 +08:00
Juraj Michálek
76544b053a tools: Windows Installer project moved to github.com/espressif/idf-installer 2021-07-22 12:13:38 +02:00
Fu Hanxi
12f0b55ca9 test(coredump): refactor coredump test and add esp32s2/esp32c3 tests 2021-07-22 10:17:59 +08:00
morris
4c0ddd34b4 ci: added script to check api violations 2021-06-22 11:28:01 +08:00
Ivan Grokhotkov
0bd9f6fe12 tools: spiffsgen: fix length error, add test case 2021-05-03 11:37:42 +02:00
Angus Gratton
6f6b4c3983 cmake partition_table: Check binaries fit in partition spaces at build time
- Bootloader is checked not to overlap partition table
- Apps are checked not to overlap any app partition regions

Supported for CMake build system only.

Closes https://github.com/espressif/esp-idf/pull/612
Closes https://github.com/espressif/esp-idf/issues/5043
Probable fix for https://github.com/espressif/esp-idf/issues/5456
2021-04-16 16:40:47 +10:00
Angus Gratton
9ae01e40b5 ci: Add a test app for not placing embedded file paths into binaries
Doubles as a test app that building with assertions off doesn't produce warnings.

Closes https://github.com/espressif/esp-idf/issues/6306
2021-03-03 10:31:05 +11:00
Tomas Sebestik
a22597a2d6 Add mypy check to pre-commit-config 2021-02-25 07:05:43 +00:00
Fu Hanxi
b24b06d16c ci(rules): auto generate rules.yml labels titles and rules
Also simplified the labels and ci

- Remove label regular_test, weekend_test

- Remove apply_job_filter

- check_submodule_sync: only run on protected branch
2021-02-10 14:50:06 +08:00
Fu Hanxi
8ff6461b4c ci(rules): add check_tools_file_patterns.py
this file is used to check if all files under `tools` folder are
recorded in patterns or in exclude list
2021-02-10 14:48:51 +08:00
Renz Bagaporo
0142676cbf ldgen: additional tests for generation support classes 2021-02-03 19:50:36 +08:00
Roland Dobai
548ea1bdd5 tools: Wrap flash binaries into a UF2 file for flashing through USB MSC
@mmoskal This commit adds basic support for UF2 into ESP-IDF.
2020-12-29 18:14:47 +01:00
Roland Dobai
c31dab51a0 Show defaults and ranges in generated kconfig documentation 2020-11-30 09:51:50 +00:00
Angus Gratton
8c0e5ecbea ci: Remove tools/ci/utils.sh from executable list 2020-11-11 07:36:35 +00:00
Ivan Grokhotkov
256333ca13 Merge branch 'ci/add_pre_commit_for_some_pre_check_jobs' into 'master'
CI: Add pre-commit for IDF project

See merge request espressif/esp-idf!10682
2020-11-06 20:16:27 +08:00
martin.gano
346b002d9a enable autocompletion for command idf.py 2020-11-03 23:27:58 +01:00
Fu Hanxi
bcc8f2628c CI: Add pre-commit for esp-idf project.
add tools/ci/python_packages/idf_ci.py for some util functions used in
ci and needs multi-os solution
2020-11-02 15:49:13 +08:00
Fu Hanxi
1b06cbe3ef utils.sh: add function info, warning, error. Turn retry_failed.sh into a function
includes `utils.sh` everywhere
2020-10-26 10:25:21 +08:00
Fu Hanxi
7951152f7b CI: Refactor CI rules into rules.yml.
- Add `utils.sh` for some widely used shell scripts
- Change `dependencies` into `needs` for strict dependency relationships
2020-10-26 10:23:46 +08:00
Ivan Grokhotkov
52607063cb ci: add script to check section references 2020-09-03 18:14:17 +02:00
Ivan Grokhotkov
c23a9d91d8 add code owners list 2020-09-02 18:04:27 +02:00
Fu Hanxi
aeb3c02746 Add sonarqube code static analysis for idf project 2020-08-24 14:39:15 +08:00
Anton Maklakov
b6a266e2ac Merge branch 'test/ci_add_s2_pre_build' into 'master'
ci: build s2 template app in pre_build of pre_check stage

See merge request espressif/esp-idf!9640
2020-08-11 14:13:36 +08:00
Michael (XIAO Xufeng)
ad6609a561 ci: build s2 template app in pre_build of pre_check stage
This will fail pipeline earlier if template project of S2 cannot pass
the build.

The other builds for the template app, which is not CMake or default
optimization level are put into the build_template_app of build stage.
2020-08-10 18:00:39 +08:00
Andrei Gramakov
84aa1c0cc3 usb: cdc support, streams redirection; ci, examples upd
tusb: cdc, tasks encapsulation, callbacks api, multiple interfaces
examples: added serial interface and usb console
ci: reimplemented cmake/make test in python with ignore lists

IDF-578
2020-08-06 15:26:08 +02:00
Marius Vikhammer
ba546a0d91 docs: Adds CI tests for the doc building process.
Adds test_sphinx_idf_extensions.py and test_docs.py for testing the documentation building process.
Both are run as a part of the host_test stage.

Closes IDF-1648
2020-07-28 17:48:19 +08:00
Fu Hanxi
6885421976 CI: add size info for binaries 2020-07-21 16:00:05 +08:00
Anton Maklakov
299caccc93 ci: add a helper for retrying shell command 2020-07-20 15:18:32 +07:00
Marius Vikhammer
e6ad766d68 CI: add script for checking links in example READMEs
Closes IDF-1846
2020-07-08 10:39:33 +08:00
morris
a4d0033c03 esp_rom: extract common GPIO apis into esp_rom_gpio.h 2020-07-07 11:40:19 +08:00
Ivan Grokhotkov
70aa22615c Merge branch 'feature/ut_parallel_build' into 'master'
unit_test: ut parallel build

Closes IDF-1570

See merge request espressif/esp-idf!8338
2020-05-04 15:52:59 +08:00
Fu Hanxi
01ff4f621f Add build_unit_test.sh to do find_apps and build_apps to unit_tests
modify unit-test-apps config files, use CONFIG_IDF_TARGET to set target.
if not set, then treat them as supported both targets.
2020-04-30 06:47:49 +00:00
Roland Dobai
ab9f714248 Add build system support for programming ESP32-S2 using DFU utils 2020-04-30 07:59:18 +02:00
morris
39fd234576 tool: fix install.fish 2020-03-27 18:11:01 +08:00
Alexey Gerenkov
d5cd131da4 apptrace: Adds support for multi-core traces in single file to SystemView processing scripts 2020-03-16 15:17:36 +03:00
Angus Gratton
1a2ddcb77a docs: deploy docs to production server from CI 2020-03-16 14:36:23 +11:00
Angus Gratton
b393203b27 Merge branch 'feature/x509_cert_management' into 'master'
X509 certificate management

Closes IDF-296

See merge request espressif/esp-idf!5346
2020-03-06 14:29:53 +08:00
Marius Vikhammer
947e3e94ed Add ESP certificate bundle feature
Adds the ESP certificate bundle feature that enables users to bundle a
root certificate bundle together with their application.

Default bundle includes all Mozilla root certificates

Closes IDF-296
2020-03-04 10:51:43 +08:00
Roland Dobai
c4421629c8 Tools: Add tests for confgen.py 2020-02-25 17:15:46 +01:00
Angus Gratton
3017bfb8e3 Merge branch 'feature/test_apps_v2' into 'master'
test apps (2nd attempt)

Closes IDF-641

See merge request espressif/esp-idf!7084
2020-02-07 15:23:26 +08:00
Anton Maklakov
fb3edc9c87 docs: Add features to build_docs.py: check warnings, check links, check GH links
The old check_doc_warnings.sh was deleted
2020-02-07 16:37:44 +11:00
Angus Gratton
e6211c7864 docs: add new top-level docs builder that builds docs for a single chip 2020-02-07 16:37:43 +11:00
Ivan Grokhotkov
e63764b468 CI: test-apps introduction
Introducing feature of adding arbitrary projects which could be build or
executed in the CI for the only purpose as testing

Closes IDF-641
2020-02-06 16:46:41 +00:00
Roland Dobai
5454c268f7 Docs: Omit kconfig configurations not available for the target 2020-01-30 10:30:06 +01:00
Ivan Grokhotkov
2c3e6481bb Merge branch 'feature/ci_check_cpp_guards' into 'master'
ci: add job to check for C++ guards in header files

Closes IDF-288

See merge request espressif/esp-idf!7050
2020-01-21 17:18:23 +08:00
morris
1c2cc5430e global: bring up esp32s2(not beta) 2020-01-16 17:41:31 +08:00
David Cermak
2c0bd88786 ci: public header check: add test for sdkconfig values
if the CONFIG_XXX macros used then sdkconfig.h should be included.
Also added support for multi-process execution
2020-01-10 10:11:21 +01:00
Ivan Grokhotkov
c6d6fe0316 ci: add job to check for C++ guards in header files 2020-01-10 09:44:39 +01:00
Ivan Grokhotkov
9859d8867d Merge branch 'feature/sysview_json_traces' into 'master'
Support for converting SystemView traces to JSON format

See merge request espressif/esp-idf!5674
2019-12-09 22:46:13 +08:00
He Yin Ling
cca08b3d2b CI: remove not exist file from executable-list.txt 2019-12-08 20:32:10 +08:00
Alexey Gerenkov
884717fb2f apptrace: Adds support for converting SystemView traces to JSON format 2019-12-04 18:04:07 +03:00
Ivan Grokhotkov
568f0af61a esp_wifi: check header files MD5 on host 2019-11-27 23:00:11 +08:00
Ivan Grokhotkov
7ac8f28dda tools: add build warnings checking script 2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
9d15c1fd40 tools: add {find,build}_apps.py, scripts to build multiple apps
This commit adds a pair of scripts, find_apps.py and build_apps.py.
These scripts are intended to be used in various CI jobs, building
multiple applications with different configurations and targets.

The first script, find_apps.py, is used to prepare the list of builds:
1. It finds apps for the given build system.
2. For each app, it finds configurations (sdkconfig files) which need
   to be built.
3. It filters out the apps and configurations which are not compatible
   with the given target.
4. It outputs the list of builds into stdout or a file. Currently the
   format is a list of lines, each line a JSON string. In the future,
   the tool can be updated to output YAML files.

The lists of builds can be concatenated and processed with standard
command line tools, like sed.

The second script, build_apps.py, executes the builds from the list.
It can execute a subset of builds based on --parallel-count and
--parallel-index arguments.

These two scripts are intended to replace build_examples_make,
build_examples_cmake, and the custom unit-test-app logic (in the
Makefile and idf_ext.py).

Closes IDF-641
2019-11-21 15:36:06 +01:00
Ivan Grokhotkov
8d527243d9 tools/docker: use correct branch and commit of IDF when building 2019-11-06 17:58:23 +01:00
Angus Gratton
496ede9bcd Merge branch 'master' into feature/esp32s2beta_merge 2019-10-15 14:59:27 +11:00
Ivan Grokhotkov
5830f529d8 Merge branch 'master' into feature/esp32s2beta_merge 2019-10-02 19:01:39 +02:00
Roland Dobai
15857d9cbb Handle deprecated values in sdkconfig.defaults
The issue was pointed out also in
https://github.com/espressif/esp-idf/issues/4092
2019-10-02 16:29:25 +00:00
Ivan Grokhotkov
c780abc6a6 tools: update Windows installer build script
Replace the outdated build_installer.sh with the steps used in CI,
call build_installer.sh from CI. Move the signing part into the new
script, sign_installer.sh.
2019-09-24 06:00:31 +02:00
Angus Gratton
adfc06a530 Merge branch 'master' into feature/esp32s2beta_merge 2019-09-20 10:28:37 +10:00
Sergei Silnov
1faa69a01b idf.py: Fix execution order for dependent tasks
Closes https://github.com/espressif/esp-idf/issues/3948

Add tests for idf.py
Move param check from cmake to idf_py test
Refactor task processing for idf.py
Add code comments
Fix an issue when options for dependent tasks are ignored
Add check for dupes in command list
2019-09-16 22:48:57 +08:00
Michael (XIAO Xufeng)
eac802357a ci: support build esp32s2beta UT 2019-09-04 10:53:25 +10:00
suda-morris
b1497f2187 exclude rom headers in examples
1. avoid including rom headers directly in examples
2. add common API interface for CRC calculation in esp_common component
2019-08-13 11:10:22 +08:00
Anton Maklakov
50629eec27 tools: Add a script to fix up empty prototypes 2019-08-01 16:28:55 +07:00
Ivan Grokhotkov
dd443f61e8 tools: add Dockerfile 2019-07-18 06:18:04 +00:00
Michael (XIAO Xufeng)
181fd70a9a ci: multichip build support for examples 2019-07-05 17:06:25 +08:00
Anton Maklakov
c9cf0afb6e tools: Add a script for switching to real submodules in forks 2019-07-05 11:12:06 +07:00
Ivan Grokhotkov
12b6da0388 tools: {install,export}.{bat,sh} tools 2019-07-01 14:51:44 +02:00
Anton Maklakov
e5de1991d4 tools: Keep script behaviour 2019-06-28 10:05:31 +07:00
Anton Maklakov
008ad9af47 ci: Use relative submodule URLs over IDF. Correct CI accordindly
Clean up `before_script`s

    Update `check_submodule_sync`

    Remove tools/ci/mirror* stuff
2019-06-25 22:24:45 +07:00
Anton Maklakov
a98141cc0a ci: keep executables list sorted to pass tests 2019-06-13 12:42:53 +07:00
Angus Gratton
78b7b137ad Merge branch 'feature/otatool_parttool_python_api' into 'master'
otatool, parttool Python API

See merge request idf/esp-idf!5077
2019-06-13 10:31:29 +08:00
Angus Gratton
eac356ef4a Merge branch 'feature/idf_version_header' into 'master'
esp_common: add esp_idf_version.h header to define IDF version

Closes IDF-253

See merge request idf/esp-idf!4596
2019-06-13 09:41:35 +08:00
Renz Christian Bagaporo
7f7a9272f0 examples: create example for both Python and CLI otatool interfaces 2019-06-11 13:17:14 +08:00
Renz Christian Bagaporo
5d41322412 examples: create example for both Python and CLI parttool interfaces 2019-06-11 13:17:14 +08:00
Renz Christian Bagaporo
63bd57c1d7 partition_table: implement Python API for parttool
Closes https://github.com/espressif/esp-idf/issues/1494
2019-06-11 13:17:14 +08:00
Ivan Grokhotkov
8f7e01baed tools: add metadata file and idf_tools.py 2019-05-24 17:04:23 +08:00
Ivan Grokhotkov
74247ed7f5 ci: keep executables list formatted 2019-05-24 17:04:23 +08:00
Ivan Grokhotkov
6ca07eca68 esp_common: add version definitions in code and build system
Closes https://github.com/espressif/esp-idf/issues/2482
Closes IDF-253
2019-05-20 13:14:56 +08:00
Renz Christian Bagaporo
477fa49fc0 examples: update idf_as_lib example to use new api 2019-05-14 18:01:14 +08:00
morris
f5b03c9ea3 misc adjustment of esp32 component 2019-04-03 19:57:46 +08:00
Alexey Gerenkov
3914f17d26 apptrace: Adds test for logtrace_proc script 2019-04-01 19:31:45 +03:00
Alexey Gerenkov
8c6a924cdf sys_view: Adds processing scripts for heap & log traces 2019-04-01 19:31:45 +03:00
Renz Christian Bagaporo
8ba10bf3dc spiffs: Implement spiffs image generation 2019-03-25 12:51:52 +08:00
Konstantin Kondrashov
91676b8620 build_system: Add support efuse 2019-02-28 07:31:29 +00:00
Renz Christian Bagaporo
24284b3afd ldgen: remove resolution of template includes 2019-02-22 08:25:56 +08:00
Renz Christian Bagaporo
022a1da4e9 ldgen: create python script to find linker script includes 2019-02-14 18:58:48 +08:00
Roland Dobai
00eefe0ef3 Check & correct Kconfig files 2019-01-11 13:05:55 +01:00
Ivan Grokhotkov
7ecdb1bb27 ci, examples: use sdkconfig.ci as an extra defaults file, if present
- Allows placing CI-specific settings into sdkconfig.ci file
- Allows substituting environment variables in sdkconfig.ci
2018-12-10 16:29:24 +08:00
Renz Christian Bagaporo
b926764385 examples: add otatool and parttool examples 2018-11-28 17:28:20 +08:00
Renz Christian Bagaporo
8ca6904d55 ota: implement otatool functionality 2018-11-28 15:57:20 +08:00
Renz Christian Bagaporo
f1f0bd4b1c ci: update for running cmake examples 2018-11-27 19:56:52 +08:00
Renz Bagaporo
63411fc556 tools: implement linker script generation 2018-11-16 12:42:02 +08:00
Renz Bagaporo
cc774111bf cmake: Add support for test build 2018-10-20 12:07:24 +08:00