On Fri, Jul 21, 2017 at 2:09 PM, Nick Coghlan <ncogh...@gmail.com> wrote: > On 21 July 2017 at 13:55, Chris Angelico <ros...@gmail.com> wrote: >> On Fri, Jul 21, 2017 at 1:49 PM, Nick Coghlan <ncogh...@gmail.com> wrote: >>> The are some genuine downsides in increasing the complexity of >>> bootstrapping CPython when all you're starting with is a VCS clone and >>> a C compiler, but those complications are ultimately no worse than >>> those we already have with Argument Clinic, and hence amenable to the >>> same solution: if we need to, we can check in the generated C files in >>> order to make bootstrapping easier. >> >> Are the generated C files perfectly identical? If you use Cython to >> compile the same file twice, will you always get a byte-for-byte >> identical file? > > We that's certainly highly beneficial, we don't necessarily need it as > an ironclad guarantee (it isn't true for autoconf, for example, > especially if you change versions, but we still check in the autoconf > output in order to avoid relying on autoconf as a build dependency). > >> If so, it should be safe to check them in, and then >> have a "make regenerate" that wipes out all Cython-generated files and >> rebuilds them. That followed by "git status" would immediately tell >> you if something failed to get checked in. > > Yep, and we already have "make regen-all" as a target to cover various > other build steps where this concern applies: > > regen-all: regen-opcode regen-opcode-targets regen-typeslots > regen-grammar regen-ast regen-importlib
Cool. (Shows how much I know about the CPython build process.) Then I'm definitely +1 on using Cython. ChrisA _______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com