embeddedartistry / libc

libc targeted for embedded systems usage. Reduced set of functionality (due to embedded nature). Chosen for portability and quick bringup.
MIT License
504 stars 67 forks source link

Consider switching from mpaland/printf to eyalroz/printf #159

Closed eyalroz closed 2 years ago

eyalroz commented 3 years ago

This libc implementation uses Macro paland's printf library. That's a great initiative; however, it has been stagnant for 2 years now, and has dozens of open bugs, and numerous PRs to resolve some of those.

Over the past couple of months, I've taken it upon myself to pick up the work: Integrate fixes from other forks; add testcase checks for more corner cases; and improve the build mechanism (although I suppose that shouldn't matter much to you guys). The result is a more-or-less unified fork:

https://github.com/eyalroz/printf

which is still not perfect, but is in far better compliance condition that the original repository. Please consider giving it a try.

phillipjohnston commented 3 years ago

Yes, I will review your changes this upcoming week and consider switching :). Thanks for the work you've done improving the library.

phillipjohnston commented 3 years ago

I have finally had a good moment to review the changes - great improvements, thanks for your work on this. I will get your version integrated with our libc and the arduino-printf library.

eyalroz commented 3 years ago

@phillipjohnston I'm glad :-)

When it's integrated, drop me a line, so I can mention those two projects on the repository's README page...

Also, I will probably make a numbered release at some point. If it's important to you to use a numbered release rather than just pulling a commit, let me know.

Finally - the library is valid C99 and compiles without warnings with recent versions of GCC and clang. But if any issue comes up during integration - e.g. due to specifics of the architecture, or C compiler quirks or what-not - don't hesitate to file such an issue against the repository.

eyalroz commented 2 years ago

Tapping myself on the shoulder and hoping that you all enjoy it :-)

But - perhaps you should mention how you decide which version of the printf library to depend on. Is it the latest release? Latest commit on the master branch?