Commit graph

52 commits

Author SHA1 Message Date
Renz Christian Bagaporo 7f37fb81ca cmake: fix extra component dir ordering 2020-06-02 15:43:03 +08:00
Roland Dobai ab9f714248 Add build system support for programming ESP32-S2 using DFU utils 2020-04-30 07:59:18 +02:00
Roland Dobai 1821ee8851 tools: Add proper multi-chip support for idf_size.py 2020-02-27 19:50:05 +01:00
KonstantinKondrashov b49a657448 build: Add CONFIG_APP_PROJECT_VER to set the project version from Kconfig 2020-01-15 11:02:27 +00:00
Sergei Silnov dfafa98253 Use component manager if available as python package 2019-12-19 16:48:36 +01:00
Renz Christian Bagaporo 42d4f39a9a cmake: consider sdkconfig defaults value from environment 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo bf1df9b5b5 cmake: do not check if sdkconfig exists 2019-11-03 16:43:58 +08:00
Renz Christian Bagaporo d43cc4fa4b cmake: allow multiple sdkconfig defaults to be specified 2019-11-03 16:43:58 +08:00
Angus Gratton f4ea7c5a46 cmake: Set uninitialized variable warnings in ULP & bootloader subprojects
Fixes issue where PYTHON was not being expanded when running ulp_mapgen.py,
causing Windows launch setting to be used - reported here:
https://esp32.com/viewtopic.php?f=13&t=12640&p=50283#p50283
2019-10-29 05:38:39 +00:00
Angus Gratton 96b96ae244 Merge branch 'bugfix/cmake_component_names' into 'master'
CMake: Component name related bugfixes

See merge request espressif/esp-idf!5921
2019-09-17 11:16:25 +08:00
Angus Gratton 9a7ab28cc2 idf.py: Add environment variable to enable ccache by default 2019-09-03 10:25:28 +10: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
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
Renz Christian Bagaporo 4690152eca cmake: make default version 1 2019-08-21 12:46:38 +08:00
Renz Christian Bagaporo 72a5762525 cmake: make use of ccache opt-in 2019-06-29 00:22:57 +00:00
Angus Gratton d9ca915fa4 Merge branch 'bugfix/cmake_project_vars_not_set_by_redefinition' into 'master'
cmake: set variables set by project call

See merge request idf/esp-idf!5187
2019-06-28 15:31:10 +08:00
Angus Gratton 396131433a Merge branch 'feature/idf_size_json' into 'master'
idf_size: Support JSON output

Closes IDF-264

See merge request idf/esp-idf!4987
2019-06-24 19:06:12 +08:00
Renz Christian Bagaporo 7edef74347 cmake: set variables set by project call
ESP-IDF overrides project() definition for user convenience. This
redefinition lacks setting the variables documented at
the project command documentation
https://cmake.org/cmake/help/v3.5/command/project.html in the parent
scope.

This commit sets those variables.

Closes https://github.com/espressif/esp-idf/issues/3611.
2019-06-12 11:01:59 +08:00
Angus Gratton 05be37c87c idf_size: Support JSON output
Pass -DOUTPUT_JSON=1 to get JSON formatted output from CMake targets
2019-05-29 17:11:53 +10:00
Renz Christian Bagaporo 83ce35d638 cmake: do not use link groups 2019-05-28 10:51:02 +08:00
Renz Christian Bagaporo b4ad6c1426 cmake: refactor quick check given component dirs 2019-05-20 19:24:17 +08:00
Renz Christian Bagaporo 5175a152d9 cmake: exclude dot-dirs from added components 2019-05-20 18:24:34 +08:00
Renz Christian Bagaporo 078c69e689 cmake: remove redundant variable setting 2019-05-20 18:24:34 +08:00
Renz Christian Bagaporo 7493bd2e28 cmake: add command to get config value 2019-05-14 18:01:14 +08:00
Renz Christian Bagaporo c564d1730f esp_common: append gc sections link flag 2019-05-14 18:01:14 +08:00
Renz Christian Bagaporo c6dc47b3e2 cmake: build system changes 2019-05-13 19:57:39 +08:00
Renz Christian Bagaporo 459dd29444 cmake: restore ccache use when present
Closes https://github.com/espressif/esp-idf/issues/3116
2019-05-06 20:04:07 +08:00
Angus Gratton d50af8bd53 Merge branch 'bugfix/no_tests_for_unit_test_example' into 'master'
cmake: fix error in converting project variables to namespaced ones

See merge request idf/esp-idf!3887
2018-12-05 12:58:42 +08:00
Renz Christian Bagaporo 0d5660fbde cmake: fix error in converting project variables to namespaced ones
Closes https://github.com/espressif/esp-idf/issues/2764
2018-12-05 10:51:10 +08:00
Angus Gratton 89826e8f47 generic cmake: Always use gc-sections when linking IDF libraries
Required for some IDF binary libraries

Reported on forum: https://esp32.com/viewtopic.php?f=13&t=7535&p=34863#p34852

TW27733
2018-12-04 10:47:00 +11:00
Renz Christian Bagaporo ba6058ba58 cmake: fix error on building idf as lib when env IDF_PATH is not set 2018-11-29 15:40:16 +08:00
Renz Christian Bagaporo 37d30c7a6e cmake: separate app from idf lib project
mbedtls: import mbedtls using unmodified cmake file
2018-11-27 13:59:24 +08:00
Renz Bagaporo 63411fc556 tools: implement linker script generation 2018-11-16 12:42:02 +08:00
Ivan Grokhotkov ccfa134533 build system: support for multiple targets 2018-11-11 21:46:02 +08:00
Renz Bagaporo cc774111bf cmake: Add support for test build 2018-10-20 12:07:24 +08:00
Angus Gratton 6fa52ca8fe cmake: Call check_python_dependencies.py from idf.py & cmake 2018-09-03 18:37:53 +08:00
Angus Gratton c921f14128 cmake: Generate list of components with dependent items first, use deterministic ordering
Guarantees that a component's project_include.cmake will be called after its dependent components'
project_include.cmake. Because of cycles in the dependency graph, this is less useful than you'd
think but it gives a strong guarantee for any component which is not part of a cycle.

Also applies deterministic ordering (ordering is initialised as COMPONENT_REQUIRES_COMMON then all
COMPONENTS in alphabetical order, but then the sorting by dependencies is applied.)
2018-08-31 12:29:13 +08:00
Angus Gratton ff2404a272 Merge branch 'master' into feature/cmake 2018-08-16 17:14:17 +10:00
Angus Gratton 70288f864e cmake: Expand components relative to PROJECT_PATH correctly 2018-08-13 15:37:03 +10:00
Angus Gratton bf10447b82 cmake: Fix issues when IDF_PATH is not set in environment
Support cases where IDF_PATH may be passed in on the cmake command line,
or inferred from a (hardcoded absolute or relative) path to project.cmake
2018-06-18 14:48:03 +10:00
Angus Gratton 1cb5712463 cmake: Add component dependency support
Components should set the COMPONENT_REQUIRES & COMPONENT_PRIVATE_REQUIRES variables to define their
requirements.
2018-04-30 09:59:20 +10:00
Angus Gratton 56902f0054 cmake: Write configuration & component metadata to project_description.json 2018-04-30 09:59:20 +10:00
Angus Gratton b44c8b125f cmake: Style cleanup, add cmake linter to gitlab CI 2018-04-30 09:59:20 +10:00
Angus Gratton 2ea359ad0c cmake: Cleanups to work with Windows 2018-04-30 09:59:20 +10:00
Angus Gratton 88df8fd293 cmake: Use cmake_lint project, tidy up all CMake source files 2018-04-30 09:59:20 +10:00
Angus Gratton 9f8cdd3572 cmake: Add "Preview release" getting start guide & build system documentation 2018-04-30 09:59:20 +10:00
Angus Gratton abef220b13 cmake: Allow selecting toolchain file based on config
Refactor IDF "project" functionality under a wrapping of the default
"project" command, so we can tweak it a bit...

Will need more testing in other environments.
2018-04-30 09:59:20 +10:00
Angus Gratton efb5928934 idf.py build & flash tool
Generate flasher args files & .json project info file as part of cmake build
2018-04-30 09:59:20 +10:00
Angus Gratton 3fac2b2ddc cmake: Refactor bootloader_subproject into the bootloader component itself 2018-04-30 09:59:20 +10:00
Angus Gratton 674d398c93 cmake: Add partition table, and .bin file targets 2018-04-30 09:59:20 +10:00