packages/vms: update VMS build files
authorJohn Malmberg <wb8tyw@qsl.net>
Thu, 8 Aug 2013 11:11:29 +0000 (13:11 +0200)
committerYang Tse <yangsita@gmail.com>
Thu, 8 Aug 2013 11:13:56 +0000 (13:13 +0200)
VMS modified files either missing from a previous commit and changes
to remove references to CVS repositories.

packages/vms/build_vms.com
packages/vms/clean_gnv_curl.com
packages/vms/compare_curl_source.com
packages/vms/curl_gnv_build_steps.txt
packages/vms/gnv_link_curl.com
packages/vms/make_pcsi_curl_kit_name.com
packages/vms/readme
packages/vms/setup_gnv_curl_build.com

index bfead6c..4ec7635 100644 (file)
@@ -340,18 +340,64 @@ $   file = "[]config_vms.h"
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[]config.h"
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[]config.h"
 $   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[]curl-config."
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[]libcurl.pc"
+$   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.lib.cxx_repository]cxx$demangler_db."
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.src.cxx_repository]cxx$demangler_db."
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.lib]config_vms.h"
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.lib.cxx_repository]cxx$demangler_db."
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.src.cxx_repository]cxx$demangler_db."
 $   if f$search(file) .nes. "" then delete/log 'file';*
 $   file = "[.lib]config_vms.h"
 $   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]curl_crtl_init"
+$   if f$search("''file'.lis") .nes. "" then delete/log 'file'.lis;*
+$   if f$search("''file'.obj") .nes. "" then delete/log 'file'.obj;*
+$   file = "[...]gnv$curlmsg"
+$   if f$search("''file'.lis") .nes. "" then delete/log 'file'.lis;*
+$   if f$search("''file'.obj") .nes. "" then delete/log 'file'.obj;*
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   file = "[...]curlmsg"
+$   if f$search("''file'.lis") .nes. "" then delete/log 'file'.lis;*
+$   if f$search("''file'.obj") .nes. "" then delete/log 'file'.obj;*
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   file = "[...]report_openssl_version"
+$   if f$search("''file'.lis") .nes. "" then delete/log 'file'.lis;*
+$   if f$search("''file'.obj") .nes. "" then delete/log 'file'.obj;*
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   file = "[...]hp_ssl_release_info.txt"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]gnv_libcurl_xfer.mar_exact"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]gnv_libcurl_xfer"
+$   if f$search("''file'.lis") .nes. "" then delete/log 'file'.lis;*
+$   if f$search("''file'.obj") .nes. "" then delete/log 'file'.obj;*
+$   if f$search("''file'.opt") .nes. "" then delete/log 'file'.opt;*
+$   file = "[...]curl-*_original_src.bck"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]curl-*_vms_src.bck"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]curl-*.release_notes"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]*curl*.pcsi$desc"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$   file = "[...]*curl*.pcsi$text"
+$   if f$search(file) .nes. "" then delete/log 'file';*
+$!
 $   if clean_all .eq. 0 then goto Common_Exit
 $ endif
 $!
 $!
 $ if clean_all .ne. 0
 $ then
 $   if clean_all .eq. 0 then goto Common_Exit
 $ endif
 $!
 $!
 $ if clean_all .ne. 0
 $ then
+$   file = "[...]gnv$libcurl"
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   if f$search("''file'.map") .nes. "" then delete/log 'file'.map;*
+$   if f$search("''file'.dsf") .nes. "" then delete/log 'file'.dsf;*
+$   file = "[.src]curl"
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   if f$search("''file'.map") .nes. "" then delete/log 'file'.map;*
+$   if f$search("''file'.dsf") .nes. "" then delete/log 'file'.dsf;*
 $   prods = proc_dev_dir - delim + ".ALPHA" + delim + "*.*;*"
 $   if (f$search(prods) .nes. "") then delete /log 'prods'
 $   prods = proc_dev_dir + "ALPHA" + ".DIR;1"
 $   prods = proc_dev_dir - delim + ".ALPHA" + delim + "*.*;*"
 $   if (f$search(prods) .nes. "") then delete /log 'prods'
 $   prods = proc_dev_dir + "ALPHA" + ".DIR;1"
@@ -367,6 +413,9 @@ $   if (f$search(prods) .nes. "") then delete /log 'prods'
 $   prods = proc_dev_dir + "VAX"+ ".DIR;1"
 $   if (f$search(prods) .nes. "") then set prot=o:rwed 'prods'
 $   if (f$search(prods) .nes. "") then delete /log 'prods'
 $   prods = proc_dev_dir + "VAX"+ ".DIR;1"
 $   if (f$search(prods) .nes. "") then set prot=o:rwed 'prods'
 $   if (f$search(prods) .nes. "") then delete /log 'prods'
+$   file = "[...]macro32_exactcase"
+$   if f$search("''file'.exe") .nes. "" then delete/log 'file'.exe;*
+$   if f$search("''file'.jnl") .nes. "" then delete/log 'file'.jnl;*
 $   goto Common_Exit
 $ endif
 $!
 $   goto Common_Exit
 $ endif
 $!
index 25af784..0bef42c 100644 (file)
@@ -211,6 +211,15 @@ $!
 $ file = "lcl_root:[.packages.vms]macro32_exactcase.exe"
 $ if f$search(file) .nes. "" then delete 'file';*
 $!
 $ file = "lcl_root:[.packages.vms]macro32_exactcase.exe"
 $ if f$search(file) .nes. "" then delete 'file';*
 $!
+$ file = "lcl_root:[.packages.vms]report_openssl_version.exe"
+$ if f$search(file) .nes. "" then delete 'file';*
+$!
+$ file = "lcl_root:[.packages.vms]hp_ssl_release_info.txt"
+$ if f$search(file) .nes. "" then delete 'file';*
+$!
+$ file = "lcl_root:[.src]curl.exe"
+$ if f$search(file) .nes. "" then delete 'file';*
+$!
 $all_exit:
 $!
 $! Put the default back.
 $all_exit:
 $!
 $! Put the default back.
index 7df4bed..eeaec31 100644 (file)
@@ -43,7 +43,7 @@ $!    The copy directory is vms_root:[project_name]
 $!    The UPDATE parameter is ignored.
 $!
 $!    This setting is used to make sure that the working vms directory
 $!    The UPDATE parameter is ignored.
 $!
 $!    This setting is used to make sure that the working vms directory
-$!    and the CVS checkout directory have the same contents.
+$!    and the repository checkout directory have the same contents.
 $!
 $! If P1 is "SRCBCK" then this
 $!     The source directory tree is: src_root:[project_name]
 $!
 $! If P1 is "SRCBCK" then this
 $!     The source directory tree is: src_root:[project_name]
@@ -55,7 +55,7 @@ $!
 $!   This is to make sure that the backup save set for the unmodified
 $!   source is up to date.
 $!
 $!   This is to make sure that the backup save set for the unmodified
 $!   source is up to date.
 $!
-$!   If your CVS checkout is not on an NFS mounted volume, you do not
+$!   If your repository checkout is not on an NFS mounted volume, you do not
 $!   need to use this option or have the logical name src_root1 defined.
 $!
 $! If P1 is "VMSBCK" then this changes the two directories:
 $!   need to use this option or have the logical name src_root1 defined.
 $!
 $! If P1 is "VMSBCK" then this changes the two directories:
@@ -195,8 +195,6 @@ $   ref_name = f$parse(ref_spec,,,"NAME")
 $   ref_type = f$parse(ref_spec,,,"TYPE")
 $!
 $!
 $   ref_type = f$parse(ref_spec,,,"TYPE")
 $!
 $!
-$   if f$locate(".CVS]", ref_dir) .lt. f$length(ref_dir) then goto loop
-$
 $   rel_path = ref_dir - "[" - ref_base_dir
 $!  rel_path_len = f$length(rel_path) - 1
 $!  delim = f$extract(rel_path_len, 1, rel_path)
 $   rel_path = ref_dir - "[" - ref_base_dir
 $!  rel_path_len = f$length(rel_path) - 1
 $!  delim = f$extract(rel_path_len, 1, rel_path)
@@ -336,12 +334,6 @@ $!
 $   wrk_skip = 0
 $   ref_utype = f$edit(ref_type,"UPCASE")
 $   ref_ufname = f$edit(ref_fname,"UPCASE")
 $   wrk_skip = 0
 $   ref_utype = f$edit(ref_type,"UPCASE")
 $   ref_ufname = f$edit(ref_fname,"UPCASE")
-$   if ref_ufname .eqs. "CVS.DIR" then wrk_skip = 1
-$   if ref_fname .eqs. ".cvsignore" then wrk_skip = 1
-$   if ref_fname .eqs. "Entries." then wrk_skip = 1
-$   if ref_fname .eqs. "Repository." then wrk_skip = 1
-$   if ref_fname .eqs. "Root." then wrk_skip = 1
-$!
 $!
 $   if wrk_skip .eq. 0
 $   then
 $!
 $   if wrk_skip .eq. 0
 $   then
index 6be139b..e21b37d 100644 (file)
@@ -1,7 +1,5 @@
 From File: curl_gnv_build_steps.txt
 
 From File: curl_gnv_build_steps.txt
 
-$Id$
-
  Copyright 2009, John Malmberg
 
  Permission to use, copy, modify, and/or distribute this software for any
  Copyright 2009, John Malmberg
 
  Permission to use, copy, modify, and/or distribute this software for any
@@ -23,7 +21,7 @@ Unix builds use.
 Building CURL on OpenVMS using GNV requires GNV V2.1-2 or the updated
 images that are available via anonymous FTP at encompasserve.org in the gnv
 directory.  It also requires the GNV Bash 4.2.45 kit as an update from the
 Building CURL on OpenVMS using GNV requires GNV V2.1-2 or the updated
 images that are available via anonymous FTP at encompasserve.org in the gnv
 directory.  It also requires the GNV Bash 4.2.45 kit as an update from the
-same location.
+same location or from the sourceforge.net GNV project.
 
 The HP C 7.x compiler was used for building the GNV version.
 
 
 The HP C 7.x compiler was used for building the GNV version.
 
@@ -51,14 +49,15 @@ VMS_ROOT: is for the source files that are specific to OpenVMS.
 LCL_ROOT: is manually created to have the same base and sub-directories as
           SRC_ROOT: and VMS_ROOT:
 
 LCL_ROOT: is manually created to have the same base and sub-directories as
           SRC_ROOT: and VMS_ROOT:
 
-The logical name REF_ROOT: is defined to be a logical name that is a search
-list for VMS_ROOT:,SRC_ROOT:
+The logical name REF_ROOT: may be defined to be a search list for
+VMS_ROOT:,SRC_ROOT:
 
 
-The logical name PRJ_ROOT: is defined to be a logical name that is a search
-list for LCL_ROOT:,REF_ROOT:
+The logical name PRJ_ROOT: is defined to be a search list for
+LCL_ROOT:,VMS_ROOT:,SRC_ROOT:
 
 For the make install process to work, it must have write access to the
 directories referenced by the GNU: logical name.
 
 For the make install process to work, it must have write access to the
 directories referenced by the GNU: logical name.
+
 In future releases of GNV, and with GNV Bash 4.2.45 installed, this name
 should be GNV$GNU:
 
 In future releases of GNV, and with GNV Bash 4.2.45 installed, this name
 should be GNV$GNU:
 
@@ -71,9 +70,15 @@ OLD_GNU: can be set up to reference the real GNV directory tree.
 Then a local copy of the GNU/GNV$GNU logical names can be set up as a search
 list such as NEW_GNU:,OLD_GNU:
 
 Then a local copy of the GNU/GNV$GNU logical names can be set up as a search
 list such as NEW_GNU:,OLD_GNU:
 
-The directory NEW_GNU:[usr] should be created.  The make install phase will
+The directory NEW_GNU:[usr] should be created.  The make install phase should
 create all the other directories.
 
 create all the other directories.
 
+The make install process may abort if curl is already because it can not
+uninstall the older version of curl because it does not have permission.
+
+The file stage_curl_install.com is used set up a new_gnu: directory tree
+for testing.  The PCSI kitting procedure uses these files as input.
+
 These files do not create the directories in the VMS_ROOT and LCL_ROOT
 directory trees.  You can create them with commands similar to:
 
 These files do not create the directories in the VMS_ROOT and LCL_ROOT
 directory trees.  You can create them with commands similar to:
 
@@ -131,13 +136,13 @@ This command procedure does the following:
 
   $ @gnv_link_curl.com
 
 
   $ @gnv_link_curl.com
 
-  $ purge new_gnu:[*...]/log
+  $ @stage_curl_install.com
 
 
+  $ purge new_gnu:[*...]/log
 
 To clean up after a build to start over, the following commands are used:
 
    $ bash
 
 To clean up after a build to start over, the following commands are used:
 
    $ bash
-   bash$ export GNV_DISABLE_DCL_FALLBACK=1
    bash$ cd ../..
    bash$ make clean
    bash$ exit
    bash$ cd ../..
    bash$ make clean
    bash$ exit
@@ -161,6 +166,10 @@ files from new_gnu: to old_gnu: at your convenience.
 Building a PCSI kit for an archictecture takes the following steps after
 making sure that you have a working build environment.
 
 Building a PCSI kit for an archictecture takes the following steps after
 making sure that you have a working build environment.
 
+Note that it requires manually creating two logical names as described
+below.  It is intentional that they be manually set.  This is for
+branding the PCSI kit based on who is making the kit.
+
    1. Make sure that you have a staging directory that can be referenced
       by the path STAGE_ROOT:[KIT]
 
    1. Make sure that you have a staging directory that can be referenced
       by the path STAGE_ROOT:[KIT]
 
@@ -174,9 +183,9 @@ making sure that you have a working build environment.
    4. Define the logical name GNV_PCSI_PRODUCER_FULL_NAME to be your full
       name or full name of your company.
 
    4. Define the logical name GNV_PCSI_PRODUCER_FULL_NAME to be your full
       name or full name of your company.
 
-   5. If you are producing an update kit, then define the logical name
-      GNV_PCSI_PATCHLEVEL to the letter E followed by a number.  Do not
-      use a patch level for kits built from the daily CVS snapshot.
+   5. If you are producing an update kit, then update the file
+      vms_eco_level.h by changing the value for the VMS_ECO_LEVEL macro.
+      This file is currently only used in building the PCSI kit.
 
    6. Edit the file PCSI_GNV_CURL_FILE_LIST.TXT if there are new files added
       to the kit.  These files should all be ODS-2 legal filenames and
 
    6. Edit the file PCSI_GNV_CURL_FILE_LIST.TXT if there are new files added
       to the kit.  These files should all be ODS-2 legal filenames and
@@ -196,15 +205,49 @@ making sure that you have a working build environment.
       step, the PCSI kit built by these steps does a rename to the correct
       case as a post install step.
 
       step, the PCSI kit built by these steps does a rename to the correct
       case as a post install step.
 
-   7. Build the PCSI kit with @pcsi_product_gnv_curl.com
+   7. Edit the build_curl_pcsi_desc.com and build_curl_pcsi_text.com if you
+      have changed the version of ZLIB that curl is built against.
+
+   8. Prepare to backup the files for building the kit.
+
+      Note that if src_root: or vms_root: are NFS mounted disks, the
+      step of backing up the source files will probably hang or fail.
+
+      You need to copy the source files to VMS mounted disks and create
+      logical names SRC_ROOT1 and VMS_ROOT1 to work around this to to
+      reference local disks.  Make sure src_root1:[000000] and
+      vms_root1:[000000] exist and can be written to.
+
+      The command procedure compare_curl_source can be used to check
+      those directories and keep them up to date.
+
+         @compare_curl_source.com SRCBCK UPDATE
+
+         This compares the reference project source with the backup
+         staging directory for it and updates with any changes.
+
+         @compare_curl_source.com VMSBCK UPDATE
+
+         This compares the VMS specific source with the backup
+         staging directory for it and updates with any changes.
+
+         Leave off "UPDATE" to just check without doing any changes.
+
+      If you are not using NFS mounted disks and do not want to have a
+      separate directory for staging the sources for backup make sure
+      that src_root1: and vms_root1: do not exist.
+
+   9. Build the PCSI kit with @pcsi_product_gnv_curl.com
 
        The following message is normal:
           %PCSI-I-CANNOTVAL, cannot validate
 
        The following message is normal:
           %PCSI-I-CANNOTVAL, cannot validate
-            EAGLE$DQA0:[stage_root.][kit]JEM-AXPVMS-CURL-D0719-6-1.PCSI;1
+            EAGLE$DQA0:[stage_root.][kit]VMSPORTS-AXPVMS-CURL-V0731-0-1.PCSI;1
           -PCSI-I-NOTSIGNED, product kit is not signed and therefore has
           no manifest file
 
           -PCSI-I-NOTSIGNED, product kit is not signed and therefore has
           no manifest file
 
-       This will result in both compressed and uncompressed kits for the target
-       platform.
+       This will result in an uncompressed kit for the target platform.
+       On Alpha and Integrity, the pcsi_product_gnv_curl.com can be used with
+       the "COMPRESSED" parameter to build both a compressed and uncompressed
+       kits.
 
 Good Luck.
 
 Good Luck.
index 3e6eba0..fadbbcc 100644 (file)
@@ -278,7 +278,8 @@ and before installing Curl.
     $PRODUCT EXTRACT FILE -
       /select=(ssl$libcrypto_shr32.exe,ssl$libssl_shr32.exe)-
       /source=device:[dir] -
     $PRODUCT EXTRACT FILE -
       /select=(ssl$libcrypto_shr32.exe,ssl$libssl_shr32.exe)-
       /source=device:[dir] -
-      /destination=device:[vms$common.gnv.lib]
+      /options=noconfirm -
+      /destination=device:[vms$common.gnv.lib] SSL
 
 The [vms$common.sys$startup}curl_startup.com procedure will then configure
 libcurl to use these shared images instead of the system ones.
 
 The [vms$common.sys$startup}curl_startup.com procedure will then configure
 libcurl to use these shared images instead of the system ones.
index d896da2..f644fe3 100644 (file)
@@ -136,7 +136,7 @@ $! We encode the snapshot date into the version as an ECO since a daily
 $! can never have an ECO.
 $!
 $! version_type = 'V' for a production release, and 'D' for a build from a
 $! can never have an ECO.
 $!
 $! version_type = 'V' for a production release, and 'D' for a build from a
-$! daiy CVS snapshot.
+$! daiy snapshot of the curl source.
 $ majorver = f$element(0, ".", raw_version)
 $ minorver = f$element(1, ".", raw_version)
 $ raw_update = f$element(2, ".", raw_version)
 $ majorver = f$element(0, ".", raw_version)
 $ minorver = f$element(1, ".", raw_version)
 $ raw_update = f$element(2, ".", raw_version)
index 22fde88..1b24580 100644 (file)
@@ -11,6 +11,11 @@ History:
 15-MAR-2004, MSK, Updated to reflect the new files in this directory.
 14-FEB-2005, MSK, removed config-vms.h_with* file comments
 10-FEB-2010, SMS. General update.
 15-MAR-2004, MSK, Updated to reflect the new files in this directory.
 14-FEB-2005, MSK, removed config-vms.h_with* file comments
 10-FEB-2010, SMS. General update.
+14-Jul-2013, JEM, General Update, add GNV build information.
+
+
+The release notes installed by the PCSI kit consist of this file and the
+curl_gnv_build_steps.txt and other useful information.
 
 Prerequisites:
 
 
 Prerequisites:
 
@@ -20,37 +25,161 @@ OpenSSL or hp SSL, if you want SSL support
 
 What is Here:
 
 
 What is Here:
 
-This directory contains the following files:
+This directory contains the following files for a DCL based build.
+
+backup_gnv_curl_src.com  This procedure backs up the source modules for
+                        creating a PCSI kit.
+
+build_curl-config_script.com
+                        Procedure to create the curl-config script.
+
+build_gnv_curl.com      This procedure does a build of curl using the
+                        GNV utilities and then uses DCL tools to build
+                        the libcurl shared image.  The setup_gnv_curl_build.com
+                        procedure must be run first.
+
+build_gnv_curl_pcsi_desc.com
+                        This procedure builds the pcsi$desc file for
+                        creating a PCSI based package.
+
+build_gnv_curl_pcsi_text.com
+                        This procedure builds the pcsi$text file for
+                        creating a PCSI based package.
+
+build_gnv_curl_release_notes.com
+                        This procedure creates the release notes for
+                        a PCSI kit based on curl_release_note_start.txt,
+                        this readme file, and the curl_gnv_build_steps.txt
+
+build_libcurl_pc.com    Procedure to create a libcurl.pc file.
+
+build_vms.com           DCL based build procedure.
+
+clean_gnv_curl.com      This procedure cleans up the files generated by
+                        a GNV based build.
+
+config_h.com            DCL based procedure used by build_vms.com
+                        to run generate the curl_config.h file.
+                        This is a generic procedure that does most
+                        of the work for generating config.h files.
+
+compare_curl_source.com Procedure to compare the working directory
+                        with a repository directory or a backup staging
+                        directory.
+
+curl_crtl_init.c        A special pre-initialization routine to for
+                        programs to behave more Unix like when run
+                        under GNV.
+
+curl_gnv_build_steps.txt
+                        Detailed instructions on how to built curl using
+                        GNV and how to build the libcurl shared image and
+                        PCSI kit.
+
+curl_release_note_start.txt
+                        The first part of the curl release notes.
+
+curl_startup.com        A procedure run at VMS startup to install the
+                        libcurl shared image and to set up the needed
+                        logical names.
 
 
-build_vms.com           Build procedure.
-config-vms.h            VMS-specific config.h.
 curlmsg.h               C header defining cURL status code macros.
 curlmsg.h               C header defining cURL status code macros.
+
 curlmsg.msg             Error message source for curlmsg.h and curlmsg.sdl.
 curlmsg.msg             Error message source for curlmsg.h and curlmsg.sdl.
+
 curlmsg.sdl             SDL source defining cURL status code constants.
 curlmsg.sdl             SDL source defining cURL status code constants.
+
 curlmsg_vms.h           Mapping of cURL status codes to VMS-form codes.
 curlmsg_vms.h           Mapping of cURL status codes to VMS-form codes.
-hpssl_alpha.opt         LINK options file for HP SSL on Alpha.
-hpssl_ia64.opt          LINK options file for HP SSL on IA64.
-hpssl_vax.opt           LINK options file for HP SSL on VAX.
-ldap.opt                LINK options file for LDAP.
+
+generate_config_vms_h_curl.com
+                        DCL procedure to generate the curl specific
+                        definitions for curl_config.h that config_h.com
+                        can not properly generate.
+
+generate_vax_transfer.com
+                        DCL procedure to read an Alpha/IA64 symbol vector
+                        linker option file and generate the VAX transfer
+                        vector modules.
+
+gnv_conftest.c_first    A helper file for the configure script.
+
+gnv_curl_configure.sh   A script to run the configure script with the
+                        options needed for VMS.
+
+gnv_libcurl_symbols.opt The symbol vectors needed for Alpha and IA64
+                        libcurl shared image.
+
+gnv_link_curl.com       Links the libcurl shared image and then links a curl
+                        image to use the libcurl.
+
+macro32_exactcase.patch The patch file needed to modify VAX Macro32 to be
+                        case sensitive and case preserving.
+
 Makefile.am             cURL kit file list for this directory.
 Makefile.am             cURL kit file list for this directory.
+
 Makefile.in             cURL kit makefile source for this directory.
 Makefile.in             cURL kit makefile source for this directory.
-openssl_alpha.opt       LINK options file for OpenSSL on Alpha.
-openssl_ia64.opt        LINK options file for OpenSSL on IA64.
-openssl_ssl_alpha.opt   LINK options file for OpenSSL (SSL_ prefix) on Alpha.
-openssl_ssl_ia64.opt    LINK options file for OpenSSL (SSL_ prefix) on IA64.
-openssl_ssl_vax.opt     LINK options file for OpenSSL (SSL_ prefix) on VAX.
-openssl_vax.opt         LINK options file for OpenSSL on VAX.
+
+make_gnv_curl_install.sh
+                        Script to do a make install using GNV after running
+                        the configure script.
+
+make_pcsi_curl_kit_name.com
+                        This generates the name of the PCSI kit based on
+                        the version of curl being built.
+
+pcsi_gnv_curl_file_list.txt
+                        This is a text file describing what files should
+                        be included in a PCSI kit.
+
+pcsi_product_gnv_curl.com
+                        This generates the PCSI kit after the libcurl
+                        shared image has been made.
+
 readme.                 This file.
 
 readme.                 This file.
 
+report_openssl_version.c
+                        Program to check that the openssl version is new
+                        enough for building a shared libcurl image.
+
+setup_gnv_curl_build.com
+                        This procedure sets up symbols and logical names
+                        for a GNV build environment and also copies some
+                        helper files.
+
+stage_curl_install.com  This procedure sets up new_gnu: directory tree to
+                        for testing the install and building the PCSI kit.
+                        It takes a "remove" option to remove all the staged
+                        files.
+
+vms_eco_level.h         This sets the ECO level for the PCSI kit name.
+
 
 How to Build:
 
 
 How to Build:
 
-The (brute-force) builder is [.packages.vms]build_vms.com.  Comments in
-this procedure describe various optional parameters which enable or
-disable optional program features, or which control the build in other
-ways.  Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...) should be
-produced in an architecture-specific subdirectory under this directory
-([.ALPHA], [.IA64], [.VAX]).
+The GNV based build and the DCL based build procedures are not compatible
+and you must make sure that none of the build files are present before
+running a different type of build.  Use the "REALCLEAN" option for
+BUILD_VMS.COM and the "REALCLEAN" option for clean_gnv_curl.com.
+
+The (brute-force) DCL based builder is [.packages.vms]build_vms.com.
+Comments in this procedure describe various optional parameters which
+enable or disable optional program features, or which control the build
+in other ways.  Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...)
+should be produced in an architecture-specific subdirectory under this
+directory ([.ALPHA], [.IA64], [.VAX]).
+
+The file curl_gnv_build_steps.txt contains information on buildling using
+the GNV tool kit, building a shared libcurl, and producting a PCSI kit for
+distribution.  The curl_gnv_build_steps.text is included in the release
+notes file of the PCSI kit.
+
+The building with 64 bit pointers does not currently work.
+
+The build procedure will detect if HP OpenSSL, LDAP, and Kerberos are
+installed and default to building with them.
+
+The build procedure will also detect if a compatible ZLIB shared image
+is installed from a PCSI kit and default to using it.
 
    Example build commands:
 
 
    Example build commands:
 
@@ -58,13 +187,42 @@ produced in an architecture-specific subdirectory under this directory
       @ [.packages.vms]build_vms.com LARGE LDAP
       submit /noprint [.packages.vms]build_vms.com /param = (LARGE, LDAP)
 
       @ [.packages.vms]build_vms.com LARGE LDAP
       submit /noprint [.packages.vms]build_vms.com /param = (LARGE, LDAP)
 
+The build_vms.com procedure does not build the shared image file or the PCSI
+kit.  If you have built a curl with ZLIB and HPSSL support as well as if
+LDAP and Kerberos installed, you can use the GNV_LINK_CURL.COM file.
+
+The GNV_LINK_CURL.COM contains information on how to link and run with a newer
+version of HP SSL than what may be install on an Alpha or IA64 based system.
+
+To build the PCSI kit, follow the the instructions in the file
+curl_gnv_build_steps.txt.
 
 Other Notes:
 
 
 Other Notes:
 
+This release fixes known bugs #22, and #57 in the [curl.docs]known_bugs.
+file.
+
+The libcurl formdata.c module and Curl tools post form now have some
+understanding of VMS file types.  Files will be posted in STREAM_LF format.
+
+The Curl tool now has some understanding of VMS file types and will upload the
+files in STREAM_LF fomat.
+
+When CURL is uploading a VARIABLE format VMS file, it is less efficient as in
+order to get the file size, it will first read the entire file once, and then
+read the file again for the actual upload.
+
+The Curl tool will now always download files into STREAM_LF format.  Even if a
+file by that name with a different format already exists.  This is needed to
+allow interrupted downloads to be continued.
+
+
+The libcurl file module still does not understand VMS file types and requires
+the input files to be in STREAM_LF to work propery.
+
 The test suites are not supported as of 7.11.0.
 
 The curlmsg.sdl and curlmsg.h files are generated from curlmsg.msg.
 This is not done automatically, since the .MSG file is a hand edit
 of the relevant stuff from the curl.h file.  If you want to do this
 yourself you'll need the SDL package from the freeware collection.
 The test suites are not supported as of 7.11.0.
 
 The curlmsg.sdl and curlmsg.h files are generated from curlmsg.msg.
 This is not done automatically, since the .MSG file is a hand edit
 of the relevant stuff from the curl.h file.  If you want to do this
 yourself you'll need the SDL package from the freeware collection.
-
index d6a80ac..beec733 100644 (file)
@@ -269,26 +269,14 @@ $ endif
 $!
 $!
 $!
 $!
 $!
 $!
-$! Need to build the GNV common init module.
+$! Need to build the common init module.
 $!-------------------------------------------
 $!-------------------------------------------
-$ if f$search("[vms_common]vms_crtl_init_unix.obj") .nes. ""
+$ init_obj = "[.packages.vms]curl_crtl_init.obj"
+$ if f$search(init_obj) .eqs. ""
 $ then
 $ then
-$!   Common copy, which should be more up to date than the one in the kit.
-$!------------------------------------------------------------------------
-$    define/job gnv_vms_common [vms_common]
-$    write sys$output "Using common vms_crtl_init_unix.obj"
-$ else
-$!   For some reason the common files are missing so use the local copies
-$!------------------------------------------------------------------------
-$    define/job gnv_vms_common 'default_dir'
-$    init_obj = "gnv_vms_common:vms_crtl_init_unix.obj"
-$    if f$search(init_obj) .eqs. ""
-$    then
-$       cc'cflags' 'default_dir'vms_crtl_init.c-
-            /define=GNV_UNIX_TOOL=1/obj='init_obj'
-$       purge 'init_obj'
-$       rename 'init_obj' ;1
-$    endif
+$   cc'cflags' 'default_dir'curl_crtl_init.c/obj='init_obj'
+$   purge 'init_obj'
+$   rename 'init_obj' ;1
 $ endif
 $!
 $all_exit:
 $ endif
 $!
 $all_exit: