Operating System - OpenVMS
Showing results for 
Search instead for 
Did you mean: 

Looking for working RCS for OpenVMS

Go to solution

Looking for working RCS for OpenVMS

Hi Folks,

I've been fighting with RCS off the freeware CDs for a bit, and it appears to require the full path in part of the program and no path in other parts (DIFF, called via CI vs CI itself). I'm hoping someone can point me to a working version of RCS (or something equivalent).

I do have CMS, but unfortunately I need to be able to store multiple modules/files with the same name (though different directories). I've also looked at Superversion but, unfortunately, it fails with java errors right out of the gate.

Any thoughts or clues would be appreciated. I'm using OpenVMS 7.3-2, if that's relevant.
Honored Contributor

Re: Looking for working RCS for OpenVMS

Do you specifically need GNU RCS? That's not seeing all that much development activity based on what's visible around the network; according to the Perdue RCS repository, 5.7 is current -- and RCS 5.6 was the version on Freeware V4.0 from a very long time ago.

If I needed RCS specifically, I might well look at the old port and re-port 5.7 over.

With CMS and multiple modules with the same or similar paths, that's usually done with either multiple CMS libraries, or by wrapping CMS and hacking up the names, or by using classes and shutting off the reference areas entirely.

(I've usually ended up shutting off the reference library stuff, as that has tended to lead to pain and skews; it works pretty well for simple environments, but not so well in the more complex. It's also possible to use CMS ACLs to simulate class-specific reference errors, but it's often just as easy and more maintainable to fetch what you need when you need it.)

The package used by OpenVMS Engineering to work within and occasionally work around some of the limits with CMS was VDE; that's on the Freeware. (That's probably not the best choice, but it can give you some ideas of what's possible with CMS and with the CMS APIs.)

Here, I'd probably look toward a (newer) package such as Mercurial (Hg); there is a Mercurial port around and that's rather newer than RCS and such. I'd check around, as there may be a git port available by now, too. Maybe Subversion (SVN) in a real pinch. But rcs and sccs are really, really old...

Occasional Contributor

Re: Looking for working RCS for OpenVMS

Brian, CMS can do what you're talking about. I've seen installs where it was set up like this:

the production directory is PRD_DSK:[prd]
that makes the CMS library CMS_DSK:[prd.cmslib]

You can set it up however you want. Are you needing to have all the versions of the code in one library?

Honored Contributor

Re: Looking for working RCS for OpenVMS


...class-specific reference errors...

was intended to be

...class-specific reference areas...

Jean-François Piéronne
Trusted Contributor

Re: Looking for working RCS for OpenVMS

mercurial is include in the Python ld image for OpenVMS

I use and know sites using it without any problem.

More information from http://vmspython.dyndns.org/DownloadAndInstallationMercurial

A few repositories on a VMS system:


Re: Looking for working RCS for OpenVMS

Sorry for the delays in getting back and thanking all of you.

I don't need any particular source control system - I have no ties to any in this, so anything is fair game if it works.

I know that it 'might' be possible to use CMS but I have some areas of my source catacomb that would virtually require a repository for each file - that's really not a viable way to do it, and unfortunately, I don't have the luxury of changing those files to get around things. I'll have another go at it, though, just in case I can work it - I didn't go that far with CMS because of all the suggestions that it would not work well in this case.

I've based most of my thoughts on RCS, but that's more because of familiarity - I know I could work it to do what I want, but I'm not sure of others (but I'm open to anything).

I'll give Mercurial a try, too. That looks to be quite promising.

Re: Looking for working RCS for OpenVMS

Thought I should follow up on this a bit, on my results so far. Thanks again to all who responded.

Mercurial seems the best bet so far (after a bit of mucking through the installs, it is working), but has one serious drawback to me - it requires ODS-5 volumes, while I'm currently locked to ODS-2. I'm looking at whether it's viable to have the repositories on a seperate volume (from the working source, etc.), and how difficult that would be to manage. At the very least, it's far from ideal.

I would still love to know if anyone has a working set of RCS utilities, as that would certainly be the best option, but from all that I'm seeing and finding, a working version of RCS is not out there.
Duncan Morris
Honored Contributor

Re: Looking for working RCS for OpenVMS

Brian, have you considered using the LD tool to create an ODS5 container on your existing ODS2 volume?

I have used LD devices to provide ODS5 support for products such as JAVA and GNV on systems where I am not permitted to convert any existing ODS2 volumes.

Honored Contributor

Re: Looking for working RCS for OpenVMS

RCS? Port it and post it. RCS source code is available. Or find somebody that's willing to fix whatever you bumped into in your work and/or port the current RCS bits over.

As a general rule, few folks will use source code control software as old and as feature-constrained as RCS in a new source code control installation. (CMS shares similarities here; it's good and reliable and supported, but it's just not a particularly feature-competitive choice for new source code installations.) As expensive and hassle-worthy as it is, various folks I deal with are migrating away from these older packages.

Turning on ODS-5 is trivial and fast, FWIW. You only tend to get in trouble with it if you use its extended features on your files and directories and then try to access your creations from software that doesn't know from ODS-5. You have control over that. Many new environments are using ODS-5, as an increasing quantity of available software requires it.

Honored Contributor

Re: Looking for working RCS for OpenVMS

It is really easy to dedicate some blocks for a ODS-5 device.

Example, I suppose you need 300 000 blocks for Mercurial.

$ ld create dsa8:[mercurial]mercurial.dsk/size=300000
$ ld connect dsa8:[mercurial]mercurial.dsk
%LD-I-UNIT, Allocated device is $1$LDA4:
$ sh dev lda4

Device Device Error Volume Free Trans Mnt
Name Status Count Label Blocks Count Cnt
$1$LDA4: (JIM) Online 0
$ init/nohigh/struct=5 $1$lda4: mercurial

You have a new ODS-5 device, named $1$lda4.

Re: Looking for working RCS for OpenVMS

Hi Folks,

Using a 2nd volume, whether a LD or physical could "work," for Mercurial, but it does mean that I'd have to support a remote tree separate from my source for all the repositories. That adds a considerable headache to trying to get people to use things right. I was really hoping for a much simpler/cleaner solution that wouldn't have things as scattered.

As I noted, I don't have the option of switching to ODS-5 for my live disks. I have things that are tied to OSD-2 there (my application dates from the early/mid 1980s and changing it to suit ODS-5 is enough work to completely abandon any source control project (think many, much and lots of $$$). Just to re-certify the system would probably cost more than a year's budget for my dept - no guesses for how far that would fly.

I'll look at whether I can work around the separate volume headaches.

I think we've probably bashed this one around enough, so I'll let the thread go at this stage.

Re: Looking for working RCS for OpenVMS

I think I have as close to an answer as I'm going to get on this.