GithubHelp home page GithubHelp logo

Comments (3)

mflatt avatar mflatt commented on July 19, 2024

Should this main submodule be here at all? I can't remember the reason for boot.zuo to be used directly. I wonder whether it was experiment that turned out not to be useful — or maybe it's useful, and I forgot how it's used.

from chezscheme.

LiberalArtist avatar LiberalArtist commented on July 19, 2024

According to https://racket.discourse.group/t/chez-for-architectures-without-native-backends/950/15, I'd read about it in:

ChezScheme/BUILDING

Lines 85 to 93 in 2b39576

5. Along similar lines, again: If you have Chez Scheme installed, but
no longer have that installation's build directory, you can still
build for any <machine type> using `zuo` directly to launch the
build:
zuo makefiles/boot.zuo <scheme> <machine type>
The <scheme> executable must be the same version as the sources
here.

The link in my post was to Racket's release branch, and thus is broken, but it looks like you added it in 5cf80b7 the day after you wrote the comment above the one I linked to, and you removed that text from the document (but did not change boot.zuo) in 1152c60.

It fits especially well with the use in Guix, when, having already built our native chez-scheme package (and having discarded its build directory), we subsequently want to build bootfiles for some other machine type. The way the Guix packaging is set organized (at least, the best way I've found to organize it so far), we first build a Guix package containing bootfiles, then supply that as an input to the Guix package that does the rest of the Chez Scheme build. That lets us share the package definition with relatively few conditionals and overrides among native and cross-compiled (with make kernel) packages that might have gotten their bootfiles through various different strategies: rktboot, build.zuo, formerly pre-built bootfiles that we couldn't bootstrap, and, as of earlier today in my fork, re.boot for Chez 10.

On the other hand, a number of new build modes have emerged since then, and maybe one of them would work well enough for our use-case. Maybe cross.boot is the one to look at? It was convenient not to have to call configure, but I think I figured out a way to do it with relatively little fuss for re.boot.

from chezscheme.

mflatt avatar mflatt commented on July 19, 2024

Thanks for digging through the history here! That seems to confirm that it was an intermediate design that was meant to be replaced in later, but the old entry point as a main submodule was never removed. As always, if the other documented build modes can work, that seems better than trying to maintain more modes.

from chezscheme.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.