freetds AT lists.ibiblio.org
Subject: FreeTDS Development Group
List archive
- From: christos AT zoulas.com (Christos Zoulas)
- To: FreeTDS Development Group <freetds AT lists.ibiblio.org>
- Subject: Re: [freetds] $Id and include file
- Date: Tue, 19 Oct 2004 13:59:39 -0400
On Oct 19, 1:09pm, entropy AT freetds.org (entropy AT freetds.org) wrote:
-- Subject: Re: [freetds] $Id and include file
| Christos Zoulas wrote:
|
| > For gcc you can:
|
| We support vendor compilers too, so I don't think a gcc-specific
| solution works for FreeTDS.
Well, it is simple enough to:
#ifdef __GNUC__
#define __RCSID(id) \
static const char rcsid[] \
__attribute__((__unused__,__section__(".ident"))) = id
#else
#define __RCSID(id)
static const char *rcsid(const char *x) { \
return x ? id : rcsid(x); \
}
#endif
| > It would be nice to change the rcsid strings in freetds to $FreeTDS$,
| > instead of using $Id$.
|
| I never really understood the benefit of this in the NetBSD tree. Can
| you elaborate on it some more? Why is it a win?
If you want to maintain your own changes in a vendor branch without using
-kb. Let's say I import freetds-x.yy with vendor tag FREETDS and release
tag FREETDSX_YY. If I don't specify -kb, $Id$ gets expanded. This is ok
as long as I don't make any local modifications to the files. For each
file I modify I will get a conflict on the next import, because the $Id$
expanded versions will not match. If I use -kb, then $Id$ does not get
expanded, so I don't get the conflicts. But this is suboptimal, because
I wanted to be able to see the $Id$ strings so I can keep track of
my changes. If a third party ident key is used such as $FreeTDS$, none
of the local cvs servers know about it so they leave it alone and I
can use $Id$ locally as much as I want to.
| Do we all need to hack
| up our CVS tools to support it, or do recent versions of CVS support it
| out-of-the-box?
Well, the only cvs binary that needs to be hacked is the CVS server the
FreeTDS people are using. It is not really a hack; I think that there is
compile time define (LOCALID?). The NetBSD cvs sources have been hacked
to allow a line tag=FooTag in CVSROOT/config for this purpose (so that
you don't need to recompile CVS).
christos
-
[freetds] $Id and include file,
ZIGLIO, Frediano, VF-IT, 10/19/2004
-
Re: [freetds] $Id and include file,
Christos Zoulas, 10/19/2004
-
Re: [freetds] $Id and include file,
entropy, 10/19/2004
- Re: [freetds] $Id and include file, Christos Zoulas, 10/19/2004
-
Re: [freetds] $Id and include file,
entropy, 10/19/2004
-
Re: [freetds] $Id and include file,
Christos Zoulas, 10/19/2004
Archive powered by MHonArc 2.6.24.