Skip to main content
  • Home
  • login
  • Browse the archive

    swh mirror partner logo
swh logo
SoftwareHeritage
Software
Heritage
Mirror
Features
  • Search

  • Downloads

  • Save code now

  • Add forge now

  • Help

Revision 24abc46963e72f625edd0e60f50f98ce3b5cb3a4 authored by Ben Laurie on 23 May 1999, 16:35:29 UTC, committed by Ben Laurie on 23 May 1999, 16:35:29 UTC
Prepare for final(?) beta.
1 parent bdc98ff
  • Files
  • Changes
  • 3eebce4
  • /
  • INSTALL.VMS
Raw File
Cook and download a directory from the Software Heritage Vault

You have requested the cooking of the directory with identifier None into a standard tar.gz archive.

Are you sure you want to continue ?

Download a directory from the Software Heritage Vault

You have requested the download of the directory with identifier None as a standard tar.gz archive.

Are you sure you want to continue ?

Cook and download a revision from the Software Heritage Vault

You have requested the cooking of the history heading to revision with identifier swh:1:rev:24abc46963e72f625edd0e60f50f98ce3b5cb3a4 into a bare git archive.

Are you sure you want to continue ?

Download a revision from the Software Heritage Vault

You have requested the download of the history heading to revision with identifier swh:1:rev:24abc46963e72f625edd0e60f50f98ce3b5cb3a4 as a bare git archive.

Are you sure you want to continue ?

Invalid Email !

The provided email is not well-formed.

Download link has expired

The requested archive is no longer available for download from the Software Heritage Vault.

Do you want to cook it again ?

Permalinks

To reference or cite the objects present in the Software Heritage archive, permalinks based on SoftWare Hash IDentifiers (SWHIDs) must be used.
Select below a type of object currently browsed in order to display its associated SWHID and permalink.

  • revision
  • content
revision badge
swh:1:rev:24abc46963e72f625edd0e60f50f98ce3b5cb3a4
content badge Iframe embedding
swh:1:cnt:93a4cf89f2ecd037957c46972d3c7c62054720b0
INSTALL.VMS
			VMS Installation instructions
			written by Richard Levitte
			<richard@levitte.org>


Intro:
======

This file is divided in the following parts:

  Compilation			- Mandatory reading.
  Test				- Mandatory reading.
  Installation			- Mandatory reading.
  Backward portability		- Read if it's an issue.
  Possible bugs or quirks	- A few warnings on things that
				  may go wrong or may surprise you.
  Report			- How to get in touch with me.

Compilation:
============

I've used the very good command procedures written by Robert Byer
<byer@mail.all-net.net>, and just slightly modified them, making
them slightly more general and easier to maintain.

You can actually compile in almost any directory separately.  Look
for a command procedure name xxx-LIB.COM (in the library directories)
or MAKExxx.COM (in the program directories) and read the comments at
the top to understand how to use them.  However, if you want to
compile all you can get, the simplest is to use MAKEVMS.COM in the top
directory.  The syntax is trhe following:

  @MAKEVMS <option> <rsaref-p> <debug-p> [<compiler>]

<option> must be one of the following:

      ALL       Just build "everything".
      DATE      Just build the "[.INCLUDE]DATE.H" file.
      SOFTLINKS Just copies some files, to simulate Unix soft links.
      RSAREF    Just build the "[.xxx.EXE.RSAREF]LIBRSAGLUE.OLB" library.
      CRYPTO    Just build the "[.xxx.EXE.CRYPTO]LIBCRYPTO.OLB" library.
      SSL       Just build the "[.xxx.EXE.SSL]LIBSSL.OLB" library.
      SSL_TASK  Just build the "[.xxx.EXE.SSL]SSL_TASK.EXE" program.
      TEST      Just build the "test" programs for OpenSSL.
      APPS      Just build the "application" programs for OpenSSL.

<rsaref-p> must be one of the following:

      RSAREF    compile using the RSAREF Library
      NORSAREF  compile without using RSAREF

Note: The RSAREF libraries are NOT INCLUDED and you have to
      download it from "ftp://ftp.rsa.com/rsaref".  You have to
      get the ".tar-Z" file as the ".zip" file dosen't have the
      directory structure stored.  You have to extract the file
      into the [.RSAREF] directory as that is where the scripts
      will look for the files.

Note 2: I have never done this, so I've no idea if it works or not.

<debug-p> must be one of the following:

      DEBUG     compile with debugging info (will not optimize)
      NODEBUG   compile without debugging info (will optimize)

<compiler> must be one of the following:

      VAXC      For VAX C.
      DECC      For DEC C.
      GNUC      For GNU C.


You will find the crypto library in [.xxx.EXE.CRYPTO], called LIBCRYPTO.OLB,
where xxx is VAX or AXP.  You will find the SSL library in [.xxx.EXE.SSL],
named LIBSSL.OLB, and you will find a bunch of useful programs in
[.xxx.EXE.APPS].  However, these shouldn't be used right off unless it's
just to test them.  For production use, make sure you install first, see
Installation below.

Note: Some programs in this package require a TCP/IP library.

Note 2: if you want to compile the crypto library only, please make sure
        you have at least done a @MAKEVMS DATE and a @MAKEVMS SOFTLINKS.
        A lot of things will break if you don't.

Test:
=====

Testing is very simple, just do the following:

  @[.TEST]TESTS

If a test fails, try with defining the logical name OPENSSL_NO_ASM (yes,
it's an ugly hack!) and rebuild. Please send a bug report to
<openssl-bugs@openssl.org>, including the output of "openssl version -a"
and of the failed test.

Installation:
=============

Installation is easy, just do the following:

  @INSTALL <root>

<root> is the directory in which everything will be installed,
subdirectories, libraries, header files, programs and startup command
procedures.

In the [.VMS] subdirectory of the installation, you will find the
following command procedures:

  OPENSSL_STARTUP.COM

        defines all needed logical names.  Takes one argument that
        tells it in what logical name table to insert the logical
        names.  If you insert if it SYS$MANAGER:SYSTARTUP_VMS.COM, the
        call should look like this: 

          @openssldev:[openssldir.VMS]OPENSSL_STARTUP "/SYSTEM"

  OPENSSL_UTILS.COM

        sets up the symbols to the applications.  Should be called
        from for example SYS$MANAGER:SYLOGIN.COM 

The logical names that are set up are the following:

  SSLROOT       a dotted concealed logical name pointing at the
                root directory.

  SSLCERTS      Initially an empty directory, this is the default
		location for certificate files.
  SSLMISC	Various scripts.
  SSLPRIVATE	Initially an empty directory, this is the default
		location for private key files.

  SSLEXE        Contains the openssl binary and a few other utility
		programs.
  SSLINCLUDE    Contains the header files needed if you want to
		compile programs with libcrypto or libssl.
  SSLLIB        Contains the OpenSSL library files (LIBCRYPTO.OLB
		and LIBSSL.OLB) themselves.

  OPENSSL	Same as SSLINCLUDE.  This is because the standard
		way to include OpenSSL header files from version
		0.9.3 and on is:

			#include <openssl/header.h>

		For more info on this issue, see the INSTALL. file
		(the NOTE in section 4 of "Installation in Detail").
		You don't need to "deleting old header files"!!!

Backward portability:
=====================

One great problem when you build a library is making sure it will work
on as many versions of VMS as possible.  Especially, code compiled on
OpenVMS version 7.x and above tend to be unusable in version 6.x or
lower, because some C library routines have changed names internally
(the C programmer won't usually see it, because the old name is
maintained through C macros).  One obvious solution is to make sure
you have a development machine with an old enough version of OpenVMS.
However, if you are stuck with a bunch of Alphas running OpenVMS version
7.1, you seem to be out of luck.  Fortunately, the DEC C header files
are cluttered with conditionals that make some declarations and definitions
dependent on the OpenVMS version or the C library version, *and* you
can use those macros to simulate older OpenVMS or C library versions,
by defining the macros _VMS_V6_SOURCE, __VMS_VER and __CTRL_VER with
correct values.  In the compilation scripts, I've provided the possibility
for the user to influense the creation of such macros, through a bunch of
symbols, all having names starting with USER_.  Here's the list of them:

  USER_CCFLAGS		 - Used to give additional qualifiers to the
			   compiler.  It can't be used to define macros
			   since the scripts will do such things as well.
			   To do such things, use USER_CCDEFS.
  USER_CCDEFS		 - Used to define macros on the command line.  The
			   value of this symbol will be inserted inside a
			   /DEFINE=(...).
  USER_CCDISABLEWARNINGS - Used to disable some warnings.  The value is
			   inserted inside a /DISABLE=WARNING=(...).

So, to maintain backward compatibility with older VMS versions, do the
following before you start compiling:

  $ USER_CCDEFS := _VMS_V6_SOURCE=1,__VMS_VER=60000000,__CRTL_VER=60000000
  $ USER_CCDISABLEWARNINGS := PREOPTW

The USER_CCDISABLEWARNINGS is there because otherwise, DEC C will complain
that those macros have been changed.

Note: Currently, this is only usefull for library compilation.  The
      programs will still be linked with the current version of the
      C library shareable image, and will thus complain if they are
      faced with an older version of the same C library shareable image.
      This will probably be fixed in a future revision of OpenSSL.


Possible bugs or quirks:
========================

I'm not perfectly sure all the programs will use the SSLCERTS:
directory by default, it may very well be that you have to give them
extra arguments.  Please experiment.


Report:
=======

I maintain a few mailinglists for bug reports and such on software that
I develop/port/enhance/destroy.  Please look at http://www.free.lp.se/
for further info.


-- 
Richard Levitte <richard@levitte.org>
1999-03-09
The diff you're trying to view is too large. Only the first 1000 changed files have been loaded.
Showing with 0 additions and 0 deletions (0 / 0 diffs computed)
swh spinner

Computing file changes ...

ENEA — Copyright (C), ENEA. License: GNU AGPLv3+.
Legal notes  ::  JavaScript license information ::  Web API

back to top