]> git.ipfire.org Git - thirdparty/openssl.git/blame - NOTES-VMS.md
Deprecate the EVP_PKEY controls for CMS and PKCS#7
[thirdparty/openssl.git] / NOTES-VMS.md
CommitLineData
dc589dae 1Notes for the OpenVMS platform
1dc1ea18 2==============================
2acd8ec7 3
dc589dae
DMSP
4 - [Requirement details](#requirement-details)
5 - [About ANSI C compiler](#about-ansi-c-compiler)
6 - [About ODS-5 directory names and Perl](#about-ods-5-directory-names-and-perl)
7 - [About MMS and DCL](#about-mms-and-dcl)
8 - [About debugging](#about-debugging)
9 - [Checking the distribution](#checking-the-distribution)
2acd8ec7 10
dc589dae
DMSP
11
12Requirement details
13-------------------
14
15In addition to the requirements and instructions listed
16in [INSTALL.md](INSTALL.md), this are required as well:
2acd8ec7
RL
17
18 * At least ODS-5 disk organization for source and build.
19 Installation can be done on any existing disk organization.
20
dc589dae
DMSP
21About ANSI C compiler
22---------------------
2acd8ec7 23
dc589dae
DMSP
24An ANSI C compiled is needed among other things. This means that
25VAX C is not and will not be supported.
2acd8ec7 26
dc589dae
DMSP
27We have only tested with DEC C (aka HP VMS C / VSI C) and require
28version 7.1 or later. Compiling with a different ANSI C compiler may
29require some work.
7793e174 30
dc589dae
DMSP
31Please avoid using C RTL feature logical names `DECC$*` when building
32and testing OpenSSL. Most of all, they can be disruptive when
33running the tests, as they affect the Perl interpreter.
2acd8ec7 34
dc589dae
DMSP
35About ODS-5 directory names and Perl
36------------------------------------
e8fd2a4c 37
dc589dae
DMSP
38It seems that the perl function canonpath() in the `File::Spec` module
39doesn't treat file specifications where the last directory name
40contains periods very well. Unfortunately, some versions of VMS tar
41will keep the periods in the OpenSSL source directory instead of
42converting them to underscore, thereby leaving your source in
43something like `[.openssl-1^.1^.0]`. This will lead to issues when
44configuring and building OpenSSL.
e8fd2a4c 45
dc589dae
DMSP
46We have no replacement for Perl's canonpath(), so the best workaround
47for now is to rename the OpenSSL source directory, as follows (please
48adjust for the actual source directory name you have):
e8fd2a4c 49
df443918 50 $ rename openssl-1^.1^.0.DIR openssl-1_1_0.DIR
e8fd2a4c 51
dc589dae
DMSP
52About MMS and DCL
53-----------------
b54e35f6 54
dc589dae
DMSP
55MMS has certain limitations when it comes to line length, and DCL has
56certain limitations when it comes to total command length. We do
57what we can to mitigate, but there is the possibility that it's not
58enough. Should you run into issues, a very simple solution is to set
59yourself up a few logical names for the directory trees you're going
60to use.
b54e35f6 61
dc589dae
DMSP
62About debugging
63---------------
1ae4c07e 64
dc589dae
DMSP
65If you build for debugging, the default on VMS is that image
66activation starts the debugger automatically, giving you a debug
67prompt. Unfortunately, this disrupts all other uses, such as running
68test programs in the test framework.
1ae4c07e 69
dc589dae
DMSP
70Generally speaking, if you build for debugging, only use the programs
71directly for debugging. Do not try to use them from a script, such
72as running the test suite.
a2880aec 73
dc589dae 74### The following is not available on Alpha
a2880aec 75
dc589dae
DMSP
76As a compromise, we're turning off the flag that makes the debugger
77start automatically. If there is a program that you need to debug,
78you need to turn that flag back on first, for example:
1ae4c07e
RL
79
80 $ set image /flag=call_debug [.test]evp_test.exe
81
dc589dae
DMSP
82Then just run it and you will find yourself in a debugging session.
83When done, we recommend that you turn that flag back off:
1ae4c07e
RL
84
85 $ set image /flag=nocall_debug [.test]evp_test.exe
86
dc589dae
DMSP
87Checking the distribution
88-------------------------
2acd8ec7 89
dc589dae
DMSP
90There have been reports of places where the distribution didn't quite
91get through, for example if you've copied the tree from a NFS-mounted
92Unix mount point.
2acd8ec7 93
dc589dae
DMSP
94The easiest way to check if everything got through as it should is to
95check that this file exists:
2acd8ec7 96
d8c1cafb 97 [.include.openssl]configuration^.h.in
2acd8ec7 98
dc589dae
DMSP
99The best way to get a correct distribution is to download the gzipped
100tar file from ftp://ftp.openssl.org/source/, use `GZIP -d` to uncompress
101it and `VMSTAR` to unpack the resulting tar file.
2acd8ec7 102
dc589dae 103Gzip and VMSTAR are available here:
2acd8ec7 104
1dc1ea18 105 <http://antinode.info/dec/index.html#Software>
2acd8ec7 106
dc589dae 107Should you need it, you can find UnZip for VMS here:
2acd8ec7 108
1dc1ea18 109 <http://www.info-zip.org/UnZip.html>
d8c1cafb
RL
110
111 How the value of 'arch' is determined
112 -------------------------------------
113
114 'arch' is mentioned in INSTALL. It's value is determined like this:
115
116 arch = f$edit( f$getsyi( "arch_name"), "upcase")