My build system is not supported

Our C++ app relies on the bazel build system. It’s doing amazing things for us with powerful caching, distributed builds, build hermeticity, dependency management, etc.etc.

Now, when I look into the snapcraft documentation on building c/c++ snaps, I notice that bazel is not supported as a build tool.

Now, when I look into the option of creating our own build plugin, then it tells me, that this option is no longer supported.

How am I supposed to do this? Use the make plugin and just hack something like $(shell bazel build //...) into the makefile? Is a bazel plugin in the works? Should I just fork snapcraft and write our own plugin for bazel? When I look at the cmake.py plugin, that does NOT look very complex, can someone please just write me a bazel plugin? Should I contribute one?

You can always just use the nil plugin and simply call your build tool from an override-build block, just like you would do it when building manually in a terminal… there is no need to use the snapcraft plugins, they are convenient but not mandatory

That makes sense. Thank you.

Hi, we have some experience with bazel, but not any real world production type one. If you are willing to help with perhaps the user experience and some testing we can certainly look into getting one done. What would the user experience you’d expect to see from a parts point of view when using such plugin, would you might mocking some yaml and perhaps a target project where this would work?