From: Christian Jaeger <christian@pflanze.mine.nu>
To: Matthieu Moy <Matthieu.Moy@imag.fr>
Cc: Gambit List <Gambit-list@iro.umontreal.ca>,
Git Mailing List <git@vger.kernel.org>
Subject: Re: Separating generated files?
Date: Wed, 15 Oct 2008 18:45:56 +0200 [thread overview]
Message-ID: <48F61E44.3080900@pflanze.mine.nu> (raw)
In-Reply-To: <vpqiqrt3mgs.fsf@bauges.imag.fr>
Matthieu Moy wrote:
> I think the first question is: do you (and why) need to use a version
> control system for generated files?
The project in question is a self-hosting compiler which compiles to C
as an intermediary language. Providing the generated C files to users
makes installation easy (it avoids the bootstrapping issue). So it's
more 'severe' of an issue than just one of for example generating
documentation files using a 3rd-party tool.
What may make matters worse, is that there are interdependencies between
a number of hand-written C files and the generated files, so it's not
always possible to use an older compiler version to reproduce the
generated C files for a newer compiler; so if you want to merge newer
compiler sources, you may also need the generated files, at least if you
want that without fuss. So, there is always a need to somehow transmit
the generated files too. I guess that this is easier than code the
system in a way to always allow backwards compatibility (I haven't
worked on the compiler itself yet, so this is a guess and may need
confirmation).
Apart from that, I've found it useful (in another project, writing a
document translator) to keep generated files in a VCS (Git) as well (I
checked them into the *same* repository as the translator source, even
if it felt ugly (for the previously mentioned reasons)), as then when I
changed the translator, I could easily see where it had effect on the
generated output. It can even serve as a debugging help kind of like a
test suite does. This may be the case here, too (again, I'm guessing here).
How are other compiler projects which are bootstrapping via C dealing
with this?
Christian.
prev parent reply other threads:[~2008-10-15 16:47 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E6D34628-783D-4597-8B00-C10F27F63BE2@iro.umontreal.ca>
[not found] ` <48F5D86B.6040501@pflanze.mine.nu>
2008-10-15 14:54 ` Separating generated files? (Re: Mercurial -> git) Nguyen Thai Ngoc Duy
2008-10-15 15:30 ` [gambit-list] " Matthieu Moy
2008-10-15 16:42 ` Michael J Gruber
2008-10-15 17:28 ` Christian Jaeger
2008-10-16 12:00 ` [gambit-list] Separating generated files? Christian Jaeger
2008-10-16 12:12 ` Santi Béjar
2008-10-16 12:32 ` Christian Jaeger
2008-10-16 13:29 ` Santi Béjar
2008-10-15 16:45 ` Christian Jaeger [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=48F61E44.3080900@pflanze.mine.nu \
--to=christian@pflanze.mine.nu \
--cc=Gambit-list@iro.umontreal.ca \
--cc=Matthieu.Moy@imag.fr \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.