Operating System - Tru64 Unix
1752438 Members
5700 Online
108788 Solutions
New Discussion юеВ

Re: CVS on Tru64

 
SOLVED
Go to solution
BrianT_1
Regular Advisor

CVS on Tru64

Is cvs supposed to be part of a standard Tru64 installation? I installed Tru64 V4.0E after a crash and I can't find cvs in any of the installation sets. I found sccs, but that doesn't seem to be the same thing. If it's not past of the standard system, where can it be found?
15 REPLIES 15
Steven Schweda
Honored Contributor
Solution

Re: CVS on Tru64

I know nothing, but a Google search for:
cvs source download
led to:
http://www.nongnu.org/cvs/
BrianT_1
Regular Advisor

Re: CVS on Tru64

Thanks. I'll take a look.
BrianT_1
Regular Advisor

Re: CVS on Tru64

I tried to build cvs from the web site you mentioned. The README and INSTALL files seem to indicate that I should be able to build and install it, but I get the following during the build:

source='rcs.c' object='rcs.o' libtool=no depfile='.deps/rcs.Po' tmpdepfile='.deps/rcs.TPo' depmode=tru64 /bin/sh ../depcomp cc -std1 -DHAVE_CONFIG_H -I. -I. -I.. -I../lib -I../diff -I../zlib -g -c `test -f 'rcs.c' || echo './'`rcs.c
cc: Error: rcs.c, line 1030: In this statement, "rcsbuf_buffer" and "(-1)" cannot be compared for equality or inequality. (noequality)
if ( rcsbuf_buffer == NULL || rcsbuf_buffer == MAP_FAILED )--------------------------------------^

where the carat is actially pointing at "rcsbuf_buffer", so I guess it can't compare the contents of that variable to the MAP_FAILED constant. I don't have the faintest idea how to address this because I'm not a C programmer. Any suggestions?
Dennis Handly
Acclaimed Contributor

Re: CVS on Tru64

>if (rcsbuf_buffer == NULL || rcsbuf_buffer == MAP_FAILED)
>I guess it can't compare the contents of that variable to the MAP_FAILED constant.

Yes. You can't compare an address with an arbitrary integer constant. Only 0.

>Any suggestions?

You need to use a hammer. Assuming that rcsbuf_buffer is some generic array, you should be able to use:
if (rcsbuf_buffer == NULL || rcsbuf_buffer == (void*)MAP_FAILED)
BrianT_1
Regular Advisor

Re: CVS on Tru64

I believe what you say, but why would the writers of cvs use an illegal construct and expect people not to notice? Clearly the construct must work in most cases and the information included with the package states it is supposed to work with "Digital Unix 4.0C using gcc 2.7.2.2". Does gcc allow illegal statements detected by the C compiler installed with Digital Unix?
Steven Schweda
Honored Contributor

Re: CVS on Tru64

> I tried to build cvs from the web site
> you mentioned. [...]

Too vague. Which product kit?

> cc: Error: rcs.c, line 1030: In this statement, "rcsbuf_buffer" and "(-1)" cannot be
> compared for equality or inequality. (noequality)

I don't see this statement in my "src/rcs.c".

> [...] the information included with the
> package states it is supposed to work with
> "Digital Unix 4.0C using gcc 2.7.2.2".
> [...]

And your environment was ...? You don't seem
to be using GCC.


I tried starting with "cvs-1.11.23.tar.bz2",
compiling with GCC. I got a lot of warnings,
and "make check" was not very encouraging,
but:

urtx# ./src/cvs --version

Concurrent Versions System (CVS) 1.11.23 (client/server)

Copyright (C) 2006 Free Software Foundation, Inc.

Senior active maintainers include Larry Jones, Derek R. Price,
and Mark D. Baushke. Please see the AUTHORS and README files from the CVS
distribution kit for a complete list of contributors and copyrights.

CVS may be copied only under the terms of the GNU General Public License,
a copy of which can be found with the CVS distribution kit.

Specify the --help option for further information about CVS


Using "cc" ("CC=cc ./configure"), I got fewer
compiler warnings, but the results were
otherwise similar (that is, ok, so far as I
could see).


urtx# sizer -v
HP Tru64 UNIX V5.1B (Rev. 2650); Fri Mar 20 20:19:48 CDT 2009

urtx# gcc --version
gcc (GCC) 4.3.2
[...]

urtx# cc -V
Compaq C V6.5-303 (dtk) on HP Tru64 UNIX V5.1B (Rev. 2650)
Compiler Driver V6.5-302 (dtk) cc Driver

Sorry about the newness of everything, but
V4.0x is before my time.

I also seem to have built 1.11.19 a couple of
years ago (using "gcc (GCC) 3.4.3"), but I
remember nothing (and probably never used it
for much, if anything). But I did get an
executable:

urtx# pwd
/usr/local/src/cvs/cvs-1.11.19
urtx# ./src/cvs --version

Concurrent Versions System (CVS) 1.11.19 (client/server)

Copyright (C) 2005 Free Software Foundation, Inc.

Senior active maintainers include Larry Jones, Derek R. Price,
and Mark D. Baushke. Please see the AUTHORS and README files from the CVS
distribution kit for a complete list of contributors and copyrights.

CVS may be copied only under the terms of the GNU General Public License,
a copy of which can be found with the CVS distribution kit.

Specify the --help option for further information about CVS
BrianT_1
Regular Advisor

Re: CVS on Tru64

I modified the rcs.c file to change the comparison with to use (void *) as recommended and it compiled and built cleanly. I ran a brief test to see if the commands would at least give me their command lines when "-h" was specified and they did. I'll see if they can pull files from an existing CVS directory later.
Steven Schweda
Honored Contributor

Re: CVS on Tru64

You sure are stingy with useful info.

> [...] Which product kit?

Still wondering.

> [...] it compiled and built cleanly.

_What_ did?

cvs --version
BrianT_1
Regular Advisor

Re: CVS on Tru64

CVS 1.11.23 is what I'm describing now. The original error was in an earlier verison, but it exists in 1.11.23 as well, but with a different variable (p, if I recall) in rcs.c. Same construct, though.

Anyway, in case you hadn't notices, this topic has been closed.