[build2] build2 0.12.0 released

Boris Kolpackov boris at codesynthesis.com
Tue Nov 26 07:37:24 UTC 2019

Matthew Krupcale <mkrupcale at matthewkrupcale.com> writes:

> On Mon, Nov 25, 2019 at 7:07 AM Boris Kolpackov <boris at codesynthesis.com> wrote:
> > "build2 can be used in Flatpak"
> In this case, I was proposing adding build2 to the Sdk runtime as an
> extension so that it could be used for building other components
> inside the Flatpak. This would make it analogous to the Rust toolchain
> Sdk runtime extension[3].

Ok, as I understand, this relates to BuildStream[1] (those .bst files)
and I see they say multiple build systems are supported. I guess this
is where build2 fits in?

> > "build2 plugin for [GNOME Builder]"
> Support for building projects in GNOME Builder using build2 would be
> implemented via a build system plugin[4] for GNOME Builder. This can
> work whether or not build2 is in the Flatpak runtime since GNOME
> Builder is available as a Flatpak or a normal distribution package,
> but it's probably easier to work on GNOME Builder development as a
> Flatpak.

Ok, GNOME Builder is a build system-agnostic IDE so this makes sense.

> Yeah, understandable. What editor do you use when working with them?
> Do you have any syntax highlighting?

I use Emacs in the make mode to edit buildfiles. This gives pretty
decent syntax highlighting.

One potential complication in supporting Buildfile syntax highlighting
in editors/IDEs is our use of context-dependent lexing (meaning that we
change lexer modes depending on what we are parsing). For example:

cxx.poptions = -DFOO=bar

Here the first `=` is a token while the second is not because after
seeing the first (and recognizing it as a variable assignment) we have
switched to the "value" lexer mode which doesn't treat `=` as special.

[1] https://buildstream.gitlab.io/buildstream/main_about.html

More information about the users mailing list