vala build uses bundled bootstrap binaries

  • Open
  • quality assurance status badge
Details
4 participants
  • Adam Faiz
  • Liliana Marie Prikler
  • Liliana Marie Prikler
  • Maxim Cournoyer
Owner
unassigned
Submitted by
Maxim Cournoyer
Severity
normal
M
M
Maxim Cournoyer wrote on 15 Jul 2022 23:32
(name . bug-guix)(address . bug-guix@gnu.org)
875yjyukni.fsf@gmail.com
Hi,

Our vala packages bundle themselves via bundled bootstrap binaries.
When I asked in #vala on the irc.gnome.org, I was pointed to

Thanks,

Maxim
L
L
Liliana Marie Prikler wrote on 16 Jul 2022 10:18
29d95bb7b6c42dd8dd2602a048ed4215a717b594.camel@student.tugraz.at
Am Freitag, dem 15.07.2022 um 17:32 -0400 schrieb Maxim Cournoyer:
Toggle quote (3 lines)
> Hi,
>
> Our vala packages bundle themselves via bundled bootstrap binaries.
Small correction, it appears to be bootstrapped source files, i.e.
compiler-generated C code.

Toggle quote (3 lines)
> When I asked in #vala on the irc.gnome.org, I was pointed to
> https://gitlab.gnome.org/ricotz/vala-bootstrap as a possible
> solution.
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
L
L
Liliana Marie Prikler wrote on 18 Feb 2023 08:34
b1bfa47fcff3f22c280bd879df2a539457dd8b2f.camel@gmail.com
Am Samstag, dem 16.07.2022 um 10:18 +0200 schrieb Liliana Marie
Prikler:
Toggle quote (2 lines)
> The code in vala-bootstrap does not appear helpful, it in fact reads
> exactly like Vala-compiled Vala.
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

M
M
Maxim Cournoyer wrote on 25 Feb 2023 21:12
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)(address . 56584@debbugs.gnu.org)
87sfetec88.fsf@gmail.com
Hi Liliana,

Liliana Marie Prikler <liliana.prikler@gmail.com> writes:

Toggle quote (12 lines)
> Am Samstag, dem 16.07.2022 um 10:18 +0200 schrieb Liliana Marie
> Prikler:
>> The code in vala-bootstrap does not appear helpful, it in fact reads
>> exactly like Vala-compiled Vala.
> 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

Neat! Will you send patches to use it to bootstrap our vala in Guix?

--
Thanks,
Maxim
A
A
Adam Faiz wrote on 1 Mar 2023 06:00
(address . 56584@debbugs.gnu.org)
c2796eee-73ed-bd99-56d2-70e5c8193bc7@disroot.org
Toggle quote (17 lines)
> 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.
L
L
Liliana Marie Prikler wrote on 1 Mar 2023 21:59
(address . maxim.cournoyer@gmail.com)
58613c216729af92e868bac39925fe8e01628bf3.camel@gmail.com
Am Mittwoch, dem 01.03.2023 um 05:00 +0000 schrieb Adam Faiz:
Toggle quote (35 lines)
> > 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.
Provided that we find a version of yacc that doesn't choke on the
grammar files. Also, we got an uncertain road ahead for Valas before
0.35.1, and then vala 0.39.6 did a dirty bump in which they rely on a
practically unreleased version.

So yes, the archeological approach could work, but I wouldn't
necessarily count on it being "easy".

Cheers
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 56584@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 56584
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch