Subject: Re: vala build uses bundled bootstrap binaries

From: Adam Faiz <[email-masked]>
Date: Wed, 1 Mar 2023 05:00:56 +0000

> Looking at the vala source code, we can bootstrap the current version
> from 0.39.5.8, which appears to be between release cycles – 0.39.6
> already requires it, whereas 0.39.5 bootstraps from 0.25.1.  I'm not
> sure how to get 0.25.1 to build from source, though.  The code in vala-
> bootstrap does not appear helpful, it in fact reads exactly like Vala-
> compiled Vala.
> 
> Cheers

> I've now hosted my own vala-bootstrap [1], which has valacompiler.c and
> gee translated to more readable C already.  I'd be happy to take in
> patches or transfer it to the bootstrappable project.
> 
> Cheers
> 
> [1] https://gitlab.gnome.org/lilyp/vala-bootstrap

An easier route to bootstrap Vala could be the archeological approach:

Oldest commit(SVN import): 68f95ffe3aef82aac0fb7bbc65d1faab19902e3c
Last commit with only C code(except for tests written in Vala): 
c300d9c3d0af08f628b6c260bdd32f431a47e0f2

Became self-hosting(it still bootstraps with written C code under valac/): 
29a1dec53a4661779cc819ede69732c6c1118088

Removed bootstrappability(removed valac/ directory and uses Vala-generated C 
code under ccode/): 35bd6909ba2b8467ba95dfe6360e7a7e227115c8

Oldest release: VALA_0_0_1

This information should make it possible to bootstrap Vala.