Xvmsutils, Languages, Routines useful for porting UNIX programs to VMS

Installation


To compile the xvmsutils is pretty straightforward. Unpack the sources and 
execute make.com. This should take care about all the dependencies on platform,
OpenVMS version and C compiler version. These actually impose a pretty 
complicated set of conditions on the compilation and quite a bit of effort went 
into working them out.
Since this is getting more and more complicated (i.e. by now it happens that 
functions which are part of an older Compaq C version do vanish in more 
current ones) I have embarked to rebuild the procedure to use small 
testprograms to determine if a specfic function is implemented or not. This is 
currently work in progress, i.e. the procedure uses currently a mixture of 
both approaches.
In case MMS/MMK is installed this will be used to perform the actual compile, 
otherwise make.com will handle it by itself. 


Version 2.03 is the first one in quite a while that actually has been tested 
on OpenVMS VAX. A number of bugs in the build procedure have been squashed for 
this release and it should build cleanly now on VAX systems again. 


If you install a new DEC C compiler/OpenVMS version and receive messages about 
multiply defined symbols using a previously compiled version of the Xvmsutils 
object library, delete it and rebuild the file. Just reexecuting make.com won't 
help since this will reuse the existing library file and therefore modules once 
inserted won't vanish from it. 


Setup


To be able to refer to the include files of the library without too much hassle 
you might want to define a logical X11VMS, which points to the directory where 
you've installed the Xvmsutils. 


Starting with version 2.0 on OpenVMS Alpha also a shareable image version of 
the Xvmsutils is created, which should be refrenced by the logical name 
X11VMSSHR. 


History


Actually this library was developed first about 1989 to support a port of the 
X11R3/R4 applications to VMS. I am taking care of the code since 1995. Mostly 
this means nowadays removing bits and pieces either in the makefiles or in the 
code (i.e. using appropriate #ifdefs in this case) since the DEC C compiler 
contains more and more of the functions in the meantime by itself. If you have 
suggestions how to improve the library still drop me a note, I shall be happy 
to discuss the topic with you. 


Applications using the Xvmsutils

Blockade
  Logic game: (Re-)Move blocks from the board 

Emiclock
  Clock with various characters displayed in the face 

Xmaddressbook
  You have guessed it, a graphical addressbook 

Xsnow
  Have it snow on your Xscreen and spy Santa on his way 

Xsokoban
  Logic game: Japanese Warehouse keeper Installation


The latest version of the Xvmsutils library should always be 
accessible via 

http://zinser.no-ip.info/vms/sw/xvmsutils.htmlx
