[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-janitors] #631: Enhance banner to include git hash, ensure buil
From: |
Chicken Trac |
Subject: |
[Chicken-janitors] #631: Enhance banner to include git hash, ensure build info is current |
Date: |
Sat, 02 Jul 2011 21:43:22 -0000 |
#631: Enhance banner to include git hash, ensure build info is current
-------------------------------+--------------------------------------------
Reporter: zbigniew | Owner:
Type: enhancement | Status: new
Priority: not urgent at all | Milestone: 4.8.0
Component: unknown | Version: 4.7.x
Keywords: |
-------------------------------+--------------------------------------------
The attached patches make the build tag, build branch, and build version
available as {{{##sys#build-*}}} variables in unit build-version, as well
as the current build revision (git hash of HEAD). Furthermore, unit
build-version is rebuilt with every make, ensuring that the versions are
always current, even if you simply switch branches or make a small commit.
Finally, unit library uses these new variables to generate the banner, and
version.scm is removed.
I could rewrite this patch without unit build-version if desired, instead
forcing library.scm to be rebuilt with every {{{make}}}. However, note
there is a significant build time impact. For example, ''ckeen'' found
that it takes almost 1 minute to build library.scm versus 2 seconds to
build build-version.scm, which would happen in every single rebuild --
regardless of whether library.scm was actually modified.
This patch has been tested on OS X, Mingw (no msys), and OpenBSD.
I have also ensured that {{{make buildhead}}} and {{{makedist.sh}}}
continue to work correctly. Furthermore, if you do not have git installed,
or if you are not building from a git checkout, the information is simply
omitted from the banner.
Comments on the implementation are appreciated.
(These commits are also available from https://github.com/ursetto/chicken-
core-zb in branch zb/ver3.)
--
Ticket URL: <http://bugs.call-cc.org/ticket/631>
Chicken Scheme <http://www.call-with-current-continuation.org/>
Chicken Scheme is a compiler for the Scheme programming language.
- [Chicken-janitors] #631: Enhance banner to include git hash, ensure build info is current,
Chicken Trac <=