|
|
|
|
|
by isopede
839 days ago
|
|
I tried to evaluate pigweed a little bit by importing just a single module (pw_result) into my existing CMake-based MCU project. I guess you guys technically do have support, but it seemed unnecessarily difficult to pull in. Just pull the source code in, and link against pw_result right? Nope. I ended up having to spend a few hours working out what the heck facades are, various handlers for I/O, implement my own crash handlers, all the while having to poke through/model existing handlers that had "DO NOT USE IN PRODUCTION" written all over it. I did end up getting it working, but it was clear that GN/Bazel is the blessed build system and CMake is just an afterthought. In contrast, I pulled in expected-lite [1] with a single line of CMake's FetchContent, #include'd the header, and it just worked. [1] https://github.com/martinmoene/expected-lite |
|
We wrote an explainer on facades, did you see that / did it help? I will comb through the docs and make sure any module that uses facades links to the explainer https://pigweed.dev/docs/facades.html
Thank you for trying it out and for the feedback, and sorry again for the pain
For my notes, did you just try it out right now or was this in the past?
[1] Just checked, I no longer have edit access to my previous comment