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
Angus Gratton
3ae4822115
cmake: Add partition table generation
2018-04-30 09:59:20 +10:00
Angus Gratton
134f2238bd
cmake: Refactor main cmake project logic
2018-04-30 09:59:20 +10:00