Commit graph

1093 commits

Author SHA1 Message Date
Andrew
4fdaeb6b6e cmake: Add new compiler optimization levels definitions
Rename and add multiple kconfig compiler options. New compiler options
COMPILER_OPTIMIZATION_PERF and COMPILER_OPTIMIZATION_NONE have been added.
Optimize "Debug" and "Release" options to "Default" and "Size" respectively.
This commit also does the following:

- The COMPILER_OPTIMIZATION_PERF option introduced multiple bug.
This commit fixes those bugs.
- build.yml also updated to test for the new optimization options.
2019-09-06 17:37:19 +08:00
Angus Gratton
b08dcefafb Merge branch 'bugfix/idf_py_ccache_options' into 'master'
idf.py: Add way to enable CCache by default, remove dead CCache options code

Closes IDF-948

See merge request espressif/esp-idf!5971
2019-09-03 12:56:20 +08:00
Angus Gratton
5b9576e282 Merge branch 'bugfix/hide_component_internal_targets' into 'master'
cmake: hide component internal targets

See merge request espressif/esp-idf!5866
2019-09-03 09:24:34 +08:00
Angus Gratton
002104b262 Merge branch 'bugfix/err_code_collision' into 'master'
Fix error code collisions and re-enable CI check

Closes IDF-832

See merge request espressif/esp-idf!5923
2019-09-03 08:30:40 +08:00
Angus Gratton
9a7ab28cc2 idf.py: Add environment variable to enable ccache by default 2019-09-03 10:25:28 +10:00
Angus Gratton
9134643807 idf.py: Remove dead code around ccache base dir 2019-09-02 10:56:43 +10:00
Angus Gratton
f4763a3e1a Merge branch 'bugfix/idf_py_fix_property_dict' into 'master'
idf.py: Fix PropertyDict implementation

See merge request espressif/esp-idf!5775
2019-09-02 08:51:13 +08:00
Angus Gratton
a7e8d87d3e Merge branch 'bugfix/error_out_on_uninit_git' into 'master'
cmake: fix build failure when git repo is initialized but no first commit

Closes IDFGH-1676

See merge request espressif/esp-idf!5914
2019-08-30 16:27:28 +08:00
Roland Dobai
612db28b6f Fix error code collision and CI check 2019-08-29 08:14:08 +00:00
Angus Gratton
1c7aff809d Merge branch 'bugfix/test_esp_efuse_table_on_host' into 'master'
CI: Fix path in the Efuse table test

See merge request espressif/esp-idf!5924
2019-08-29 10:15:47 +08:00
Angus Gratton
ec3510854f Merge branch 'bugfix/pass_esp_platform_to_early_expansion' into 'master'
CMake: Pass ESP_PLATFORM to early expansion

See merge request espressif/esp-idf!5932
2019-08-29 10:09:51 +08:00
Renz Christian Bagaporo
ba2ec73d59 cmake: fix build failure when git repo is initialized but no first commit
Closes https://github.com/espressif/esp-idf/issues/3920
2019-08-28 09:53:37 +08:00
Per Malmberg
31cdd38744 Make sure ESP_PLATFORM is defined when processing CMake files. 2019-08-28 09:44:06 +08:00
Renz Christian Bagaporo
826568a120 cmake: introduce BUILD_COMPONENT_ALIASES
This commit makes it so that BUILD_COMPONENT holds only the component,
and a new property BUILD_COMPONENT_ALIASES hold the full name of the
component.

This also removes erroneous check for duplicate components, as this can
never happen:

(1) if two components have the same name but different prefixes,
the internal names are still unique between them

(2)if two components happen to have the same name and same prefix, the
latter would override the former
2019-08-27 20:40:29 +08:00
Roland Dobai
474f6d9d98 Fix path in the Efuse table test 2019-08-27 11:58:45 +02:00
Renz Christian Bagaporo
88320062b8 cmake: make build components available before immediately
Previous implementation only builds list of components included in the
build during component registration.

Since the build components is known as the requirements expansion is
ongoing, update the list here instead.
2019-08-27 15:24:31 +08:00
Roland Dobai
f2a4131c24 Tools: Fix shebang for MacOs
Revert a change introduced in d296aad2a9
for intended compatibility with BSD which breaks the build on MacOs:
"clang: error: unknown argument: '-n'" for "echo".

BSD users will have to use some workaround since MacOs is a supported
OS of IDF and BSD is not.
2019-08-26 13:53:52 +02:00
Ivan Grokhotkov
aa087667df Merge branch 'bugfix/add_openocd_arm' into 'master'
Tools: Add OpenOCD for the ARM architecture

See merge request espressif/esp-idf!5878
2019-08-26 19:36:22 +08:00
Mahavir Jain
8e7c71a1a0 Merge branch 'bugfix/cmake_src_exclude_issue' into 'master'
cmake: fix issue with handling of EXCLUDE_SRCS

See merge request espressif/esp-idf!5869
2019-08-23 14:21:16 +08:00
Ivan Grokhotkov
12c9d9a564 spi_flash: remove duplicate definition of spi_flash_unlock
The other (static) definition is in flash_ops.c, all references are
also in flash_ops.c.
2019-08-23 12:37:55 +08:00
Roland Dobai
8bf1ef2bfe Tools: Add OpenOCD for the ARM architecture 2019-08-22 16:51:04 +02:00
suda-morris
5a09de8245 cbor: add tinycbor library and example 2019-08-22 17:44:29 +08:00
Mahavir Jain
1248f17749 cmake: fix issue with handling of EXCLUDE_SRCS 2019-08-22 13:17:44 +05:30
Angus Gratton
f85ba3516f Merge branch 'bugfix/fix_project_ver_issue' into 'master'
CMake: fix retrieving PROJECT_VER

See merge request espressif/esp-idf!5842
2019-08-22 10:47:06 +08:00
Renz Christian Bagaporo
72ddc940e0 cmake: hide internal targets
Use imported library, which does not create additional rules, but still
allows attaching arbitraty properties instead of custom targets. This
allows the targets to not appear in the target list of IDEs such as
CLion.
2019-08-22 09:39:24 +08:00
Angus Gratton
fe376f9f04 Merge branch 'bugfix_kconfig_deps_missing' into 'master'
kconfig: Add -MP option so .d files include empty targets

See merge request espressif/esp-idf!5820
2019-08-21 16:19:59 +08:00
Angus Gratton
5a3bad6119 Merge branch 'feature/freebsd_build_system' into 'master'
build systems: Changes to work on FreeBSD

Closes IDFGH-1657

See merge request espressif/esp-idf!5821
2019-08-21 16:18:47 +08:00
Renz Christian Bagaporo
4690152eca cmake: make default version 1 2019-08-21 12:46:38 +08:00
Renz Christian Bagaporo
3eecd43b31 cmake: fix issue with checking build process args 2019-08-21 12:20:46 +08:00
Sergei Silnov
58418c790a idf.py: Add support for deprecation of command/options 2019-08-20 16:10:25 +02:00
Angus Gratton
60eec0e969 Merge branch 'bugfix/set_mconf_idf_build_dir' into 'master'
cmake: set build dir for mconf-idf

See merge request espressif/esp-idf!5819
2019-08-20 13:10:36 +08:00
Angus Gratton
60d46f9795 Merge branch 'feat/idf_py_set_target' into 'master'
idf_py: support new command set-target

See merge request espressif/esp-idf!5785
2019-08-20 12:30:50 +08:00
Tomoyuki Sakurai
d296aad2a9 build systems: Changes to work on FreeBSD
Merges https://github.com/espressif/esp-idf/pull/2029
2019-08-19 15:33:55 +10:00
Angus Gratton
450a29e8ba Merge branch 'feature/cmake_check_mconf_version' into 'master'
cmake: check mconf-idf binary version

Closes IDF-835

See merge request espressif/esp-idf!5799
2019-08-19 13:08:33 +08:00
Angus Gratton
701ec9dae0 Merge branch 'feat/idf_monitor_event_queue_block' into 'master'
idf_monitor: fix the bug that idf_monitor not blocked when no log printed

See merge request espressif/esp-idf!5805
2019-08-19 13:06:31 +08:00
Angus Gratton
74be271f62 kconfig: Add -MP option so .d files include empty targets
Prevents make-level errors when switching IDF versions, as headers may be removed.

Similar to some mentioned here:
https://github.com/espressif/esp-idf/issues/712
2019-08-19 11:42:39 +10:00
Michael (XIAO Xufeng)
026ec388a6 idf_py: support new command set-target
Instead of using -DIDF_TARGET, this command is more intuitive:

1. Can limit the choice of targets
2. Easy to understand this is a destructive command
3. Easy to remember, and have an entry in the --help menu
2019-08-17 00:06:14 +08:00
Michael (XIAO Xufeng)
24f91617d7 idf_monitor: fix the bug that idf_monitor not blocked when no log printed
Inspired by @no1seman, @negativekelvin and @pglen on Github. (In post oder)

Resolves https://github.com/espressif/esp-idf/issues/3884
2019-08-16 17:56:51 +08:00
Renz Christian Bagaporo
ded0ac352d cmake: set build dir for mconf-idf
Fixes an issue where if idf_build_process is called in a CMake
subdirectory, menuconfig looks for the mconf-idf binary in the wrong
place (in the subdirectory build dir instead of root binary dir).
2019-08-16 17:46:50 +08:00
Angus Gratton
423fb9573b confserver: Fix NamedTemporaryFile use on Windows
Can't have the file open twice, so need to close and delete after reopening.
2019-08-16 19:24:37 +10:00
Ivan Grokhotkov
74fe282b73 cmake: check mconf-idf binary version
Print a warning if an outdated version of mconf-idf is found in
the PATH.
2019-08-15 17:25:26 +02:00
Angus Gratton
ee6b1399aa Merge branch 'feature/exclude_rom_from_example_header_files' into 'master'
exclude rom headers in examples

Closes IDF-557

See merge request espressif/esp-idf!5051
2019-08-15 10:50:01 +08:00
Sergei Silnov
5b9e38fe4e idf.py: Fix PropertyDict implementation 2019-08-13 11:35:51 +02:00
Ivan Grokhotkov
0a74227cfa bump version to 4.1 2019-08-13 10:09:52 +02: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
Angus Gratton
5e39718c22 Merge branch 'bugfix/component_set_properties' into 'master'
CMake: Set component properties

See merge request espressif/esp-idf!5738
2019-08-13 10:23:30 +08:00
Angus Gratton
b0ef3cdc9f Merge branch 'bugfix/check_include_dirs' into 'master'
CMake: Check if component include dirs are directories

See merge request espressif/esp-idf!5701
2019-08-12 12:45:11 +08:00
Renz Christian Bagaporo
87ebdaa74e cmake: set component properties 2019-08-09 20:51:20 +08:00
Angus Gratton
01f7e7cc16 Merge branch 'bugfix/confgen_sdkconfig_renames' into 'master'
tools: Support sdkconfig.rename files from outside IDF in confgen.py

Closes IDF-659

See merge request espressif/esp-idf!5551
2019-08-09 14:21:19 +08:00
Renz Christian Bagaporo
08de39c226 cmake: check include directories 2019-08-09 08:40:17 +08:00
Renz Christian Bagaporo
4df98b5489 cmake: treat unregistered components as unresolved 2019-08-06 11:14:44 +08:00
suda-morris
3753283ef3 idf_tool: fix unicode decode error
Closes https://github.com/espressif/esp-idf/issues/3841
2019-08-06 10:31:34 +08:00
Angus Gratton
ac5508efd5 Merge branch 'feature/idf_monitor_key_piority' into 'master'
idf_monitor: improve the responding of console commands

See merge request espressif/esp-idf!5585
2019-08-05 09:55:45 +08:00
Anton Maklakov
12403e39b4 tools: Fix the build examples script to run locally 2019-08-01 16:28:56 +07:00
Ivan Grokhotkov
e8191912c8 Add -Wstrict-prototypes check in CI 2019-08-01 16:28:56 +07:00
Anton Maklakov
afbaf74007 tools: Mass fixing of empty prototypes (for -Wstrict-prototypes) 2019-08-01 16:28:56 +07:00
Anton Maklakov
50629eec27 tools: Add a script to fix up empty prototypes 2019-08-01 16:28:55 +07:00
Michael (XIAO Xufeng)
a2155ff52d idf_monitor: improve the responding of console commands 2019-08-01 11:55:42 +08:00
Angus Gratton
3b42e173e9 Merge branch 'maint/update_tool_openocd-v0.10.0-esp32-20190708' into 'master'
tools: Update recommended OpenOCD version to v0.10.0-esp32-20190708

See merge request espressif/esp-idf!5565
2019-07-30 12:51:05 +08:00
Angus Gratton
8dbe1f024e Merge branch 'bugfix/pthread_fixes' into 'master'
pthread fixes

Closes IDFGH-1437

See merge request espressif/esp-idf!5646
2019-07-30 09:41:31 +08:00
Angus Gratton
477c7bb789 Merge branch 'feature/idf_tools_installer_ci' into 'master'
Build Windows tools installer in CI

Closes IDF-201

See merge request espressif/esp-idf!5583
2019-07-29 19:16:18 +08:00
Ivan Grokhotkov
b1bb90a596 Merge branch 'bugfix/partition_tables_update_note' into 'master'
global: update note in the partition tables

See merge request espressif/esp-idf!5636
2019-07-29 19:00:44 +08:00
Ivan Grokhotkov
6cff19adb6 ci: add jobs to build idf_exe, cmdlinerunner, tools installer 2019-07-29 06:13:52 +02:00
Ivan Grokhotkov
3c63f49591 examples: remove non-existent options from sdkconfig.defaults 2019-07-29 04:57:38 +02:00
Ivan Grokhotkov
e9de7b1df3 pthread: remove ESP32_ prefix from Kconfig options
pthread implementation is not chip-specific, so this prefix is not
needed.
2019-07-29 04:43:49 +02:00
Ivan Grokhotkov
3e17c69e4f tools: idf_tools.py: allow downloading for a different platform 2019-07-28 07:27:00 +02:00
Ivan Grokhotkov
26800ed71e global: update note in the partition tables
The build system automatically determines offsets of partitions from
the partition table, so no manual changes are needed. Instead, add a
note that partition offsets may need to be updated when increasing
the bootloader size.
2019-07-27 10:28:16 +02:00
Ivan Grokhotkov
842432fb65 Merge branch 'bugfix/dont_rerun_reconfig_on_tests' into 'master'
Don't re-run reconfig on tests executed with same parameters

Closes IDF-732

See merge request espressif/esp-idf!5335
2019-07-25 12:24:03 +08:00
Ivan Grokhotkov
80ad09f230 tools: installer: allow changing installation path
Installation path can now be changed in a subsequent install,
without uninstalling and logging out.
The default value of the installation path is set to
IDF_TOOLS_PATH environment variable, if it was already set by the
previous installation, or by the user.

Closes https://github.com/espressif/esp-idf/issues/3806
2019-07-24 06:44:30 +02:00
Sergei Silnov
e36a76d940 idf_ext.py: don't rerun reconfig for tests when possible 2019-07-23 16:15:33 +02:00
Ivan Grokhotkov
1271008dd8 tools: tools.json: don't require ulp-binutils and openocd on x86 Linux
Fixes https://esp32.com/viewtopic.php?f=13&t=11540
2019-07-23 06:57:36 +02:00
Ivan Grokhotkov
b70ac4deb7 tools: idf_tools.py: improve error message when no downloads found
...for the given platform.
Previously would raise AssertionError.
2019-07-23 06:55:30 +02:00
Ivan Grokhotkov
9c5284e7b5 tools: installer: verify that IDF_PATH doesn't contain spaces 2019-07-22 09:29:49 +02:00
Ivan Grokhotkov
aaf3dcbda0 tools: installer: fix quoting of IDF_TOOLS_PATH
IDF_TOOLS_PATH may contain spaces, so needs to be properly quoted.

Closes https://github.com/espressif/esp-idf/issues/3807
2019-07-22 09:29:49 +02:00
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
Alexey Gerenkov
e9faf132b4 tools: Update recommended OpenOCD version to v0.10.0-esp32-20190708 2019-07-17 13:11:24 +00:00
Roland Dobai
bd21960955 tools: Support sdkconfig.rename files from outside IDF in confgen.py 2019-07-16 20:18:19 +02:00
Angus Gratton
56afdedf7c Merge branch 'bugfix/do_not_require_new_target_link_library_signature' into 'master'
CMake: Do not force use of new target_link_libraries signature

See merge request espressif/esp-idf!5471
2019-07-16 13:36:35 +08:00
Renz Christian Bagaporo
d3e814fe19 cmake: set COMPONENT_DIR in early expansion
Gives same treatment to COMPONENT_DIR as COMPONENT_PATH in
https://gitlab.espressif.cn:6688/espressif/esp-idf/merge_requests/4557

Closes https://github.com/espressif/esp-idf/issues/3771
2019-07-12 16:22:18 +08: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
He Yin Ling
663ed11509 unit-test-app: use stripped config name in test case ID:
We could split cases of same config into multiple binaries as we have limited rom space. So we should regard those configs like `default` and `default_2` as the same config.
2019-07-11 10:01:05 +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
Ivan Grokhotkov
41b6811f45 unit-test-app: split default, release, single_core configs 2019-07-10 22:44:11 +08:00
Ivan Grokhotkov
847e00d17b Merge branch 'bugfix/idf_exe_crash' into 'master'
tools: fix idf.py.exe crash on Windows 7

Closes IDFGH-1471

See merge request espressif/esp-idf!5484
2019-07-10 16:20:13 +08:00
Ivan Grokhotkov
e6e1792946 tools: update idf_exe to 1.0.1 2019-07-09 14:15:09 +02:00
Ivan Grokhotkov
15bcb79712 idf_exe: bump version to 1.0.1 2019-07-09 14:15:09 +02:00
Ivan Grokhotkov
76dc87e9ad idf_exe: fix NULL pointer passed to WriteFile
For an unknown reason, passing NULL pointer instead of &written worked
on Windows 10 and on Windows 7 when stdout is not redirected.

Closes https://github.com/espressif/esp-idf/issues/3740
2019-07-09 14:15:09 +02:00
Ivan Grokhotkov
896d675248 idf_tools.py: add another platform string to handle Windows x86 2019-07-09 14:11:19 +02:00
Angus Gratton
222146845c docs: Make CMake build system default, mark GNU Make as legacy option
All `-cmake` suffixes are removed
Where a GNU Make option is renamed, the `-legacy` suffix is used
2019-07-09 14:32:26 +10:00
Renz Christian Bagaporo
2a5b02097b cmake: do not force use of new signature for target_link_libraries 2019-07-08 19:43:57 +08:00
Angus Gratton
47bbb107a8 build system: Use CMake-based build system as default when describing commands 2019-07-08 17:31:27 +10:00
Angus Gratton
c3cc096af0 Merge branch 'ci/cmake_examples_multichip_support' into 'master'
ci: multichip build support for examples

See merge request espressif/esp-idf!5384
2019-07-08 12:29:25 +08:00
Roland Dobai
f3d6219c46 tools: Fix indentation in confgen.py 2019-07-06 09:17:31 +02:00
Mahavir Jain
46c8497f01 Merge branch 'bugfix/prov_tool_desc_readme' into 'master'
esp_prov : Minor refactoring in argument dependent logic and other changes

See merge request espressif/esp-idf!5430
2019-07-05 17:18:32 +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
Shivani Tipnis
cc75721f9c mfg_util: Optimise by adding subparser changes w.r.t similar changes in nvs util changes 2019-07-05 01:13:27 +00:00
Shivani Tipnis
bfd1eeefa2 Add NimBLE bleprph,blecent,blehr example tests 2019-07-05 08:14:04 +08:00