Cao Sen Miao
e81841318f
CI: Enable ESP8684 build stage CI on master
2021-12-13 19:18:47 +08:00
Ivan Grokhotkov
71a884571c
cmake: add idf_component_optional_requires utility function
...
It can be used in component CMakeLists.txt files when adding "weak"
dependencies between component. A "weak" dependency from A to B is
similar to target_link_libraries(A PRIVATE B), but it gets added only
if B is included in the build.
Use it instead of specifying B as part of PRIV_REQUIRES when the
component can be built (even if with reduced functionality) without
component B being available.
2021-12-13 10:53:22 +01:00
Ivan Grokhotkov
ae7d1fff49
cmake: add component dependency graph generation helpers
...
These optional feature produces a graphviz file showing component
dependencies. It is useful for debugging reasons why certain
components got added to the build.
2021-12-02 15:29:00 +01:00
Omar Chebib
0baf2c43cc
Build: CMake compiler flags will be set, regardless of the cache status
...
Defining CMake variables from the command-line or from another CMake project,
such as `-DCMAKE_C_FLAGS= -DCMAKE_CXX_FLAGS=`, caused a link failure as ESP
CMake was unable to set its proper compilation flags.
Additional CMake compiler flags can now be provided by another project.
* Closes https://github.com/espressif/esp-idf/issues/7507
2021-11-29 09:48:13 +00:00
Roland Dobai
f64b3902cf
tools: Delete the old kconfig tools
...
The old kconfig tool is not used anymore. It was replaced with the
kconfiglib Python package.
2021-11-24 13:07:56 +01:00
Roland Dobai
9c1d4f5b54
Build & config: Remove the "make" build system
...
The "make" build system was deprecated in v4.0 in favor of idf.py
(cmake). The remaining support is removed in v5.0.
2021-11-10 09:53:53 +01:00
Cao Sen Miao
f6da46d798
CI: add fast_template_app and tools support
2021-11-06 17:33:44 +08:00
Cao Sen Miao
7f5c415401
ESP8684: introduce a new target esp8684
2021-11-06 17:33:44 +08:00
Roland Dobai
b1817115ce
Merge branch 'feature/improve_chip_target_detection' into 'master'
...
tools: Improve chip target detection
Closes IDF-3751
See merge request espressif/esp-idf!15691
2021-11-05 15:31:32 +00:00
simon.chupin
bca79c75d5
tools: Improve chip target detection
2021-11-03 15:36:56 +01:00
Fu Hanxi
42405604af
idf.py gdb: autoload prefix_map_gdbinit when exists in project_description.json
2021-10-26 14:20:40 +08:00
Fu Hanxi
ea1005b740
build: create BUILD_DIR/prefix_map_gdbinit when enable reproducible build
...
add project property BUILD_COMPONENT_DIRS
2021-10-26 10:55:00 +08:00
Ivan Grokhotkov
68233f58b4
version: starting v5.0.0 development
2021-10-20 22:25:38 +02:00
Marek Fiala
ff18a96f7d
tools: replace _ with - in idf.py
...
Closes https://github.com/espressif/esp-idf/issues/5126
2021-10-13 17:30:38 +08:00
Roland Dobai
e55b4ff8e6
Merge branch 'feature/esp32s3_dfu' into 'master'
...
docs, cmake: updates for ESP32-S3 DFU support
Closes IDF-3534
See merge request espressif/esp-idf!15348
2021-10-12 15:44:02 +00:00
Ivan Grokhotkov
347884aff5
docs, cmake: updates for ESP32-S3 DFU support
2021-10-08 18:24:20 +02:00
Ivan Grokhotkov
4f3cc319af
cmake: kconfig: sort results of new glob expressions
...
Similar to 2f811b79
, see that commit for the explanation.
2021-10-06 10:16:44 +02:00
Ivan Grokhotkov
4ae1b06082
cmake: kconfig: don't add empty entries to kconfigs list
2021-10-06 10:16:35 +02:00
Ivan Grokhotkov
0ad89536ce
build system: quote values in __build_write_properties
2021-10-06 10:15:10 +02:00
Ivan Grokhotkov
5a6e27b8a1
build system: quote values in __component_write_properties
2021-10-06 10:15:02 +02:00
Ivan Grokhotkov
e39d3b2160
build system: project: quote linker map file argument
2021-10-06 10:14:55 +02:00
Ivan Grokhotkov
83a7ecc7c3
build system: quote LD script search paths in target_linker_script
2021-10-06 10:14:46 +02:00
morris
0f7b90d205
cmake: don't treat the readme file as a component
2021-09-24 10:56:58 +08:00
Ivan Grokhotkov
8f0ee18931
Merge branch 'feature/clang_toolchain_compat' into 'master'
...
Build system: minimal changes for clang compatibility
See merge request espressif/esp-idf!15168
2021-09-23 08:19:09 +00:00
simon.chupin
844dd5075f
Tools: make idf_size work with overflow
...
Closes https://github.com/espressif/esp-idf/issues/6914
closes https://github.com/espressif/esp-idf/issues/4234
2021-09-16 14:12:46 +02:00
Ivan Grokhotkov
6bba3ea034
cmake: only add GCC-specific flags when building with GCC
...
There are probably more GCC-specific flags in component CMakeLists.txt
files; these are just the one being added for all the files.
2021-09-16 11:07:54 +02:00
Ivan Grokhotkov
06c0b8a5d0
cmake: don't search for toolchain files in component directory
...
This feature was added when we thought that target components might be
added out of IDF tree. That never became possible, and with recent
changes in IDF architecture it is unlikely that this feature will be
necessary any time soon. Remove it, simplifying the code.
2021-09-16 10:54:27 +02:00
Ivan Grokhotkov
14e600801e
cmake: allow selection of clang based toolchain
...
This is an experimental feature intended at the moment for ESP-IDF
developers only.
If IDF_TOOLCHAIN=clang environment variable or CMake variable is set,
use toolchain-clang-esp32xx.cmake instead of toolchain-esp32xx.cmake.
These changes aren't sufficient to actually build any IDF project with
clang; subsequent commits add a few workarounds required to do this.
Toolchain files are added for esp32 and esp32s2, which are the targets
supported in our llvm-project fork at the moment.
2021-09-16 10:54:27 +02:00
Sergei Silnov
37b791e242
Build System: Don't track dependencies.lock
2021-08-30 13:23:23 +02:00
Jakob Hasse
376559d14c
[cmake]: fixed FPGA setting during early build
2021-08-26 10:11:56 +08:00
Jakob Hasse
b3271a51af
Merge branch 'bugfix/common_components_linux' into 'master'
...
[build system]: Fixed common requirement for Linux target
Closes IDF-3638
See merge request espressif/esp-idf!14743
2021-08-17 08:48:38 +00:00
Zim Kalinowski
1c690aa5d2
Merge branch 'feature/bootloader_components_kconfig_in_menuconfig' into 'master'
...
bootloader: Kconfig files in bootloader_components is now part of menuconfig
Closes IDF-3696
See merge request espressif/esp-idf!14740
2021-08-16 06:01:50 +00:00
Jakob Hasse
7029f0537e
[build system]: Fixed common requirement for Linux
2021-08-13 16:50:29 +08:00
Jakob Hasse
dd3f43ca2d
[build system]: add ruby check before mocking
2021-08-13 14:31:44 +08:00
Omar Chebib
339454ff19
bootloader: Kconfig files in bootloader_components is now part of menuconfig
...
It is now possible to configure the options (Kconfig) of bootloader components
directly from the menuconfig
2021-08-12 10:43:00 +08:00
Jakob Hasse
e8082ed6c7
[cmake]: fix idf_component_mock requirement macro
2021-07-28 18:50:43 +08:00
Martina
1e5a2f92c3
feature/update_cmake: Update of outdated CMake version 3.16.4->3.20.3 and CCache version 3.7->4.3 in tools.json
...
Closes https://github.com/espressif/esp-idf/issues/7083
2021-07-26 21:30:59 +08:00
Fu Hanxi
69650e0c18
Merge branch 'feature/espcoredump_test_refactor' into 'master'
...
Feature: espcoredump test refactor
See merge request espressif/esp-idf!13092
2021-07-22 04:35:58 +00:00
Fu Hanxi
a6068ef259
Merge branch 'feature/pass_idf_version_to_component_manager' into 'master'
...
feat: pass idf version to component manager
See merge request espressif/esp-idf!14343
2021-07-22 04:04:19 +00:00
Ivan Grokhotkov
2f811b7975
cmake: sort lists obtained from file(GLOB)
...
CMake sorts result of file(GLOB) command since version 3.6.0:
https://gitlab.kitware.com/cmake/cmake/-/commit/edcccde7d
Since ESP-IDF sets cmake_minimum_required version to 3.5, and version
3.5.1 is used in CI, sort file lists obtained from file(GLOB)
manually.
This helps obtain reproducible order of libraries passed to the linker
and to ldgen.
2021-07-22 10:14:33 +08:00
Jakob Hasse
366ede3ffb
[cmake]: Fixed mock register function
...
* REQUIRES was missing from multi value args
2021-07-19 13:57:19 +08:00
Fu Hanxi
b26b6d7dc9
feat: set IDF_VERSION to environment variable
2021-07-16 12:01:57 +08:00
Shu Chen
75bd02bd46
esp32h2: add some more fixes and TODOs
2021-07-01 20:36:39 +08:00
Shu Chen
2b9e8fed71
esp32h2: add esp32h2 build target
...
Add esp32h2 support in the following components:
* Kconfig
* components/esptool_py
* components/riscv
* components/xtensa
* tools
2021-07-01 19:51:33 +08:00
Anton Maklakov
f01002d2fc
tools: stop building if compiler is unsupported
2021-06-28 23:36:15 +08:00
Jakob Hasse
79b0256d63
[driver]: partial mocking of driver component
...
* added mocking of spi master and gpio
* mock registering in one function in
component.cmake
2021-06-24 10:10:29 +08:00
Alex Lisitsyn
ea6710ce98
soc/hal: add tinyusb support esp32s3
...
add usb hal/soc, usb_ll files and esp32s3 target for usb
move usb_hal.h into soc common folder
soc/hal: fix soc and periph for usb
tinyusb: fix tinyusb io header
hal: usb_ll fix pull up/down config for esp32s3
soc/hal: fix peripheral addresses
2021-05-06 16:20:54 +08:00
Martin Gano
1546e970db
Merge branch 'master' into 'feature/refactor-idf-monitor'
...
# Conflicts:
# tools/ci/mypy_ignore_list.txt
2021-04-13 20:55:19 +08:00
Angus Gratton
a5faf86934
Merge branch 'bugfix/override_cmake_python' into 'master'
...
cmake: Minor Python CMake build fixes
Closes IDFGH-4454
See merge request espressif/esp-idf!12975
2021-04-13 03:39:16 +00:00
Martin Gaňo
b77addea2f
Decompose idf_monitor.py
2021-04-12 10:47:33 +02:00
Angus Gratton
5a8e9ef2bc
cmake: Improve the error message if the Python interpreter fails to run
...
RESULT_VARIABLE will return a string not a number in this case, so display it
for the user.
2021-04-01 09:51:28 +11:00
Angus Gratton
886c465120
cmake: Set IDFTOOL variable using the correct PYTHON interpreter variable
2021-04-01 09:51:26 +11:00
Angus Gratton
7a2c126054
cmake: Fix passing PYTHON path via CMake variable if using IDF as library
...
Closes https://github.com/espressif/esp-idf/issues/6285
2021-04-01 09:50:56 +11:00
Renz Bagaporo
b5c3d4f615
cmake: swap priority between EXTRA_COMPONENT_DIRS and project components
2021-03-22 19:01:33 +08:00
No One
8416e724c0
build system: fix NOTFOUND git version error
...
CMake would fail to find the git version of the IDF repo due to
not being able to parse the whitespace in the git describe command
2021-02-26 14:39:23 +08:00
Angus Gratton
0f62d0dd9b
Merge branch 'bugfix/git_describe' into 'master'
...
tools: Use git describe --match for filtering out internal names
Closes IDF-2410
See merge request espressif/esp-idf!12398
2021-02-25 07:23:38 +00:00
Renz Bagaporo
43f6c7a533
esp_common: simplify component build script
2021-02-24 12:16:37 +08:00
Roland Dobai
48488f1683
tools: Use git describe --match for filtering out internal names
2021-02-23 06:55:21 +00:00
Angus Gratton
e22de81955
Merge branch 'feature/idfpy_update_component_manager_tests' into 'master'
...
CMake - process dependencies for all components by component manager
Closes PACMAN-87
See merge request espressif/esp-idf!9357
2021-02-12 11:28:18 +08:00
Angus Gratton
c8315e0110
version: Update to v4.4-dev
2021-02-10 16:07:24 +11:00
Sergei Silnov
a5981c12c2
Move call for component manager to build.cmake
2021-02-04 15:07:23 +01:00
Angus Gratton
8dbb14b469
system: Log a warning when booting bootloader or app configured for FPGA use
...
Such a firmware may appear to work on normal chip, but not everything will function as expected.
2021-02-01 14:24:38 +11:00
Sergei Silnov
99bf2ed61d
idf.py: remove mentions of idf_project.yml and update tests
2021-01-29 23:08:47 +01:00
Angus Gratton
526f9507de
Merge branch 'bugfix/linux_host_build_clang' into 'master'
...
build system: don't add GCC-specific options when building with clang
See merge request espressif/esp-idf!12066
2021-01-27 15:17:19 +08:00
Fu Hanxi
0146f258d7
style: format python files with isort and double-quote-string-fixer
2021-01-26 10:49:01 +08:00
Ivan Grokhotkov
ed7fbfefac
build system: don't add GCC-specific options when building with clang
2021-01-24 12:48:29 +01:00
Renz Bagaporo
32206d3a7d
ci: enabled ldgen mapping check in ci
2021-01-19 11:17:18 +08:00
Angus Gratton
60ec13b122
Merge branch 'feature/make_uf2' into 'master'
...
tools: Wrap flash binaries into a UF2 file for flashing through USB MSC
See merge request espressif/esp-idf!11587
2021-01-05 07:17:27 +08:00
Marius Vikhammer
7fe16bae25
tools: merge C3 changes into master
2020-12-30 07:04:12 +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
Angus Gratton
912cee03a4
cmake: Add esp32c3 toolchain file
2020-12-24 14:18:02 +11:00
Angus Gratton
289a643896
Merge branch 'bugfix/cmake_export_ver_during_reqs_expansion' into 'master'
...
cmake: set IDF_VERSION_* variables at requirement expansion stage
Closes IDF-2509
See merge request espressif/esp-idf!11637
2020-12-17 12:19:36 +08:00
Ivan Grokhotkov
792dc6ebb8
Merge branch 'feature/linux_target' into 'master'
...
build system: Add Linux target
Closes IDF-2145
See merge request espressif/esp-idf!10076
2020-12-16 16:25:38 +08:00
Ivan Grokhotkov
19498791a5
cmake: set IDF_VERSION_* variables at requirement expansion stage
...
Currently IDF_VERSION_* variables are not available to the component
CMakeLists.txt files at the requirements expansion stage. This makes
it harder to write component CMakeLists files compatible with
different IDF versions.
Include version.cmake from the requirements expansion script, add a
build system test.
2020-12-15 20:53:19 +01:00
Jakob Hasse
52093fa4ef
linux: added linux target
...
* add toolchain file
* add linux to preview targets
* add stub for dfu number in cmake
* excluded unity runner per default
* Added esp_attr.h and esp_partition.h linux stubs
* component.cmake check list for emptyness
* added switch for linux in unity cmake file
* Added Linux host example app
2020-12-14 18:53:14 +08:00
Jakob Hasse
901925ebc5
CMake: Fix issue in newer cmake versions
...
* Fixes following error:
can not determine linker language
for target: __idf_newlib
2020-12-14 18:53:14 +08:00
Roland Dobai
3587203495
tools: Invoke menuconfig as named module
...
Closes https://github.com/espressif/esp-idf/issues/6248
2020-12-13 08:07:00 +01:00
Michael (XIAO Xufeng)
b52c764bf3
idf_size.py: add support for esp32c3 and risc-v
2020-11-13 07:49:11 +11:00
Angus Gratton
420aef1ffe
Updates for riscv support
...
* Target components pull in xtensa component directly
* Use CPU HAL where applicable
* Remove unnecessary xtensa headers
* Compilation changes necessary to support non-xtensa gcc types (ie int32_t/uint32_t is no
longer signed/unsigned int).
Changes come from internal branch commit a6723fc
2020-11-13 07:49:11 +11:00
Angus Gratton
66fb5a29bb
Whitespace: Automated whitespace fixes (large commit)
...
Apply the pre-commit hook whitespace fixes to all files in the repo.
(Line endings, blank lines at end of file, trailing whitespace)
2020-11-11 07:36:35 +00: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
Renz Bagaporo
988be69466
esp_hw_support: create component
2020-10-28 07:21:29 +08:00
Angus Gratton
b351ffa557
cmake: Log the project sdkconfig path as part of normal CMake status output
...
As discussed in footnote to https://github.com/espressif/esp-idf/issues/5251#issuecomment-625563782
2020-10-14 19:30:30 +11:00
Roland Dobai
883cbc416e
tools: Use kconfiglib from package
2020-09-22 11:29:30 +02:00
Michael (XIAO Xufeng)
5425ef4ee4
hal: extract hal component from soc component
2020-09-01 13:25:32 +08:00
Angus Gratton
a9dd9e3017
Merge branch 'feature/embed_generated_files' into 'master'
...
cmake: allow embedding files to be dependent on a target
See merge request espressif/esp-idf!8535
2020-08-04 14:39:49 +08:00
Angus Gratton
f092054f3d
Merge branch 'feature/hidden_link_as_a_group' into 'master'
...
cmake: add hidden option to link components as group
See merge request espressif/esp-idf!9617
2020-07-20 08:42:03 +08:00
Angus Gratton
eb43872361
version: Update to v4.3.0
...
v4.3.0-dev is tagged where the branches diverged, catching up with the
remaining metadata here.
2020-07-15 13:56:05 +10:00
Renz Bagaporo
7b9ab1e597
cmake: add hidden option to link components as group
...
Adds a hidden option to link components in projects as one big group for
debugging purposes. Makes it easy to single out if symbols are not
really defined or some requirements are missing for components leading
to undefined link errors.
2020-07-15 08:05:33 +08:00
Renz Bagaporo
565dc4ba4b
cmake: convert python path to cmake path
2020-07-09 12:07:45 +08:00
Renz Bagaporo
c957482d6d
cmake: remove cmake ver specification for early exp script
2020-07-09 12:07:45 +08:00
Ivan Grokhotkov
b736eebf90
cmake: also pass IDF_ENV_FPGA in config.env
2020-06-26 11:37:50 +02:00
Ivan Grokhotkov
4e9e582134
Merge branch 'bugfix/check_missing_IDF_ENV_FPGA_environment' into 'master'
...
kconfig: fix IDF_ENV_FPGA not found
See merge request espressif/esp-idf!9200
2020-06-19 18:15:00 +08:00
Angus Gratton
b3ef89942f
Merge branch 'feature/cmake_overriding_components_new_features' into 'master'
...
CMake: useful features for overriding components
See merge request espressif/esp-idf!8220
2020-06-19 11:56:56 +08:00
morris
c963440a97
kconfig: fix IDF_ENV_FPGA not found
2020-06-17 21:39:22 +08:00
Renz Bagaporo
bd55cdff02
cmake: allow calling get component property in early expansion
2020-06-16 20:42:00 +08:00
Renz Bagaporo
ebf07d353d
cmake: allow overriding kconfig, kconfig_projbuild on registration
2020-06-16 20:42:00 +08:00
Renz Bagaporo
f8d0c5770b
cmake: take note of component overriden dir
2020-06-16 20:42:00 +08:00
Renz Bagaporo
01a7db799f
cmake: fix C identifier generation from embedded file
2020-06-16 17:05:46 +08:00
Ivan Grokhotkov
2db04d6e95
Merge branch 'feature/add_esp32s3_rom_symbol' into 'master'
...
add esp32s3 preview target and rom symbol & header
Closes IDFGH-3474
See merge request espressif/esp-idf!9127
2020-06-16 06:38:43 +08:00