Plugins tutorial

116 views
Skip to first unread message

Micah Bunting

unread,
Mar 19, 2024, 12:12:52 AM3/19/24
to ThrowTheSwitch Forums
If I want to develop my own plugin for ceedling, is there a tutorial somewhere, or how should I get started?

Mark Vander Voord

unread,
Mar 19, 2024, 8:50:38 AM3/19/24
to throwth...@googlegroups.com
Hi Micah:

That's awesome! I wish you the best of luck writing it!

1. I'd recommend targeting the 0.32 branch which is about to be the official version of Ceedling
3. If it's a plugin you plan to release back to the project, we'd love the opportunity to talk about it with you.
4. Feel free to ask us questions either way!

Mark


On Tue, Mar 19, 2024 at 12:12 AM Micah Bunting <amn...@gmail.com> wrote:
If I want to develop my own plugin for ceedling, is there a tutorial somewhere, or how should I get started?

--
You received this message because you are subscribed to the Google Groups "ThrowTheSwitch Forums" group.
To unsubscribe from this group and stop receiving emails from it, send an email to throwtheswitc...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/throwtheswitch/089edf6d-a4c3-424b-8496-b185f22b6360n%40googlegroups.com.

Micah Bunting

unread,
Mar 19, 2024, 6:24:12 PM3/19/24
to ThrowTheSwitch Forums
I feel ceedling needs a plugin for dependency management. 
dependencies can come from a number of places:
* apt-get or other system package manager. If dependency is not installed, the plugin should fail and provide a command line that would install the dependency
* git using semantic version tags or a specific branch/tag
* local path
* maybe a pre compiled remote path

Dependencies need a way to configure their exports. Usually a binary file and header files.
projects a way to configure their dependencies, which will pull in the dependencies, compile them as needed, and add them to the linker. 

I am still in the design stage and might not start it for a while.

Mark Vander Voord

unread,
Mar 19, 2024, 10:43:39 PM3/19/24
to throwth...@googlegroups.com
Micah:

You might want to take a look at the :dependencies plugin. It does much of what you are talking about already, I believe. There is enough overlap that it might be worth adding new features to it, instead of creating a new plugin from scratch. Check it out and see what you think. I'd love to discuss more, even if you don't agree with me :)


Mark

Micah Bunting

unread,
Mar 20, 2024, 12:19:02 AM3/20/24
to ThrowTheSwitch Forums
Yes, the dependency plugin looks like it will work for my needs. I will definitely try it out. Thank you.

Micah Bunting

unread,
Mar 20, 2024, 10:54:06 PM3/20/24
to ThrowTheSwitch Forums
In learning the dependency plugin, is there a way to have seedling copy specific .h files from sources to the build/release/include path? This is needed for the dependency plugin to add the header files.

also I see the advantage of having the build process configurable in the consumer of the dependency; however, I feel that the dependency own its own build process, with an option for the consumer to provide these options if the dependency doesn't. 

Mike Karlesky

unread,
Mar 22, 2024, 8:48:21 AM3/22/24
to throwth...@googlegroups.com

Micah,

You’ll be happy to know that this kind of plugin exists already, and Mark has put a good deal of effort into improving it for 0.32. It’s close to done or nearly so.

That said, I am not at all familiar with it. So there may be needs and use cases you are thinking of that do not exist in the new and improved plugin.

Michael

On Tue, Mar 19, 2024 at 6:24 PM Micah Bunting <amn...@gmail.com> wrote:
Reply all
Reply to author
Forward
0 new messages