cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: [patch 7.19.5] VMS Exit handling fixes.

From: John E. Malmberg <wb8tyw_at_qsl.net>
Date: Thu, 11 Jun 2009 08:48:30 -0500

Yang Tse wrote:
> 2009/6/11, John E. Malmberg wrote:
>
>>> I wonder why curlmsg_vms.h has no header inclusion guard. It would
>>> make things a little bit more easy... Would there be any problem if it
>>> were used?
>> I suspect that they are not there because the original author did not think
>> to put them in. I can not see how they would hurt.
>
> I've just added header inclusion guards for curlmsg_vms.h, curlmsg.h
> and config-vms.h lets hope it doesn't break anything.
>
> Do you have some way of testing if the curlmsg.msg is still in sync
> with curl.h, and dependant files curlmsg_vms.h, curlmsg.h?

I did a check and they appeared to still be in sync. If I had an
automatic method, I would be looking at generating the files instead of
manual edits.

My next step is to build the procedures for generating a
.PCSI$COMPRESSED file (VMS installation package) that contains the
resulting installed files and a snapshot of the source that was used to
build them.

My estimate is that there are about 4 files for that have to be manually
checked to make sure that they match the Unix build.

1. The curlmsg.msg file is derived from the curl.h error constants and
maps them to the appropriate VMS error code and English text. While the
object is statically linked with Curl, it could be made dynamic so that
locale specific files could be used.

2. The curlmsg_vms.h and curlmsg.h are derived from curlmsg.msg.

3. The shared image needs a list of Public symbols to export, and must
only add new symbols to the end of the list and never delete old ones,
or a new shared image file name needs to be created. There is a serial
number in that list that needs to be incremented when symbols are added.
These are currently derived from the header files that were seen to be
installed in include/curl.

Currently that is manually checked and created/updated as I do not see
an easy way to automate it.

4. The kitting procedure needs a list of files that get installed from
the make install step.

Currently I use a directory command to find out what is modified in a
fake root and manually create it.

VMS has a feature where I can overlay multiple directory trees as if
they were one directory tree in a search list. Reading finds the first
file in the list, and creating files starts at the beginning of the
list. By setting up such a list for "/", I can have non-privileged
users test the make install step with out any chance of modifying the
real files. So I can set up a fake "/" in a list before the real "/"
and see what shows up.

Once I get the kitting procedure working, I would like to submit those
additional scripts/files to the [.packaging.vms] directory, so that
other VMS programmers can just build curl with GNV.

Regards,
-John
wb8tyw_at_qsl.net
Personal Opinion Only
Received on 2009-06-11