Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature/selective compilation #1671

Merged
merged 5 commits into from Jul 25, 2018
Merged

Feature/selective compilation #1671

merged 5 commits into from Jul 25, 2018

Conversation

nathanjel
Copy link
Contributor

Enable selective compilation of Arduino libraries. Makes a big difference for projects which use entire Arduino library for late linking purposes (as in COMPONENT_ADD_LDFLAGS := -Wl,--whole-archive -l$(COMPONENT_NAME) -larduino-esp32 -Wl,--no-whole-archive)

@me-no-dev
Copy link
Member

@nathanjel is this good to go?

@nathanjel
Copy link
Contributor Author

I incorporated Your comments and use this updated version in my code successfully. So the answer is Yes :)

@me-no-dev me-no-dev merged commit 1fe3ee8 into espressif:master Jul 25, 2018
@me-no-dev
Copy link
Member

merged!

@psykokwak-com
Copy link

psykokwak-com commented Jul 25, 2018

I have some build error since this update.
I have added some libraries on my libraries folder and I have these warning :

/home/Jyce/esp/arduino/components/arduino/component.mk:3: avertissement : variable « CONFIG_ARDUINO_SELECTIVE_ESPAsyncWebServer » indéfinie
/home/Jyce/esp/arduino/components/arduino/component.mk:3: avertissement : variable « CONFIG_ARDUINO_SELECTIVE_AsyncTCP » indéfinie
/home/Jyce/esp/arduino/components/arduino/component.mk:3: avertissement : variable « CONFIG_ARDUINO_SELECTIVE_ArduinoJson » indéfinie

@nathanjel
Copy link
Contributor Author

Adjust Kconfig.projbuild accordingly to support the new libraries You added locally.

@psykokwak-com
Copy link

If I unset selective compilation, it should scan and build all lib in the folder.

@nathanjel
Copy link
Contributor Author

Indeed, You have a point there. What would You believe is the right behaviour if You choose selective compilation and pick some, what should happen with Your added libraries? Should they go in or out? Or a checkbox like "include additional"?

By the way, I still hope there is way to trick IDF to regenerate Kconfig... You just got me a bit closer to researching that.

@psykokwak-com
Copy link

Good question. "include additionnal" will help users that do not know how to add them manually. It could be a good idea.

@nathanjel
Copy link
Contributor Author

If I don't get a bright idea how to adjust Kconfig automatically, that seems the next best solution. @me-no-dev - any ideas/comments from You?

@me-no-dev
Copy link
Member

Here is how it should work. If a library is not in the list for selection, it should be automatically included, regardless of what is selected in the menu.

@nathanjel nathanjel deleted the feature/selective_compilation branch July 25, 2018 23:43
@nathanjel nathanjel restored the feature/selective_compilation branch July 25, 2018 23:43
@nathanjel
Copy link
Contributor Author

#1678 issue created. @psykokwak-com, it seems @me-no-dev was quicker than me with the fix. please check now and confirm the issue is resolved.

Curclamas pushed a commit to Curclamas/arduino-esp32 that referenced this pull request Aug 21, 2018
* Selective compilation

* Optimized component.mk

* Autoconnect WiFi now forces WiFi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants