This repository was archived by the owner on Apr 17, 2023. It is now read-only.
Fixed support for 3rd Party Arduino libraries #18
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Until this PR, 3rd Party Arduino libraries have been treated as user libraries, which are different.
The problem is that even though they're 3rd party, those libraries conform to the Arduino library standard, include the required
library.propertiesfile and have a very similar source structure to the Built-in libraries.Moreover, they're usually dependent on an Arduino platform, which requires them to be "first-class" libraries.
Now, these libraries can be treated as they should by calling the
add_arduino_libraryfunction.The downside of this API is that one would have to manually pass the library's sources, but on the other hand - It gives it the freedom to store the library anywhere it'd like in the host system.
If however a user still wants to keep using the
find_arduino_libraryAPI, it can do so by placing the 3rd party library directory under the SDK's libraries directory, and pass the3RD_PARTYoption to the function.This PR also added an example using a 3rd party library named Adafruit_NeoPixel.
Fixes #17.