bug in netCDF 2.3 under VMS: SWAP needs defining

Greetings,

There's a bug in the VMS build procedure for the just-released netCDF 2.3
package.  The C preprocessor macro SWAP must be defined when building the
implementation -- but it isn't.  As a consequence, bytes from multi-byte
variables are written to netCDF files in the wrong order.  You can see this
by dumping the first block of a netCDF file created by the new release:

    $ dump/byte/block=end:1 test.cdf
    Dump of file TEST.CDF;1 on  4-MAY-1993 15:24:17.41
    File ID (4616,14,0)   End of file block 15 / Allocated 15

    Virtual block number 1 (00000001), 512 (0200) bytes

     00 00 00 03 00 00 00 0A 00 00 00 08 43 44 46 01 .FDC............ 000000
    ...

The initial sequence of characters should be `CDF.' rather than `.FCD'
(this sequence is a `magic cookie' and appears in all valid netCDF files
created by our implementation of the netCDF specification).

The solution is to rebuild the package after adding the string
`/define=swap' to the definition of `ccc' in the file [.libsrc]make.com,
i.e. in the specified file, change

    $ ccc := cc /opt/nodebug/include=([-.xdr])/nolist/define=stdc_includes

to

    $ ccc := cc 
/opt/nodebug/include=([-.xdr])/nolist/define=stdc_includes/define=swap

I apologize for any inconvenience this might cause.

Regards,
Steve Emmerson


  • 1993 messages navigation, sorted by:
    1. Thread
    2. Subject
    3. Author
    4. Date
    5. ↑ Table Of Contents
  • Search the netcdfgroup archives: