Commit graph

254 commits

Author SHA1 Message Date
Ivan Grokhotkov
024176c509 ci: build IDF docker image in CI 2019-07-18 06:18:04 +00:00
Ivan Grokhotkov
dd443f61e8 tools: add Dockerfile 2019-07-18 06:18:04 +00:00
Ivan Grokhotkov
1ea68e6093 Merge branch 'feature/build_example_make_on_trigger' into 'master'
ci: don't build examples with Make in regular jobs

See merge request espressif/esp-idf!5498
2019-07-11 13:59:15 +08:00
Ivan Grokhotkov
edd7f90b77 ci: don't build examples with Make on pushes
Still build the examples with make on:
- triggered pipelines
- master, release branches, tags
- scheduled and manual (web) pipelines
2019-07-10 17:16:53 +02:00
Ivan Grokhotkov
56e3f2780d ci: add unit test job 2019-07-10 22:44:11 +08: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
He Yin Ling
a626061f3c tools: fix exception in checkout ref script:
decode bytes before searching with RegEx
2019-07-04 16:31:35 +08:00
He Yin Ling
e390dd3eab CI: use include to split large CI config file 2019-07-03 16:59:50 +08:00
He Yin Ling
6eca80a989 CI: try to use the correct branch of other projects used in CI:
1. revision defined in bot message
2. branch name (or tag name) of current IDF
3. CI_MERGE_REQUEST_TARGET_BRANCH_NAME
4. branch name parsed from `git describe`
5. default branch
2019-07-03 16:53:34 +08:00
He Yin Ling
81dd9d4e27 CI: use parallel attribute in CI config file 2019-07-03 16:53:34 +08:00
Ivan Grokhotkov
12b6da0388 tools: {install,export}.{bat,sh} tools 2019-07-01 14:51:44 +02:00
Renz Christian Bagaporo
72a5762525 cmake: make use of ccache opt-in 2019-06-29 00:22:57 +00:00
Ivan Grokhotkov
39a5fbdfee Merge branch 'bugfix/idf_py_fix_subcommand_options' into 'master'
idf.py: Fix subcommand options

Closes IDF-740

See merge request idf/esp-idf!5386
2019-06-29 00:15:13 +08:00
Ivan Grokhotkov
dcd5e9cf08 Merge branch 'bugfix/ci_fix_mirror-submodule-update' into 'master'
tools: Keep script behaviour

See merge request idf/esp-idf!5362
2019-06-28 23:57:14 +08:00
Sergei Silnov
56db269fb5 idf.py: Fix subcommand options 2019-06-28 10:07:38 +02:00
Anton Maklakov
e5de1991d4 tools: Keep script behaviour 2019-06-28 10:05:31 +07:00
Renz Christian Bagaporo
67909fe2a0 ci: test fail on build time works 2019-06-28 10:54:21 +08:00
Sergei Silnov
aecd0f9ae4 Add subcomand options that become global 2019-06-26 10:00:21 +02: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
3b3b891282 ci: Remove unused IS_PRIVATE and IS_PUBLIC environment 2019-06-25 22:24:45 +07:00
suda-morris
c5c716e9d7 esp_wifi: fix wrong path of phy_init_data
Closes https://github.com/espressif/esp-idf/issues/3482
2019-06-18 11:29:09 +08:00
David Cermak
c4f3afd4b5 ci: add clang static analysis jobs
Clang tidy 9.0.0 is to perform static analysis of IDF sources. All component sources are analysed with default sdkconfig configuration, based on examples/get-started/hello_world project (compilation commands are extracted from default build commands for this project). Configuration of static analysis is defined in tools/ci/static-analysis-rules.yml

Closes https://github.com/espressif/esp-idf/issues/145
2019-06-14 20:24:36 +02: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
b2bfa8ed95 ci: fix idf.py syntax in new build system tests 2019-06-07 22:03:15 +08:00
Angus Gratton
50d2e6b69b Merge branch 'bugfix/cmake_extra_component_dirs' into 'master'
CI: additional CMake build system tests wrt EXTRA_COMPONENT_DIRS

See merge request idf/esp-idf!5104
2019-06-07 07:49:30 +08:00
Renz Christian Bagaporo
c308d7bed6 ci: additional Cmake tests for EXTRA_COMPONENT_DIRS
Tests from
https://gitlab.espressif.cn:6688/idf/esp-idf/merge_requests/4253
2019-06-04 13:37:19 +08:00
Sergei Silnov
20156f9702 idf.py: Add support for action specific options
Changes argument parsing mechanism from argparse to a new one, that provides better support for extensions and options that are only applicable to specific subcommands,

Breaking changes:

1. All global options should go before subcommands, i.e. `idf.py build -C ~/some/project` will not work anymore, only `idf.py -C ~/some/project build` is acceptable
2. To provide multiple values to an option like `--define-cache-entry` it's necessary to repeat option many times, i.e. `idf.py -D entry1 entry2 entry3` will not work, right way is: `idf.py -D entry1 -D entry2 -D entry3`
At the moment there are 3 options like this:  `--define-cache-entry` in base list and `--test-components` and `--test-exclude-components` in the unit test extensions
3. Drops `defconfig` and `bootloader-clean` subcommands

Closes https://github.com/espressif/esp-idf/issues/3570
Closes https://github.com/espressif/esp-idf/issues/3571
2019-06-03 13:07:02 +02:00
Angus Gratton
154fc74f76 Merge branch 'bugfix/nvs_typedef_naming_pr3239' into 'master'
nvs: Append _t to nvs_handle & nvs_open_mode types

Closes IDFGH-891

See merge request idf/esp-idf!4783
2019-05-29 08:14:00 +08:00
Angus Gratton
550b1897c8 Merge branch 'feature/idf_tools_dir_2' into 'master'
IDF tools metadata file and IDF_TOOLS_PATH support

See merge request idf/esp-idf!4411
2019-05-28 13:39:47 +08:00
Angus Gratton
801f5d6e82 Merge branch 'bugfix/more_cmake_fixes' into 'master'
More CMake fixes

See merge request idf/esp-idf!5060
2019-05-27 15:48:25 +08:00
Angus Gratton
b2e54a9cc6 ci: Add IDF_DEPRECATED macro for things we only deprecate in our CI passes 2019-05-27 17:43:38 +10: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
Renz Christian Bagaporo
f125a9aaf4 cmake: restore creation of kconfig_menus.json 2019-05-23 18:39:31 +08:00
Roland Dobai
a52451258e Fix cmake confserver target 2019-05-23 08:29:05 +02:00
Roland Dobai
0ae53691ba Rename Kconfig options (components/esp32) 2019-05-21 09:09:01 +02: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
1cf6964386 ci: check that custom bootloader overrides original 2019-05-17 15:17:54 +08:00
Renz Christian Bagaporo
477fa49fc0 examples: update idf_as_lib example to use new api 2019-05-14 18:01:14 +08:00
Renz Christian Bagaporo
d214bb912f examples: update with build system changes 2019-05-14 18:01:14 +08:00
Renz Christian Bagaporo
afe57d6ff4 ci: check that build uses ccache when present 2019-05-07 12:00:41 +08:00
Ivan Grokhotkov
ca6cff7637 Merge branch 'bugfix/fix_build_cmake_example_failing' into 'master'
Fix false positive errors with CMake example builds

See merge request idf/esp-idf!4608
2019-04-26 18:20:53 +08:00
Roland Dobai
23ee93ea76 Rename deprecated Kconfig options in a backward compatible way 2019-04-24 12:53:02 +02:00
Ivan Grokhotkov
b3a235945e ci: don’t look for project CMakeLists in common_components 2019-04-15 03:32:05 +00:00
Mahavir Jain
1cfa09d4e8 aws_iot: moving AWS IoT to independent repository
Like other cloud frameworks, AWS IoT will also be supported through
independent repository, https://github.com/espressif/esp-aws-iot
2019-04-12 05:36:05 +00:00
Angus Gratton
5136b76798 Merge branch 'feature/micro-ecc-only-in-bootloader' into 'master'
Use micro_ecc library only in bootloader

See merge request idf/esp-idf!4082
2019-04-04 14:26:48 +08:00
morris
f5b03c9ea3 misc adjustment of esp32 component 2019-04-03 19:57:46 +08:00
Ivan Grokhotkov
43d3e75125 Merge branch 'feature/derive_esp_wifi_from_esp32' into 'master'
derive esp_wifi from esp32 component

See merge request idf/esp-idf!4602
2019-04-02 10:13:15 +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
Ivan Grokhotkov
d52ecb71d6 Merge branch 'feature/spiffs_image_generator' into 'master'
SPIFFS Image Generator

See merge request idf/esp-idf!4156
2019-04-01 20:08:40 +08:00
morris
79bb5de426 derive esp_wifi from esp32 component 2019-04-01 20:04:52 +08:00
Mahavir Jain
fcff80ecf8 fix cmake build for bootloader 2019-04-01 15:47:01 +05:30
morris
dbdb299bb1 create xtensa component
1. move xtensa specific files out of esp32 component
2. merge xtensa-debug-module component into xtensa
2019-03-27 20:24:28 +08:00
Renz Christian Bagaporo
8ba10bf3dc spiffs: Implement spiffs image generation 2019-03-25 12:51:52 +08:00
Renz Christian Bagaporo
3a4354c770 ci: fix cmake example build fail 2019-03-24 16:51:48 +08:00
Ivan Grokhotkov
24bd5f3267 ci: add mirror for tinydtls submodule 2019-03-22 14:27:08 +08:00
Ivan Grokhotkov
940a1f6e79 Merge branch 'feature/separate_rom_from_esp32' into 'master'
separate rom from esp32 component to esp_rom

Closes IDF-542

See merge request idf/esp-idf!4500
2019-03-21 22:10:45 +08:00
morris
c159984264 separate rom from esp32 component to esp_rom
1. separate rom include files and linkscript to esp_rom
2. modefiy "include rom/xxx.h" to "include esp32/rom/xxx.h"
3. Forward compatible
4. update mqtt
2019-03-21 18:51:45 +08:00
Shivani Tipnis
60b5cdde20 nvs_util: Fix to support write of multiple singlepage big blob data
Closes https://github.com/espressif/esp-idf/issues/3011
2019-03-20 08:15:36 +00:00
Ivan Grokhotkov
416b756ea4 Merge branch 'bugfix/name_conflict_esp32_project_ld' into 'master'
esp32: Rename esp32.common.ld to esp32.project.ld to avoid build errors when downgrading

See merge request idf/esp-idf!4484
2019-03-15 11:42:20 +08:00
Angus Gratton
a79c5b8271 esp32: Rename esp32.common.ld to esp32.project.ld to avoid build errors when downgrading
Linker script generator produces build/esp32/esp32.common.ld from
components/esp32/ld/esp32.common.ld.in

This works fine until IDF is downgraded to V3.1 which uses components/esp32/ld/esp32.common.ld and
doesn't track build/esp32/esp32.common.ld at all.

At this point, the linker runs in the build/esp32 directory and "-T esp32.common.ld" picks up the
linker script generated .ld file, which causes mis-builds.

As reported on forums: https://esp32.com/viewtopic.php?f=13&t=9684&p=40105
2019-03-14 09:59:31 +11:00
KonstantinKondrashov
126d6b2de2 tools/test_build_system: Add tests with long IDF_VER 2019-03-13 20:43:33 +08:00
Renz Christian Bagaporo
5fb1c1ad3e ci: test full build never runs '/usr/bin/env python' or similar 2019-03-12 17:26:54 +08:00
Ivan Grokhotkov
5f3bd38d3d Merge branch 'bugfix/cmakeSpaceProcessForCOMPONENT_SRCS' into 'master'
add spaces2list for COMPONENT_SRCS

See merge request idf/esp-idf!4427
2019-03-07 15:11:51 +08:00
morris
9297b07a97 cmake: add spaces2list for COMPONENT_SRCS
According to ESP-IDF Cmake build system document, COMPONENT_SRCS should support using spaces to sperate source files.

Closes https://github.com/espressif/esp-idf/issues/3130
2019-03-06 20:55:38 +08:00
Anton Maklakov
88ec05cba2 ci: Fix the parsing of submodule paths 2019-03-06 19:37:34 +08:00
Konstantin Kondrashov
91676b8620 build_system: Add support efuse 2019-02-28 07:31:29 +00:00
Angus Gratton
da390618c2 cmake: Fix psram workaround compiler flag application
Previously, this compiler flag was not being applied
regardless of CONFIG_SPIRAM_CACHE_WORKAROUND setting.

Explanation: add_compile_options() only applies to
source files added after the function is run, or in
subdirectories added after the function is run. In
this case, no new source files were being added after
this function was run.
2019-02-26 04:07:51 +00:00
Ivan Grokhotkov
1aa8e8d38e Merge branch 'bugfix/make_extra_component_dirs' into 'master'
make: fix issues related to EXTRA_COMPONENT_DIRS

See merge request idf/esp-idf!4253
2019-02-22 16:00:31 +08:00
Renz Christian Bagaporo
24284b3afd ldgen: remove resolution of template includes 2019-02-22 08:25:56 +08:00
Angus Gratton
1867da48af Merge branch 'bugfix/cmake_unit_test_fail' into 'master'
Use flasher_args.json for flashing CMake CI unit test

See merge request idf/esp-idf!4225
2019-02-15 08:55:14 +08:00
Renz Christian Bagaporo
50e860fe8c ci: test relink on template included file change 2019-02-14 18:58:48 +08:00
Renz Christian Bagaporo
022a1da4e9 ldgen: create python script to find linker script includes 2019-02-14 18:58:48 +08:00
Renz Christian Bagaporo
bb552dd19c ci: use flasher_args.json for cmake ci run 2019-02-14 08:33:46 +00:00
Ivan Grokhotkov
7df598a062 make: fix issues related to EXTRA_COMPONENT_DIRS
1. When one of the COMPONENT_DIRS points to a component directory
(i.e. a directory containing component.mk, not a directory of multiple
components), and there is a subdirectory in it which also contains
a component, the subdirectory was mistakenly added to the list of
components and compiled.

For example:

    main/
        component.mk
        main.c
        test/
            component.mk
            test_main.c

Would compile test_main.c and link libtest.a.

2. When one of the COMPONENT_DIRS points to a component directory, and
the parent directory contained a directory with the same name as
another component, that directory would be mistakenly added to the
COMPONENT_PATHS.

For example:

    esp/
        esp-idf/
        esp32/
            (random stuff)
        mycomponent/
            component.mk
            mycomponent.c
        myproject/
            main/
            Makefile

and Makefile sets EXTRA_COMPONENT_DIRS=$(realpath ../mycomponent),
then "esp32" directory which is at the same level as mycomponent
was added to COMPONENT_PATHS.

3. If EXTRA_COMPONENT_DIRS pointed to a directory with a list of
components, and one of the subdirectories was not a component, but
had the same name as another component, than that directory would be
mistakenly added to COMPONENT_PATHS instead of the real esp32
component directory.

For example:

    my_components/
        my_component/
            component.mk
            my_component.c
        esp32/
            (some random stuff)

and EXTRA_COMPONENT_DIRS would point to my_components/, then "esp32"
directory would be added to COMPONENT_PATHS instead of the real esp32
component directory.
2019-02-13 16:34:50 +08:00
Ivan Grokhotkov
58b5394266 Merge branch 'bugfix/git_describe_always_for_cmake' into 'master'
tools: Add --always option to git describe for Cmake

See merge request idf/esp-idf!4107
2019-01-30 17:48:11 +08:00
Angus Gratton
392e820c5e ci: Remove ALLOW_TO_SYNC_FROM_PUBLIC from esptool mirror repo 2019-01-29 15:06:11 +11:00
KonstantinKondrashov
3d1e064e1a tools: Add unit tests 2019-01-24 12:13:38 +08:00
Angus Gratton
58acac883d Merge branch 'bugfix/regenerate_sdkconfig_fails' into 'master'
Fix issues with regenerating sdkconfig on modification

Closes #58

See merge request idf/esp-idf!4115
2019-01-24 11:56:52 +08:00
Sagar Bijwe
05220d9cda CMake: Make IDF_PATH available to Kconfiglib when not explicitly set.
When IDF_PATH is not set by the user, cmake infers the same through
other means and sets it as an environment variable. However, some
sub-invocation of cmake may not see this variable as it is not set
in the parent. This change adds a custom command for exporting IDF_PATH
just before invoking ldgen so that IDF_PATH can be used in Kconfig
without any errors.
2019-01-21 17:02:31 +05:30
KonstantinKondrashov
bf925869fe tool: Add unit test for Kconfig gen 2019-01-16 08:16:09 +08:00
Ivan Grokhotkov
1ad8b96fed Merge branch 'bugfix/mqtt_tests_local_broker' into 'master'
MQTT tests: connect to local broker when running in CI to make the tests more reliable

See merge request idf/esp-idf!3926
2019-01-14 16:29:43 +08:00
David Cermak
b13a536041 mqtt tests: connect to local broker when running in CI to make the tests more reliable 2019-01-11 15:30:15 +01:00
Roland Dobai
00eefe0ef3 Check & correct Kconfig files 2019-01-11 13:05:55 +01:00
Ivan Grokhotkov
88dc626fd7 Merge branch 'feature/example_defconfig_ci' into 'master'
ci, examples: use sdkconfig.ci as an extra defaults file, if present

See merge request idf/esp-idf!3934
2018-12-21 12:14:57 +08:00
Angus Gratton
78487123bf Merge branch 'feature/cut_len_for_header_struct' into 'master'
build: Add trimming PROJECT_VER and PROJECT_NAME vars

See merge request idf/esp-idf!3927
2018-12-21 07:45:22 +08:00
Roland Dobai
0ad452e7b7 ci: Multi-device tests cannot run under Python 3 2018-12-20 12:44:33 +01:00
Roland Dobai
bfa9610f58 tools: Fix the Python coding style 2018-12-19 11:56:24 +01:00
Renz Christian Bagaporo
911d2352ac ci: detect command not found build errors 2018-12-17 14:04:49 +08:00
Renz Christian Bagaporo
5511541d20 ci: fix build test with IDF_PATH unset on Windows 2018-12-13 18:20:51 +08:00
Konstantin Kondrashov
c0f5e58bdc build: Add trimming PROJECT_VER and PROJECT_NAME vars 2018-12-11 11:23:53 +08: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
Anton Maklakov
0652a4b714 ci: Use more pedantic checking for examples and ut 2018-12-10 12:34:16 +08:00