[Info-vax] Looking into C-include files on VMS

John E. Malmberg wb8tyw at qsl.network
Fri Oct 30 10:15:20 EDT 2009


Joerg Schilling wrote:
> In article <BMudnSy2VOTtZ3TXnZ2dnUVZ_uNi4p2d at giganews.com>,
> Richard B. Gilbert <rgilbert88 at comcast.net> wrote:
> 
>>> BTW: why did people create GNU make and GNU tar although smake and star
>>> did exist before?
>>>
>> Perhaps people wanted to use identical tools across several hardware 
>> and/or software platforms.
<snip>

> Star offers roughly twice as many features than GNU tar and it is easier to 
> port than GNU tar too. The only currently still unsupported by star platform I am 
> aware of is VMS. There are still bugs in GNU tar that I reported in 1993...

There was a lot of work needed to port gnu tar 1.19 to VMS.  For some 
reason, instead of calling the normal opendir() they are calling an 
alternate implementation of library calls that was not implemented on VMS.

I did get gnu tar 1.19 to pass all the self tests with out errors, but 
it seems that several things still slipped through the cracks.

> Please note that I just tried to extract my sources using GNU tar and failed.
> There have been thousands of messages like:
> 
> tar: schily-dist/ved/Makefile: Cannot utime: permission denied

It should still have extracted the sources, it just did not set the time 
on them.  I have been seeing that on some tar archives.  I suspect that 
it may be that VMS treats file permissions differently than UNIX does 
and that the file was created with out the permissions needed for the 
owner to change the time.  I do not know for sure though.

> and it did fail to extract e.g. autoconf/xconfig.h.in without giving even a
> warning message at the end of the tar run.

The gnv$gnu:[lib]gnv_setup.com is missing the commands

$set process/parse=extended

$define DECC$FILENAME_UNIX_REPORT ENABLE
$define DECC$FILENAME_UNIX_NOVERSION
$define DECC$EFS_CASE_PRESERVE ENABLE
$define DECC$EFS_CHARSET ENABLE
$define DECC$READDIR_DROPDOTNOTYPE ENABLE

These should not be needed, but apparently some of the setup code for 
bash and the other utilities are missing them.

> I am now running "vmstar" and do not get warnings and voila:
> 
> -rwx------   1 SCHILLIN 392           800 May  1  2009 rules.cnf_in
> -rwx------   1 SCHILLIN 392         43303 Oct 25 17:40 xconfig.h_in

And you also only got ODS-2 format names, not the original names.

I have use the gnu tar to extract many tarballs that the vmstar in GNV 
will not properly read.  That vmstar is also not current.

> The missing files have been unpacked.

> configure still seems to be a problem, but a first compile of the boostrap smake
> could be done:

Typically configure scripts require:

# export GNV_DISABLE_DCL_FALLBACK=1

This is because of a bug in how Bash decides to try a DCL command 
instead of a UNIX commmand.

And to properly compile main routines that do not explicitly call exit()

# export GNV_CC_MAIN_POSIX_EXIT=1

Also dependency-tracking and libtool-lock need to be disabled.

> ./smake -r -p -f /dev/null
> # Implicit Pattern Rules:
> # Implicit Suffix Rules:
> # Simple Suffix Rules:
> # Macro definitions:
> $  =    $ 
> HOME  = /disk_user/decuserve_user/schilling 
> HOSTTYPE  =     alpha 
> MAKE  = DISK_USER:[DECUSERVE_USER.SCHILLING.SCHILY-DIST.PSMAKE]/./smake 
> MAKEFLAGS  =    -pr 
> MAKE_FLAGS  =   -pr 
> MAKE_HOST  =    Eisner.Encompasserve.org 
> MAKE_LEVEL  =   1 
> MAKE_NAME  =    smake 
> MAKE_OS  =      unknown 
> MAKE_SHELL_FLAG  =      -ce 
> MAKE_SHELL_IFLAG  =     -c 
> MAKE_VERSION  = 1.2a45 
> OSTYPE  =       VMS 
> PATH  = /bin:/gnu/bin:/GNU/BIN:/usr/bin:/usr/local/bin:. 
> SHELL  =        /bin/sh 
> SHLVL  =        1 
> TERM  = vt100-80 
> USER  = SCHILLING 
> _  =    ./smake 
> # Various other definitions:
> 
> I need to work on using "sh" instead of /bin/sh and I ned to find a way
> to call commands via bash(1) instead of system(3).

/bin/sh should work.  I just tested it on encompasserve.

All of this stuff and more is in the porting_to_vms conference.  GNV is 
far from ideal and requires a bit of hand-holding to use.

I am simply too short of time to fix all of the warts in GNV any time soon.

-John
wb8ytw at qsl.network
Personal Opinion Only



More information about the Info-vax mailing list