Mail Archives: djgpp/1996/11/26/10:20:11
Errors-To: postmaster AT bloomberg DOT com
Date: Tue, 26 Nov 1996 16:44:48 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
Cc: x-aes AT telelogic DOT se, djgpp AT delorie DOT com
Mime-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Content-Length: 368
On Tue, 26 Nov 1996 kagel AT quasar DOT bloomberg DOT com wrote:
> Just include:
>
> static char RCSRevision[] = "$Revision$";
>
> in each source file (including tool and library source) and:
As an excercise, try to estimate the amount of bloat this will cause in
every program, to say nothing of libc.a itself. Hint: there are more than
1600 source files in the library.
~40bytes * >1600modules ~~ >64K call it 80K? IFF you include the entire
library in your executables in which case the executable will already be
including 1800K of library code and initialized static space; not to mention
uninitialized run-time memory declared in the lib modules and the application
code! I am suggesting adding less than 4% to the size of any executable (not
even near that if any sizable modules are included in addition to the tiny
library modules)!
You do the exercise, I already have in order to convince 250 programmers here
at Bloomberg! The savings in headache and debugging to track the fact that
someone forgot to add the new version of module 'X' to the library before
linking or forgot to move the latest executable to production is worth almost
any overhead!
Let's keep things in scale shall we? The Earth is too massive to contemplate
constructing too, but if you're building a solar system its huge mass is
miniscule!
--
Art S. Kagel, kagel AT quasar DOT bloomberg DOT com
A proverb is no proverb to you 'till life has illustrated it. -- John Keats
- Raw text -