Comments (5)
Regarding
(There is also currently a bug where changing the sdkconfig/sdkconfig.defaults does not cause an esp-idf recompilation.)
is there any solution?
This is fixed in master (see commit 468b792) but not in a release yet.
from esp-idf-sys.
In the long term though, we should make this configurable (maybe with an approach like I suggested in #72) as the demand for more and more esp-idf components grows.
The approach suggested in #72 might be a bit of an overkill, as it is addressing the problem of how do we compile and generate *-sys
bindings for external (out-of-tree) components.
For "in-tree" components, that might be an overkill, especially given that we have like 70% of the solution already:
- Look at EspIdfComponents and how it is used here, which is the CMake-first build.
- All that we need is a similar env-var for
native
build, which is (a) first passed down to CMake and (b) after that is parsed with a very similar code to the above, so that the bindings are generated only for the components which had actually been build. It env var is empty, the code should compile and generate bindings for everything, of course.
From then on, everything is solved already - esp-idf-sys
, but also esp-idf-hal
and esp-idf-svc
are sprinkled with "#ifdefs" using these component strings (they are passed as cfg
flags to Rust), so that not just the unsafe wrappers in esp-idf-sys
, but also the safe wrappers in esp-idf-svc
and esp-idf-hal
are conditionally compiled, depending on where the component was enabled or not.
from esp-idf-sys.
Just to note that this task became even easier recently, as we no longer have a hard-coded list of esp idf components. I'm instead enumerating the components by doing directory scans instead. This should also make the task for plugging custom components easier.
from esp-idf-sys.
Yup, I noticed it, just haven't gotten around to implementing it.
Thanks for the notice though.
from esp-idf-sys.
Regarding
(There is also currently a bug where changing the sdkconfig/sdkconfig.defaults does not cause an esp-idf recompilation.)
is there any solution?
from esp-idf-sys.
Related Issues (20)
- Failing to add mdns remote component HOT 4
- How to allocate a vector or array in PSRAM HOT 4
- backtrace (of rust code) is incomplete on esp32c6 HOT 17
- Integration with `bevy_ecs` - linker failure `pthread_setcancelstate is not implemented` HOT 5
- Do Rust Native Queues and Mutexes Properly Suspend Tasks HOT 3
- Misaligned struct pointer from esp camera HOT 22
- could not identify the root crate and `ESP_IDF_SYS_ROOT_CRATE` not specified HOT 2
- Time for `espidf_time32`? HOT 4
- Trying to set CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE=1 not working HOT 2
- esp-idf-sys HOT 1
- esp-idf-sys build started fail on arm mac os HOT 20
- Unable to build on Mac M1 HOT 1
- ...no 'IDF_PYTHON_ENV_PATH' item,Debian 12, std mode, esp-idf-template, idf master HOT 4
- Windows path length message is wrong. HOT 1
- tskNO_AFFINITY missing with esp-idf v5.2.1 HOT 1
- Using custom components introduces a requirement of specifying all components HOT 7
- failed to run custom build command for `esp-idf-sys v0.34.1` HOT 1
- Wrapper for RTC Slow memory HOT 2
- Implementing tinyusb callbacks in rust HOT 1
- Use of mixed i2c legacy and new apis HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esp-idf-sys.