xref: /third_party/curl/packages/vms/readme (revision 13498266)
113498266Sopenharmony_ci                             _   _ ____  _
213498266Sopenharmony_ci                         ___| | | |  _ \| |
313498266Sopenharmony_ci                        / __| | | | |_) | |
413498266Sopenharmony_ci                       ( (__| |_| |  _ <| |___
513498266Sopenharmony_ci                        \___|\___/|_| \_\_____|
613498266Sopenharmony_ci                             for OpenVMS
713498266Sopenharmony_ci
813498266Sopenharmony_ciHistory:
913498266Sopenharmony_ci
1013498266Sopenharmony_ci 9-MAR-2004, Created this readme. file.  Marty Kuhrt (MSK).
1113498266Sopenharmony_ci15-MAR-2004, MSK, Updated to reflect the new files in this directory.
1213498266Sopenharmony_ci14-FEB-2005, MSK, removed config-vms.h_with* file comments
1313498266Sopenharmony_ci10-FEB-2010, SMS. General update.
1413498266Sopenharmony_ci14-Jul-2013, JEM, General Update, add GNV build information.
1513498266Sopenharmony_ci
1613498266Sopenharmony_ci
1713498266Sopenharmony_ciThe release notes installed by the PCSI kit consist of this file and the
1813498266Sopenharmony_cicurl_gnv_build_steps.txt and other useful information.
1913498266Sopenharmony_ci
2013498266Sopenharmony_ciPrerequisites:
2113498266Sopenharmony_ci
2213498266Sopenharmony_ciOpenVMS V7.0 or later (any platform)
2313498266Sopenharmony_ciDECC V6.5 or later
2413498266Sopenharmony_ciOpenSSL or hp SSL, if you want SSL support
2513498266Sopenharmony_ci
2613498266Sopenharmony_ciWhat is Here:
2713498266Sopenharmony_ci
2813498266Sopenharmony_ciThis directory contains the following files for a DCL based build.
2913498266Sopenharmony_ci
3013498266Sopenharmony_cibackup_gnv_curl_src.com  This procedure backs up the source modules for
3113498266Sopenharmony_ci                        creating a PCSI kit.
3213498266Sopenharmony_ci
3313498266Sopenharmony_cibuild_curl-config_script.com
3413498266Sopenharmony_ci                        Procedure to create the curl-config script.
3513498266Sopenharmony_ci
3613498266Sopenharmony_cibuild_gnv_curl.com      This procedure does a build of curl using the
3713498266Sopenharmony_ci                        GNV utilities and then uses DCL tools to build
3813498266Sopenharmony_ci                        the libcurl shared image.  The setup_gnv_curl_build.com
3913498266Sopenharmony_ci                        procedure must be run first.
4013498266Sopenharmony_ci
4113498266Sopenharmony_cibuild_gnv_curl_pcsi_desc.com
4213498266Sopenharmony_ci                        This procedure builds the pcsi$desc file for
4313498266Sopenharmony_ci                        creating a PCSI based package.
4413498266Sopenharmony_ci
4513498266Sopenharmony_cibuild_gnv_curl_pcsi_text.com
4613498266Sopenharmony_ci                        This procedure builds the pcsi$text file for
4713498266Sopenharmony_ci                        creating a PCSI based package.
4813498266Sopenharmony_ci
4913498266Sopenharmony_cibuild_gnv_curl_release_notes.com
5013498266Sopenharmony_ci                        This procedure creates the release notes for
5113498266Sopenharmony_ci                        a PCSI kit based on curl_release_note_start.txt,
5213498266Sopenharmony_ci                        this readme file, and the curl_gnv_build_steps.txt
5313498266Sopenharmony_ci
5413498266Sopenharmony_cibuild_libcurl_pc.com    Procedure to create a libcurl.pc file.
5513498266Sopenharmony_ci
5613498266Sopenharmony_cibuild_vms.com           DCL based build procedure.
5713498266Sopenharmony_ci
5813498266Sopenharmony_ciclean_gnv_curl.com      This procedure cleans up the files generated by
5913498266Sopenharmony_ci                        a GNV based build.
6013498266Sopenharmony_ci
6113498266Sopenharmony_ciconfig_h.com            DCL based procedure used by build_vms.com
6213498266Sopenharmony_ci                        to run generate the curl_config.h file.
6313498266Sopenharmony_ci                        This is a generic procedure that does most
6413498266Sopenharmony_ci                        of the work for generating config.h files.
6513498266Sopenharmony_ci
6613498266Sopenharmony_cicompare_curl_source.com Procedure to compare the working directory
6713498266Sopenharmony_ci                        with a repository directory or a backup staging
6813498266Sopenharmony_ci                        directory.
6913498266Sopenharmony_ci
7013498266Sopenharmony_cicurl_crtl_init.c        A special pre-initialization routine to for
7113498266Sopenharmony_ci                        programs to behave more Unix like when run
7213498266Sopenharmony_ci                        under GNV.
7313498266Sopenharmony_ci
7413498266Sopenharmony_cicurl_gnv_build_steps.txt
7513498266Sopenharmony_ci                        Detailed instructions on how to built curl using
7613498266Sopenharmony_ci                        GNV and how to build the libcurl shared image and
7713498266Sopenharmony_ci                        PCSI kit.
7813498266Sopenharmony_ci
7913498266Sopenharmony_cicurl_release_note_start.txt
8013498266Sopenharmony_ci                        The first part of the curl release notes.
8113498266Sopenharmony_ci
8213498266Sopenharmony_cicurl_startup.com        A procedure run at VMS startup to install the
8313498266Sopenharmony_ci                        libcurl shared image and to set up the needed
8413498266Sopenharmony_ci                        logical names.
8513498266Sopenharmony_ci
8613498266Sopenharmony_cicurlmsg.h               C header defining curl status code macros.
8713498266Sopenharmony_ci
8813498266Sopenharmony_cicurlmsg.msg             Error message source for curlmsg.h and curlmsg.sdl.
8913498266Sopenharmony_ci
9013498266Sopenharmony_cicurlmsg.sdl             SDL source defining curl status code constants.
9113498266Sopenharmony_ci
9213498266Sopenharmony_cicurlmsg_vms.h           Mapping of curl status codes to VMS-form codes.
9313498266Sopenharmony_ci
9413498266Sopenharmony_cigenerate_config_vms_h_curl.com
9513498266Sopenharmony_ci                        DCL procedure to generate the curl specific
9613498266Sopenharmony_ci                        definitions for curl_config.h that config_h.com
9713498266Sopenharmony_ci                        can not properly generate.
9813498266Sopenharmony_ci
9913498266Sopenharmony_cigenerate_vax_transfer.com
10013498266Sopenharmony_ci                        DCL procedure to read an Alpha/IA64 symbol vector
10113498266Sopenharmony_ci                        linker option file and generate the VAX transfer
10213498266Sopenharmony_ci                        vector modules.
10313498266Sopenharmony_ci
10413498266Sopenharmony_cignv_conftest.c_first    A helper file for the configure script.
10513498266Sopenharmony_ci
10613498266Sopenharmony_cignv_curl_configure.sh   A script to run the configure script with the
10713498266Sopenharmony_ci                        options needed for VMS.
10813498266Sopenharmony_ci
10913498266Sopenharmony_cignv_libcurl_symbols.opt The symbol vectors needed for Alpha and IA64
11013498266Sopenharmony_ci                        libcurl shared image.
11113498266Sopenharmony_ci
11213498266Sopenharmony_cignv_link_curl.com       Links the libcurl shared image and then links a curl
11313498266Sopenharmony_ci                        image to use the libcurl.
11413498266Sopenharmony_ci
11513498266Sopenharmony_cimacro32_exactcase.patch The patch file needed to modify VAX Macro32 to be
11613498266Sopenharmony_ci                        case sensitive and case preserving.
11713498266Sopenharmony_ci
11813498266Sopenharmony_ciMakefile.am             curl kit file list for this directory.
11913498266Sopenharmony_ci
12013498266Sopenharmony_ciMakefile.in             curl kit makefile source for this directory.
12113498266Sopenharmony_ci
12213498266Sopenharmony_cimake_gnv_curl_install.sh
12313498266Sopenharmony_ci                        Script to do a make install using GNV after running
12413498266Sopenharmony_ci                        the configure script.
12513498266Sopenharmony_ci
12613498266Sopenharmony_cimake_pcsi_curl_kit_name.com
12713498266Sopenharmony_ci                        This generates the name of the PCSI kit based on
12813498266Sopenharmony_ci                        the version of curl being built.
12913498266Sopenharmony_ci
13013498266Sopenharmony_cipcsi_gnv_curl_file_list.txt
13113498266Sopenharmony_ci                        This is a text file describing what files should
13213498266Sopenharmony_ci                        be included in a PCSI kit.
13313498266Sopenharmony_ci
13413498266Sopenharmony_cipcsi_product_gnv_curl.com
13513498266Sopenharmony_ci                        This generates the PCSI kit after the libcurl
13613498266Sopenharmony_ci                        shared image has been made.
13713498266Sopenharmony_ci
13813498266Sopenharmony_cireadme.                 This file.
13913498266Sopenharmony_ci
14013498266Sopenharmony_cireport_openssl_version.c
14113498266Sopenharmony_ci                        Program to check that the openssl version is new
14213498266Sopenharmony_ci                        enough for building a shared libcurl image.
14313498266Sopenharmony_ci
14413498266Sopenharmony_cisetup_gnv_curl_build.com
14513498266Sopenharmony_ci                        This procedure sets up symbols and logical names
14613498266Sopenharmony_ci                        for a GNV build environment and also copies some
14713498266Sopenharmony_ci                        helper files.
14813498266Sopenharmony_ci
14913498266Sopenharmony_cistage_curl_install.com  This procedure sets up new_gnu: directory tree to
15013498266Sopenharmony_ci                        for testing the install and building the PCSI kit.
15113498266Sopenharmony_ci                        It takes a "remove" option to remove all the staged
15213498266Sopenharmony_ci                        files.
15313498266Sopenharmony_ci
15413498266Sopenharmony_civms_eco_level.h         This sets the ECO level for the PCSI kit name.
15513498266Sopenharmony_ci
15613498266Sopenharmony_ci
15713498266Sopenharmony_ciHow to Build:
15813498266Sopenharmony_ci
15913498266Sopenharmony_ciThe GNV based build and the DCL based build procedures are not compatible
16013498266Sopenharmony_ciand you must make sure that none of the build files are present before
16113498266Sopenharmony_cirunning a different type of build.  Use the "REALCLEAN" option for
16213498266Sopenharmony_ciBUILD_VMS.COM and the "REALCLEAN" option for clean_gnv_curl.com.
16313498266Sopenharmony_ci
16413498266Sopenharmony_ciThe (brute-force) DCL based builder is [.packages.vms]build_vms.com.
16513498266Sopenharmony_ciComments in this procedure describe various optional parameters which
16613498266Sopenharmony_cienable or disable optional program features, or which control the build
16713498266Sopenharmony_ciin other ways.  Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...)
16813498266Sopenharmony_cishould be produced in an architecture-specific subdirectory under this
16913498266Sopenharmony_cidirectory ([.ALPHA], [.IA64], [.VAX]).
17013498266Sopenharmony_ci
17113498266Sopenharmony_ciThe file curl_gnv_build_steps.txt contains information on building using
17213498266Sopenharmony_cithe GNV tool kit, building a shared libcurl, and producing a PCSI kit for
17313498266Sopenharmony_cidistribution.  The curl_gnv_build_steps.text is included in the release
17413498266Sopenharmony_cinotes file of the PCSI kit.
17513498266Sopenharmony_ci
17613498266Sopenharmony_ciThe building with 64 bit pointers does not currently work.
17713498266Sopenharmony_ci
17813498266Sopenharmony_ciThe build procedure will detect if HP OpenSSL, LDAP, and Kerberos are
17913498266Sopenharmony_ciinstalled and default to building with them.
18013498266Sopenharmony_ci
18113498266Sopenharmony_ciThe build procedure will also detect if a compatible ZLIB shared image
18213498266Sopenharmony_ciis installed from a PCSI kit and default to using it.
18313498266Sopenharmony_ci
18413498266Sopenharmony_ci   Example build commands:
18513498266Sopenharmony_ci
18613498266Sopenharmony_ci      @ [.packages.vms]build_vms.com CLEAN
18713498266Sopenharmony_ci      @ [.packages.vms]build_vms.com LARGE LDAP
18813498266Sopenharmony_ci      submit /noprint [.packages.vms]build_vms.com /param = (LARGE, LDAP)
18913498266Sopenharmony_ci
19013498266Sopenharmony_ciThe build_vms.com procedure does not build the shared image file or the PCSI
19113498266Sopenharmony_cikit.  If you have built a curl with ZLIB and HPSSL support as well as if
19213498266Sopenharmony_ciLDAP and Kerberos installed, you can use the GNV_LINK_CURL.COM file.
19313498266Sopenharmony_ci
19413498266Sopenharmony_ciThe GNV_LINK_CURL.COM contains information on how to link and run with a newer
19513498266Sopenharmony_civersion of HP SSL than what may be install on an Alpha or IA64 based system.
19613498266Sopenharmony_ci
19713498266Sopenharmony_ciTo build the PCSI kit, follow the instructions in the file
19813498266Sopenharmony_cicurl_gnv_build_steps.txt.
19913498266Sopenharmony_ci
20013498266Sopenharmony_ciOther Notes:
20113498266Sopenharmony_ci
20213498266Sopenharmony_ciThis release fixes known bugs #22, and #57 in the [curl.docs]known_bugs.
20313498266Sopenharmony_cifile.
20413498266Sopenharmony_ci
20513498266Sopenharmony_ciThe libcurl formdata.c module and Curl tools post form now have some
20613498266Sopenharmony_ciunderstanding of VMS file types.  Files will be posted in STREAM_LF format.
20713498266Sopenharmony_ci
20813498266Sopenharmony_ciThe Curl tool now has some understanding of VMS file types and will upload the
20913498266Sopenharmony_cifiles in STREAM_LF format.
21013498266Sopenharmony_ci
21113498266Sopenharmony_ciWhen CURL is uploading a VARIABLE format VMS file, it is less efficient as in
21213498266Sopenharmony_ciorder to get the file size, it will first read the entire file once, and then
21313498266Sopenharmony_ciread the file again for the actual upload.
21413498266Sopenharmony_ci
21513498266Sopenharmony_ciThe Curl tool will now always download files into STREAM_LF format.  Even if a
21613498266Sopenharmony_cifile by that name with a different format already exists.  This is needed to
21713498266Sopenharmony_ciallow interrupted downloads to be continued.
21813498266Sopenharmony_ci
21913498266Sopenharmony_ci
22013498266Sopenharmony_ciThe libcurl file module still does not understand VMS file types and requires
22113498266Sopenharmony_cithe input files to be in STREAM_LF to work property.
22213498266Sopenharmony_ci
22313498266Sopenharmony_ciThe test suites are not supported as of 7.11.0.
22413498266Sopenharmony_ci
22513498266Sopenharmony_ciThe curlmsg.sdl and curlmsg.h files are generated from curlmsg.msg.
22613498266Sopenharmony_ciThis is not done automatically, since the .MSG file is a hand edit
22713498266Sopenharmony_ciof the relevant stuff from the curl.h file.  If you want to do this
22813498266Sopenharmony_ciyourself you'll need the SDL package from the freeware collection.
229