init repo.
This commit is contained in:
59
third_party/curl/packages/vms/Makefile.am
vendored
Normal file
59
third_party/curl/packages/vms/Makefile.am
vendored
Normal file
@ -0,0 +1,59 @@
|
||||
#***************************************************************************
|
||||
# _ _ ____ _
|
||||
# Project ___| | | | _ \| |
|
||||
# / __| | | | |_) | |
|
||||
# | (__| |_| | _ <| |___
|
||||
# \___|\___/|_| \_\_____|
|
||||
#
|
||||
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
#
|
||||
# This software is licensed as described in the file COPYING, which
|
||||
# you should have received as part of this distribution. The terms
|
||||
# are also available at https://curl.se/docs/copyright.html.
|
||||
#
|
||||
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
# copies of the Software, and permit persons to whom the Software is
|
||||
# furnished to do so, under the terms of the COPYING file.
|
||||
#
|
||||
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
# KIND, either express or implied.
|
||||
#
|
||||
# SPDX-License-Identifier: curl
|
||||
#
|
||||
###########################################################################
|
||||
EXTRA_DIST = \
|
||||
backup_gnv_curl_src.com \
|
||||
build_curl-config_script.com \
|
||||
build_gnv_curl.com \
|
||||
build_gnv_curl_pcsi_desc.com \
|
||||
build_gnv_curl_pcsi_text.com \
|
||||
build_gnv_curl_release_notes.com \
|
||||
build_libcurl_pc.com \
|
||||
build_vms.com \
|
||||
clean_gnv_curl.com \
|
||||
compare_curl_source.com \
|
||||
config_h.com \
|
||||
curl_crtl_init.c \
|
||||
curl_gnv_build_steps.txt \
|
||||
curl_release_note_start.txt \
|
||||
curl_startup.com \
|
||||
curlmsg.h \
|
||||
curlmsg.msg \
|
||||
curlmsg.sdl \
|
||||
curlmsg_vms.h \
|
||||
generate_config_vms_h_curl.com \
|
||||
generate_vax_transfer.com \
|
||||
gnv_conftest.c_first \
|
||||
gnv_curl_configure.sh \
|
||||
gnv_libcurl_symbols.opt \
|
||||
gnv_link_curl.com \
|
||||
macro32_exactcase.patch \
|
||||
make_gnv_curl_install.sh \
|
||||
make_pcsi_curl_kit_name.com \
|
||||
pcsi_gnv_curl_file_list.txt \
|
||||
pcsi_product_gnv_curl.com \
|
||||
readme \
|
||||
report_openssl_version.c \
|
||||
setup_gnv_curl_build.com \
|
||||
stage_curl_install.com \
|
||||
vms_eco_level.h
|
628
third_party/curl/packages/vms/Makefile.in
vendored
Normal file
628
third_party/curl/packages/vms/Makefile.in
vendored
Normal file
@ -0,0 +1,628 @@
|
||||
# Makefile.in generated by automake 1.16.5 from Makefile.am.
|
||||
# @configure_input@
|
||||
|
||||
# Copyright (C) 1994-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This Makefile.in is free software; the Free Software Foundation
|
||||
# gives unlimited permission to copy and/or distribute it,
|
||||
# with or without modifications, as long as this notice is preserved.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
|
||||
# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
|
||||
# PARTICULAR PURPOSE.
|
||||
|
||||
@SET_MAKE@
|
||||
VPATH = @srcdir@
|
||||
am__is_gnu_make = { \
|
||||
if test -z '$(MAKELEVEL)'; then \
|
||||
false; \
|
||||
elif test -n '$(MAKE_HOST)'; then \
|
||||
true; \
|
||||
elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
|
||||
true; \
|
||||
else \
|
||||
false; \
|
||||
fi; \
|
||||
}
|
||||
am__make_running_with_option = \
|
||||
case $${target_option-} in \
|
||||
?) ;; \
|
||||
*) echo "am__make_running_with_option: internal error: invalid" \
|
||||
"target option '$${target_option-}' specified" >&2; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
has_opt=no; \
|
||||
sane_makeflags=$$MAKEFLAGS; \
|
||||
if $(am__is_gnu_make); then \
|
||||
sane_makeflags=$$MFLAGS; \
|
||||
else \
|
||||
case $$MAKEFLAGS in \
|
||||
*\\[\ \ ]*) \
|
||||
bs=\\; \
|
||||
sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
|
||||
| sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
|
||||
esac; \
|
||||
fi; \
|
||||
skip_next=no; \
|
||||
strip_trailopt () \
|
||||
{ \
|
||||
flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
|
||||
}; \
|
||||
for flg in $$sane_makeflags; do \
|
||||
test $$skip_next = yes && { skip_next=no; continue; }; \
|
||||
case $$flg in \
|
||||
*=*|--*) continue;; \
|
||||
-*I) strip_trailopt 'I'; skip_next=yes;; \
|
||||
-*I?*) strip_trailopt 'I';; \
|
||||
-*O) strip_trailopt 'O'; skip_next=yes;; \
|
||||
-*O?*) strip_trailopt 'O';; \
|
||||
-*l) strip_trailopt 'l'; skip_next=yes;; \
|
||||
-*l?*) strip_trailopt 'l';; \
|
||||
-[dEDm]) skip_next=yes;; \
|
||||
-[JT]) skip_next=yes;; \
|
||||
esac; \
|
||||
case $$flg in \
|
||||
*$$target_option*) has_opt=yes; break;; \
|
||||
esac; \
|
||||
done; \
|
||||
test $$has_opt = yes
|
||||
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
|
||||
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
|
||||
pkgdatadir = $(datadir)/@PACKAGE@
|
||||
pkgincludedir = $(includedir)/@PACKAGE@
|
||||
pkglibdir = $(libdir)/@PACKAGE@
|
||||
pkglibexecdir = $(libexecdir)/@PACKAGE@
|
||||
am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
|
||||
install_sh_DATA = $(install_sh) -c -m 644
|
||||
install_sh_PROGRAM = $(install_sh) -c
|
||||
install_sh_SCRIPT = $(install_sh) -c
|
||||
INSTALL_HEADER = $(INSTALL_DATA)
|
||||
transform = $(program_transform_name)
|
||||
NORMAL_INSTALL = :
|
||||
PRE_INSTALL = :
|
||||
POST_INSTALL = :
|
||||
NORMAL_UNINSTALL = :
|
||||
PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
subdir = packages/vms
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-amissl.m4 \
|
||||
$(top_srcdir)/m4/curl-bearssl.m4 \
|
||||
$(top_srcdir)/m4/curl-compilers.m4 \
|
||||
$(top_srcdir)/m4/curl-confopts.m4 \
|
||||
$(top_srcdir)/m4/curl-functions.m4 \
|
||||
$(top_srcdir)/m4/curl-gnutls.m4 \
|
||||
$(top_srcdir)/m4/curl-mbedtls.m4 \
|
||||
$(top_srcdir)/m4/curl-openssl.m4 \
|
||||
$(top_srcdir)/m4/curl-override.m4 \
|
||||
$(top_srcdir)/m4/curl-reentrant.m4 \
|
||||
$(top_srcdir)/m4/curl-rustls.m4 \
|
||||
$(top_srcdir)/m4/curl-schannel.m4 \
|
||||
$(top_srcdir)/m4/curl-sectransp.m4 \
|
||||
$(top_srcdir)/m4/curl-sysconfig.m4 \
|
||||
$(top_srcdir)/m4/curl-wolfssl.m4 $(top_srcdir)/m4/libtool.m4 \
|
||||
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
|
||||
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
|
||||
$(top_srcdir)/m4/xc-am-iface.m4 \
|
||||
$(top_srcdir)/m4/xc-cc-check.m4 \
|
||||
$(top_srcdir)/m4/xc-lt-iface.m4 \
|
||||
$(top_srcdir)/m4/xc-translit.m4 \
|
||||
$(top_srcdir)/m4/xc-val-flgs.m4 \
|
||||
$(top_srcdir)/m4/zz40-xc-ovr.m4 \
|
||||
$(top_srcdir)/m4/zz50-xc-ovr.m4 \
|
||||
$(top_srcdir)/m4/zz60-xc-ovr.m4 $(top_srcdir)/acinclude.m4 \
|
||||
$(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
|
||||
mkinstalldirs = $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_VPATH_FILES =
|
||||
AM_V_P = $(am__v_P_@AM_V@)
|
||||
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
|
||||
am__v_P_0 = false
|
||||
am__v_P_1 = :
|
||||
AM_V_GEN = $(am__v_GEN_@AM_V@)
|
||||
am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
|
||||
am__v_GEN_0 = @echo " GEN " $@;
|
||||
am__v_GEN_1 =
|
||||
AM_V_at = $(am__v_at_@AM_V@)
|
||||
am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
|
||||
am__v_at_0 = @
|
||||
am__v_at_1 =
|
||||
SOURCES =
|
||||
DIST_SOURCES =
|
||||
am__can_run_installinfo = \
|
||||
case $$AM_UPDATE_INFO_DIR in \
|
||||
n|no|NO) false;; \
|
||||
*) (install-info --version) >/dev/null 2>&1;; \
|
||||
esac
|
||||
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
|
||||
am__DIST_COMMON = $(srcdir)/Makefile.in
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
ACLOCAL = @ACLOCAL@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
APACHECTL = @APACHECTL@
|
||||
APXS = @APXS@
|
||||
AR = @AR@
|
||||
AR_FLAGS = @AR_FLAGS@
|
||||
AS = @AS@
|
||||
AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BLANK_AT_MAKETIME = @BLANK_AT_MAKETIME@
|
||||
CADDY = @CADDY@
|
||||
CC = @CC@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
|
||||
CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CPPFLAG_CURL_STATICLIB = @CPPFLAG_CURL_STATICLIB@
|
||||
CSCOPE = @CSCOPE@
|
||||
CTAGS = @CTAGS@
|
||||
CURLVERSION = @CURLVERSION@
|
||||
CURL_CA_BUNDLE = @CURL_CA_BUNDLE@
|
||||
CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@
|
||||
CURL_DISABLE_DICT = @CURL_DISABLE_DICT@
|
||||
CURL_DISABLE_FILE = @CURL_DISABLE_FILE@
|
||||
CURL_DISABLE_FTP = @CURL_DISABLE_FTP@
|
||||
CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@
|
||||
CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@
|
||||
CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@
|
||||
CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@
|
||||
CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@
|
||||
CURL_DISABLE_MQTT = @CURL_DISABLE_MQTT@
|
||||
CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@
|
||||
CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@
|
||||
CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@
|
||||
CURL_DISABLE_SMB = @CURL_DISABLE_SMB@
|
||||
CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@
|
||||
CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@
|
||||
CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@
|
||||
CURL_LT_SHLIB_VERSIONED_FLAVOUR = @CURL_LT_SHLIB_VERSIONED_FLAVOUR@
|
||||
CURL_NETWORK_AND_TIME_LIBS = @CURL_NETWORK_AND_TIME_LIBS@
|
||||
CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@
|
||||
CURL_WITH_MULTI_SSL = @CURL_WITH_MULTI_SSL@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFAULT_SSL_BACKEND = @DEFAULT_SSL_BACKEND@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
ENABLE_SHARED = @ENABLE_SHARED@
|
||||
ENABLE_STATIC = @ENABLE_STATIC@
|
||||
ETAGS = @ETAGS@
|
||||
EXEEXT = @EXEEXT@
|
||||
FGREP = @FGREP@
|
||||
FILECMD = @FILECMD@
|
||||
FISH_FUNCTIONS_DIR = @FISH_FUNCTIONS_DIR@
|
||||
GCOV = @GCOV@
|
||||
GREP = @GREP@
|
||||
HAVE_BROTLI = @HAVE_BROTLI@
|
||||
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
|
||||
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
|
||||
HAVE_LIBZ = @HAVE_LIBZ@
|
||||
HAVE_OPENSSL_QUIC = @HAVE_OPENSSL_QUIC@
|
||||
HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
|
||||
HAVE_PROTO_BSDSOCKET_H = @HAVE_PROTO_BSDSOCKET_H@
|
||||
HAVE_ZSTD = @HAVE_ZSTD@
|
||||
HTTPD = @HTTPD@
|
||||
HTTPD_NGHTTPX = @HTTPD_NGHTTPX@
|
||||
IDN_ENABLED = @IDN_ENABLED@
|
||||
INSTALL = @INSTALL@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
IPV6_ENABLED = @IPV6_ENABLED@
|
||||
LCOV = @LCOV@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBCURL_LIBS = @LIBCURL_LIBS@
|
||||
LIBCURL_NO_SHARED = @LIBCURL_NO_SHARED@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
|
||||
MAINT = @MAINT@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MKDIR_P = @MKDIR_P@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_URL = @PACKAGE_URL@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PERL = @PERL@
|
||||
PKGADD_NAME = @PKGADD_NAME@
|
||||
PKGADD_PKG = @PKGADD_PKG@
|
||||
PKGADD_VENDOR = @PKGADD_VENDOR@
|
||||
PKGCONFIG = @PKGCONFIG@
|
||||
RANDOM_FILE = @RANDOM_FILE@
|
||||
RANLIB = @RANLIB@
|
||||
RC = @RC@
|
||||
REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@
|
||||
SED = @SED@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SSL_BACKENDS = @SSL_BACKENDS@
|
||||
SSL_ENABLED = @SSL_ENABLED@
|
||||
SSL_LIBS = @SSL_LIBS@
|
||||
STRIP = @STRIP@
|
||||
SUPPORT_FEATURES = @SUPPORT_FEATURES@
|
||||
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
|
||||
TEST_NGHTTPX = @TEST_NGHTTPX@
|
||||
USE_ARES = @USE_ARES@
|
||||
USE_BEARSSL = @USE_BEARSSL@
|
||||
USE_GNUTLS = @USE_GNUTLS@
|
||||
USE_HYPER = @USE_HYPER@
|
||||
USE_LIBPSL = @USE_LIBPSL@
|
||||
USE_LIBRTMP = @USE_LIBRTMP@
|
||||
USE_LIBSSH = @USE_LIBSSH@
|
||||
USE_LIBSSH2 = @USE_LIBSSH2@
|
||||
USE_MBEDTLS = @USE_MBEDTLS@
|
||||
USE_MSH3 = @USE_MSH3@
|
||||
USE_NGHTTP2 = @USE_NGHTTP2@
|
||||
USE_NGHTTP3 = @USE_NGHTTP3@
|
||||
USE_NGTCP2 = @USE_NGTCP2@
|
||||
USE_NGTCP2_CRYPTO_BORINGSSL = @USE_NGTCP2_CRYPTO_BORINGSSL@
|
||||
USE_NGTCP2_CRYPTO_GNUTLS = @USE_NGTCP2_CRYPTO_GNUTLS@
|
||||
USE_NGTCP2_CRYPTO_QUICTLS = @USE_NGTCP2_CRYPTO_QUICTLS@
|
||||
USE_NGTCP2_CRYPTO_WOLFSSL = @USE_NGTCP2_CRYPTO_WOLFSSL@
|
||||
USE_NGTCP2_H3 = @USE_NGTCP2_H3@
|
||||
USE_OPENLDAP = @USE_OPENLDAP@
|
||||
USE_OPENSSL_H3 = @USE_OPENSSL_H3@
|
||||
USE_OPENSSL_QUIC = @USE_OPENSSL_QUIC@
|
||||
USE_QUICHE = @USE_QUICHE@
|
||||
USE_RUSTLS = @USE_RUSTLS@
|
||||
USE_SCHANNEL = @USE_SCHANNEL@
|
||||
USE_SECTRANSP = @USE_SECTRANSP@
|
||||
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
|
||||
USE_WIN32_CRYPTO = @USE_WIN32_CRYPTO@
|
||||
USE_WIN32_LARGE_FILES = @USE_WIN32_LARGE_FILES@
|
||||
USE_WIN32_SMALL_FILES = @USE_WIN32_SMALL_FILES@
|
||||
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
|
||||
USE_WOLFSSH = @USE_WOLFSSH@
|
||||
USE_WOLFSSL = @USE_WOLFSSL@
|
||||
VERSION = @VERSION@
|
||||
VERSIONNUM = @VERSIONNUM@
|
||||
VSFTPD = @VSFTPD@
|
||||
ZLIB_LIBS = @ZLIB_LIBS@
|
||||
ZSH_FUNCTIONS_DIR = @ZSH_FUNCTIONS_DIR@
|
||||
abs_builddir = @abs_builddir@
|
||||
abs_srcdir = @abs_srcdir@
|
||||
abs_top_builddir = @abs_top_builddir@
|
||||
abs_top_srcdir = @abs_top_srcdir@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
am__tar = @am__tar@
|
||||
am__untar = @am__untar@
|
||||
bindir = @bindir@
|
||||
build = @build@
|
||||
build_alias = @build_alias@
|
||||
build_cpu = @build_cpu@
|
||||
build_os = @build_os@
|
||||
build_vendor = @build_vendor@
|
||||
builddir = @builddir@
|
||||
datadir = @datadir@
|
||||
datarootdir = @datarootdir@
|
||||
docdir = @docdir@
|
||||
dvidir = @dvidir@
|
||||
exec_prefix = @exec_prefix@
|
||||
host = @host@
|
||||
host_alias = @host_alias@
|
||||
host_cpu = @host_cpu@
|
||||
host_os = @host_os@
|
||||
host_vendor = @host_vendor@
|
||||
htmldir = @htmldir@
|
||||
includedir = @includedir@
|
||||
infodir = @infodir@
|
||||
install_sh = @install_sh@
|
||||
libdir = @libdir@
|
||||
libexecdir = @libexecdir@
|
||||
libext = @libext@
|
||||
localedir = @localedir@
|
||||
localstatedir = @localstatedir@
|
||||
mandir = @mandir@
|
||||
mkdir_p = @mkdir_p@
|
||||
oldincludedir = @oldincludedir@
|
||||
pdfdir = @pdfdir@
|
||||
prefix = @prefix@
|
||||
program_transform_name = @program_transform_name@
|
||||
psdir = @psdir@
|
||||
runstatedir = @runstatedir@
|
||||
sbindir = @sbindir@
|
||||
sharedstatedir = @sharedstatedir@
|
||||
srcdir = @srcdir@
|
||||
sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
top_build_prefix = @top_build_prefix@
|
||||
top_builddir = @top_builddir@
|
||||
top_srcdir = @top_srcdir@
|
||||
|
||||
#***************************************************************************
|
||||
# _ _ ____ _
|
||||
# Project ___| | | | _ \| |
|
||||
# / __| | | | |_) | |
|
||||
# | (__| |_| | _ <| |___
|
||||
# \___|\___/|_| \_\_____|
|
||||
#
|
||||
# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
#
|
||||
# This software is licensed as described in the file COPYING, which
|
||||
# you should have received as part of this distribution. The terms
|
||||
# are also available at https://curl.se/docs/copyright.html.
|
||||
#
|
||||
# You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
# copies of the Software, and permit persons to whom the Software is
|
||||
# furnished to do so, under the terms of the COPYING file.
|
||||
#
|
||||
# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
# KIND, either express or implied.
|
||||
#
|
||||
# SPDX-License-Identifier: curl
|
||||
#
|
||||
###########################################################################
|
||||
EXTRA_DIST = \
|
||||
backup_gnv_curl_src.com \
|
||||
build_curl-config_script.com \
|
||||
build_gnv_curl.com \
|
||||
build_gnv_curl_pcsi_desc.com \
|
||||
build_gnv_curl_pcsi_text.com \
|
||||
build_gnv_curl_release_notes.com \
|
||||
build_libcurl_pc.com \
|
||||
build_vms.com \
|
||||
clean_gnv_curl.com \
|
||||
compare_curl_source.com \
|
||||
config_h.com \
|
||||
curl_crtl_init.c \
|
||||
curl_gnv_build_steps.txt \
|
||||
curl_release_note_start.txt \
|
||||
curl_startup.com \
|
||||
curlmsg.h \
|
||||
curlmsg.msg \
|
||||
curlmsg.sdl \
|
||||
curlmsg_vms.h \
|
||||
generate_config_vms_h_curl.com \
|
||||
generate_vax_transfer.com \
|
||||
gnv_conftest.c_first \
|
||||
gnv_curl_configure.sh \
|
||||
gnv_libcurl_symbols.opt \
|
||||
gnv_link_curl.com \
|
||||
macro32_exactcase.patch \
|
||||
make_gnv_curl_install.sh \
|
||||
make_pcsi_curl_kit_name.com \
|
||||
pcsi_gnv_curl_file_list.txt \
|
||||
pcsi_product_gnv_curl.com \
|
||||
readme \
|
||||
report_openssl_version.c \
|
||||
setup_gnv_curl_build.com \
|
||||
stage_curl_install.com \
|
||||
vms_eco_level.h
|
||||
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
|
||||
@for dep in $?; do \
|
||||
case '$(am__configure_deps)' in \
|
||||
*$$dep*) \
|
||||
( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
|
||||
&& { if test -f $@; then exit 0; else break; fi; }; \
|
||||
exit 1;; \
|
||||
esac; \
|
||||
done; \
|
||||
echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu packages/vms/Makefile'; \
|
||||
$(am__cd) $(top_srcdir) && \
|
||||
$(AUTOMAKE) --gnu packages/vms/Makefile
|
||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
|
||||
@case '$?' in \
|
||||
*config.status*) \
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
|
||||
*) \
|
||||
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
|
||||
esac;
|
||||
|
||||
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
|
||||
$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(am__aclocal_m4_deps):
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
clean-libtool:
|
||||
-rm -rf .libs _libs
|
||||
tags TAGS:
|
||||
|
||||
ctags CTAGS:
|
||||
|
||||
cscope cscopelist:
|
||||
|
||||
distdir: $(BUILT_SOURCES)
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir-am
|
||||
|
||||
distdir-am: $(DISTFILES)
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
|
||||
list='$(DISTFILES)'; \
|
||||
dist_files=`for file in $$list; do echo $$file; done | \
|
||||
sed -e "s|^$$srcdirstrip/||;t" \
|
||||
-e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
|
||||
case $$dist_files in \
|
||||
*/*) $(MKDIR_P) `echo "$$dist_files" | \
|
||||
sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
|
||||
sort -u` ;; \
|
||||
esac; \
|
||||
for file in $$dist_files; do \
|
||||
if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
|
||||
if test -d $$d/$$file; then \
|
||||
dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
|
||||
if test -d "$(distdir)/$$file"; then \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
|
||||
cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
|
||||
find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
|
||||
fi; \
|
||||
cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
|
||||
else \
|
||||
test -f "$(distdir)/$$file" \
|
||||
|| cp -p $$d/$$file "$(distdir)/$$file" \
|
||||
|| exit 1; \
|
||||
fi; \
|
||||
done
|
||||
check-am: all-am
|
||||
check: check-am
|
||||
all-am: Makefile
|
||||
installdirs:
|
||||
install: install-am
|
||||
install-exec: install-exec-am
|
||||
install-data: install-data-am
|
||||
uninstall: uninstall-am
|
||||
|
||||
install-am: all-am
|
||||
@$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
|
||||
|
||||
installcheck: installcheck-am
|
||||
install-strip:
|
||||
if test -z '$(STRIP)'; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
install; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
|
||||
install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
|
||||
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
|
||||
fi
|
||||
mostlyclean-generic:
|
||||
|
||||
clean-generic:
|
||||
|
||||
distclean-generic:
|
||||
-test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
|
||||
-test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
|
||||
|
||||
maintainer-clean-generic:
|
||||
@echo "This command is intended for maintainers to use"
|
||||
@echo "it deletes files that may require special tools to rebuild."
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-generic clean-libtool mostlyclean-am
|
||||
|
||||
distclean: distclean-am
|
||||
-rm -f Makefile
|
||||
distclean-am: clean-am distclean-generic
|
||||
|
||||
dvi: dvi-am
|
||||
|
||||
dvi-am:
|
||||
|
||||
html: html-am
|
||||
|
||||
html-am:
|
||||
|
||||
info: info-am
|
||||
|
||||
info-am:
|
||||
|
||||
install-data-am:
|
||||
|
||||
install-dvi: install-dvi-am
|
||||
|
||||
install-dvi-am:
|
||||
|
||||
install-exec-am:
|
||||
|
||||
install-html: install-html-am
|
||||
|
||||
install-html-am:
|
||||
|
||||
install-info: install-info-am
|
||||
|
||||
install-info-am:
|
||||
|
||||
install-man:
|
||||
|
||||
install-pdf: install-pdf-am
|
||||
|
||||
install-pdf-am:
|
||||
|
||||
install-ps: install-ps-am
|
||||
|
||||
install-ps-am:
|
||||
|
||||
installcheck-am:
|
||||
|
||||
maintainer-clean: maintainer-clean-am
|
||||
-rm -f Makefile
|
||||
maintainer-clean-am: distclean-am maintainer-clean-generic
|
||||
|
||||
mostlyclean: mostlyclean-am
|
||||
|
||||
mostlyclean-am: mostlyclean-generic mostlyclean-libtool
|
||||
|
||||
pdf: pdf-am
|
||||
|
||||
pdf-am:
|
||||
|
||||
ps: ps-am
|
||||
|
||||
ps-am:
|
||||
|
||||
uninstall-am:
|
||||
|
||||
.MAKE: install-am install-strip
|
||||
|
||||
.PHONY: all all-am check check-am clean clean-generic clean-libtool \
|
||||
cscopelist-am ctags-am distclean distclean-generic \
|
||||
distclean-libtool distdir dvi dvi-am html html-am info info-am \
|
||||
install install-am install-data install-data-am install-dvi \
|
||||
install-dvi-am install-exec install-exec-am install-html \
|
||||
install-html-am install-info install-info-am install-man \
|
||||
install-pdf install-pdf-am install-ps install-ps-am \
|
||||
install-strip installcheck installcheck-am installdirs \
|
||||
maintainer-clean maintainer-clean-generic mostlyclean \
|
||||
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
|
||||
tags-am uninstall uninstall-am
|
||||
|
||||
.PRECIOUS: Makefile
|
||||
|
||||
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
130
third_party/curl/packages/vms/backup_gnv_curl_src.com
vendored
Normal file
130
third_party/curl/packages/vms/backup_gnv_curl_src.com
vendored
Normal file
@ -0,0 +1,130 @@
|
||||
$! File: Backup_gnv_curl_src.com
|
||||
$!
|
||||
$! Procedure to create backup save sets for installing in a PCSI kit.
|
||||
$!
|
||||
$! To comply with most Open Source licenses, the source used for building
|
||||
$! a kit will be packaged with the distribution kit for the binary.
|
||||
$!
|
||||
$! Backup save sets are the only storage format that I can expect a
|
||||
$! VMS system to be able to extract ODS-5 filenames and directories.
|
||||
$!
|
||||
$! The make_pcsi_kit_name.com needs to be run before this procedure to
|
||||
$! properly name the files that will be created.
|
||||
$!
|
||||
$! This file is created from a template file for the purpose of making it
|
||||
$! easier to port Unix code, particularly open source code to VMS.
|
||||
$! Therefore permission is freely granted for any use.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$! Save default
|
||||
$ default_dir = f$environment("DEFAULT")
|
||||
$!
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ arch_code = f$extract(0, 1, arch_type)
|
||||
$!
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ set proc/parse=extended
|
||||
$ endif
|
||||
$!
|
||||
$ ss_abort = 44
|
||||
$ status = ss_abort
|
||||
$!
|
||||
$ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
|
||||
$ if kit_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer = f$trnlnm("GNV_PCSI_PRODUCER")
|
||||
$ if producer .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ filename_base = f$trnlnm("GNV_PCSI_FILENAME_BASE")
|
||||
$ if filename_base .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ node_swvers = f$getsyi("NODE_SWVERS")
|
||||
$ node_swvers_type = f$extract(0, 1, node_swvers)
|
||||
$ node_swvers_vers = f$extract(1, f$length(node_swvers), node_swvers)
|
||||
$ swvers_maj = f$element(0, ".", node_swvers_vers)
|
||||
$ node_swvers_min_update = f$element(1, ".", node_swvers_vers)
|
||||
$ swvers_min = f$element(0, "-", node_swvers_min_update)
|
||||
$ swvers_update = f$element(1, "-", node_swvers_min_update)
|
||||
$!
|
||||
$ if swvers_update .eqs. "-" then swvers_update = ""
|
||||
$!
|
||||
$ vms_vers = f$fao("!2ZB!2ZB!AS", 'swvers_maj', 'swvers_min', swvers_update)
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! If available make an interchange save set
|
||||
$!-------------------------------------------
|
||||
$ interchange = ""
|
||||
$ if arch_code .eqs. "V"
|
||||
$ then
|
||||
$ interchange = "/interchange"
|
||||
$ endif
|
||||
$ if (swvers_maj .ges. "8") .and. (swvers_min .ges. 4)
|
||||
$ then
|
||||
$ interchange = "/interchange/noconvert"
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Move to the base directories
|
||||
$ set def [--]
|
||||
$!
|
||||
$! Put things back on error.
|
||||
$ on warning then goto all_exit
|
||||
$!
|
||||
$ current_default = f$environment("DEFAULT")
|
||||
$ my_dir = f$parse(current_default,,,"DIRECTORY") - "[" - "<" - ">" - "]"
|
||||
$!
|
||||
$ src_root = "src_root:"
|
||||
$ if f$trnlnm("src_root1") .nes. "" then src_root = "src_root1:"
|
||||
$ backup'interchange' 'src_root'[curl...]*.*;0 -
|
||||
'filename_base'_original_src.bck/sav
|
||||
$ status = $status
|
||||
$!
|
||||
$! There may be a VMS specific source kit
|
||||
$!-----------------------------------------
|
||||
$ vms_root = "vms_root:"
|
||||
$ if f$trnlnm("vms_root1") .nes. "" then vms_root = "vms_root1:"
|
||||
$ files_found = 0
|
||||
$ define/user sys$error nl:
|
||||
$ define/user sys$output nl:
|
||||
$ directory 'vms_root'[...]*.*;*/exc=*.dir
|
||||
$ if '$severity' .eq. 1 then files_found = 1
|
||||
$!
|
||||
$ if files_found .eq. 1
|
||||
$ then
|
||||
$ backup'interchange' 'vms_root'[curl...]*.*;0 -
|
||||
'filename_base'_vms_src.bck/sav
|
||||
$ status = $status
|
||||
$ endif
|
||||
$!
|
||||
$all_exit:
|
||||
$ set def 'default_dir'
|
||||
$ exit
|
153
third_party/curl/packages/vms/build_curl-config_script.com
vendored
Normal file
153
third_party/curl/packages/vms/build_curl-config_script.com
vendored
Normal file
@ -0,0 +1,153 @@
|
||||
$! build_curl-config_script.com
|
||||
$!
|
||||
$! This generates the curl-config. script from the curl-config.in file.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$! Skip this if the curl-config. already exists.
|
||||
$ if f$search("[--]curl-config.") .nes. "" then goto all_exit
|
||||
$!
|
||||
$ if (f$getsyi("HW_MODEL") .lt. 1024)
|
||||
$ then
|
||||
$ arch_name = "VAX"
|
||||
$ else
|
||||
$ arch_name = ""
|
||||
$ arch_name = arch_name + f$edit(f$getsyi("ARCH_NAME"), "UPCASE")
|
||||
$ if (arch_name .eqs. "") then arch_name = "UNK"
|
||||
$ endif
|
||||
$!
|
||||
$ x_prefix = "/usr"
|
||||
$ x_exec_prefix = "/usr"
|
||||
$ x_includedir = "${prefix}/include"
|
||||
$ x_cppflag_curl_staticlib = "-DCURL_STATICLIB"
|
||||
$ x_enabled_shared = "no"
|
||||
$ x_curl_ca_bundle = ""
|
||||
$ x_cc = "cc"
|
||||
$ x_support_features = "SSL IPv6 libz NTLM"
|
||||
$ x_support_protocols1 = "DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS LDAP"
|
||||
$ x_support_protocols2 = " LDAPS POP3 POP3S RTSP SMTP SMTPS TELNET TFTP"
|
||||
$ x_support_protocols = x_support_protocols1 + x_support_protocols2
|
||||
$ x_curlversion = "0.0.0.0"
|
||||
$ x_versionnum = ""
|
||||
$ x_libdir = "${prefix}/lib"
|
||||
$ x_require_lib_deps = ""
|
||||
$ x_enable_static = ""
|
||||
$ x_ldflags = ""
|
||||
$ part1 = "-L/usr/lib -L/SSL_LIB -lssl -lcrypto -lz"
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ x_libcurl_libs = part1
|
||||
$ else
|
||||
$ x_libcurl_libs = part1 + " -lgssapi"
|
||||
$ endif
|
||||
$ x_libext = "a"
|
||||
$!
|
||||
$! Get the version number
|
||||
$!-----------------------
|
||||
$ i = 0
|
||||
$ open/read/error=version_loop_end vhf [--.include.curl]curlver.h
|
||||
$ version_loop:
|
||||
$ read/end=version_loop_end vhf line_in
|
||||
$ if line_in .eqs. "" then goto version_loop
|
||||
$ if f$locate("#define LIBCURL_VERSION ", line_in) .eq. 0
|
||||
$ then
|
||||
$ x_curlversion = f$element(2," ", line_in) - """" - """"
|
||||
$ i = i + 1
|
||||
$ endif
|
||||
$ if f$locate("#define LIBCURL_VERSION_NUM ", line_in) .eq. 0
|
||||
$ then
|
||||
$ x_versionnum = f$element(2," ", line_in) - """" - """"
|
||||
$ i = i + 1
|
||||
$ endif
|
||||
$ if i .lt 2 then goto version_loop
|
||||
$ version_loop_end:
|
||||
$ close vhf
|
||||
$!
|
||||
$ kit_type = "V"
|
||||
$ if f$locate("-", x_curlversion) .lt. f$length(x_curlversion)
|
||||
$ then
|
||||
$ kit_type = "D"
|
||||
$ x_prefix = "/beta"
|
||||
$ x_exec_prefix = "/beta"
|
||||
$ endif
|
||||
$!
|
||||
$ if kit_type .nes. "D"
|
||||
$ then
|
||||
$ part1 = " echo "" '--prefix=/usr' '--exec-prefix=/usr' "
|
||||
$ else
|
||||
$ part1 = " echo "" '--prefix=/beta' '--exec_prefix=/beta' "
|
||||
$ endif
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ part3 = ""
|
||||
$ else
|
||||
$ part3 = "'--with-gssapi' "
|
||||
$ endif
|
||||
$ part2 = "'--disable-dependency-tracking' '--disable-libtool-lock' "
|
||||
$ part4 = "'--disable-ntlm-wb' '--with-ca-path=gnv$curl_ca_path'"""
|
||||
$!
|
||||
$ x_configure_options = part1 + part2 + part3 + part4
|
||||
$!
|
||||
$!
|
||||
$ open/read/error=read_loop_end c_c_in sys$disk:[--]curl-config.in
|
||||
$ create sys$disk:[--]curl-config.
|
||||
$ open/append c_c_out sys$disk:[--]curl-config.
|
||||
$read_loop:
|
||||
$ read/end=read_loop_end c_c_in line_in
|
||||
$ line_in_len = f$length(line_in)
|
||||
$ if f$locate("@", line_in) .ge. line_in_len
|
||||
$ then
|
||||
$ write c_c_out line_in
|
||||
$ goto read_loop
|
||||
$ endif
|
||||
$ i = 0
|
||||
$ line_out = ""
|
||||
$sub_loop:
|
||||
$ ! Replace between pairs of @ by alternating the elements.
|
||||
$ ! If mis-matched pairs, do not substitute anything.
|
||||
$ section1 = f$element(i, "@", line_in)
|
||||
$ if section1 .eqs. "@"
|
||||
$ then
|
||||
$ goto sub_loop_end
|
||||
$ endif
|
||||
$ i = i + 1
|
||||
$ section2 = f$element(i, "@", line_in)
|
||||
$ if section2 .eqs. "@"
|
||||
$ then
|
||||
$ goto sub_loop_end
|
||||
$ endif
|
||||
$ i = i + 1
|
||||
$ section3 = f$element(i, "@", line_in)
|
||||
$ if section3 .eqs. "@"
|
||||
$ then
|
||||
$ if line_out .eqs. "" then line_out = line_in
|
||||
$ goto sub_loop_end
|
||||
$ endif
|
||||
$ line_out = line_out + section1
|
||||
$ if f$type(x_'section2') .eqs. "STRING"
|
||||
$ then
|
||||
$ line_out = line_out + x_'section2'
|
||||
$ endif
|
||||
$ goto sub_loop
|
||||
$sub_loop_end:
|
||||
$ write c_c_out line_out
|
||||
$ goto read_loop
|
||||
$read_loop_end:
|
||||
$ close c_c_in
|
||||
$ close c_c_out
|
36
third_party/curl/packages/vms/build_gnv_curl.com
vendored
Normal file
36
third_party/curl/packages/vms/build_gnv_curl.com
vendored
Normal file
@ -0,0 +1,36 @@
|
||||
$! File: build_gnv_curl.com
|
||||
$!
|
||||
$! All in one build procedure
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!-----------------------------------------------------------------------
|
||||
$!
|
||||
$ @setup_gnv_curl_build.com
|
||||
$!
|
||||
$ bash gnv_curl_configure.sh
|
||||
$!
|
||||
$ @clean_gnv_curl.com
|
||||
$!
|
||||
$ bash make_gnv_curl_install.sh
|
||||
$!
|
||||
$ @gnv_link_curl.com
|
||||
$!
|
||||
$ purge new_gnu:[*...]/log
|
||||
$!
|
||||
$!
|
||||
$exit
|
489
third_party/curl/packages/vms/build_gnv_curl_pcsi_desc.com
vendored
Normal file
489
third_party/curl/packages/vms/build_gnv_curl_pcsi_desc.com
vendored
Normal file
@ -0,0 +1,489 @@
|
||||
$! File: Build_GNV_CURL_PCSI_DESC.COM
|
||||
$!
|
||||
$! Build the *.pcsi$text file in the following sections:
|
||||
$! Required software dependencies.
|
||||
$! install/upgrade/postinstall steps.
|
||||
$! 1. Duplicate filenames need an alias procedure. (N/A for curl)
|
||||
$! 2. ODS-5 filenames need an alias procedure. (N/A for curl)
|
||||
$! 3. Special alias links for executables (curl. -> curl.exe)
|
||||
$! if a lot, then an alias procedure is needed.
|
||||
$! 4. Rename the files to lowercase.
|
||||
$! Move Release Notes to destination
|
||||
$! Source kit option
|
||||
$! Create directory lines
|
||||
$! Add file lines for curl.
|
||||
$! Add Link alias procedure file (N/A for curl)
|
||||
$! Add [.SYS$STARTUP]curl_startup file
|
||||
$! Add Release notes file.
|
||||
$!
|
||||
$! The file PCSI_GNV_CURL_FILE_LIST.TXT is read in to get the files other
|
||||
$! than the release notes file and the source backup file.
|
||||
$!
|
||||
$! The PCSI system can really only handle ODS-2 format filenames and
|
||||
$! assumes that there is only one source directory. It also assumes that
|
||||
$! all destination files with the same name come from the same source file.
|
||||
$! Fortunately CURL does not trip most of these issues, so those steps
|
||||
$! above are marked N/A.
|
||||
$!
|
||||
$! A rename action section is needed to make sure that the files are
|
||||
$! created in the GNV$GNU: in the correct case, and to create the alias
|
||||
$! link [usr.bin]curl. for [usr.bin]curl.exe.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
|
||||
$ if kit_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer = f$trnlnm("GNV_PCSI_PRODUCER")
|
||||
$ if producer .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ filename_base = f$trnlnm("GNV_PCSI_FILENAME_BASE")
|
||||
$ if filename_base .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Parse the kit name into components.
|
||||
$!---------------------------------------
|
||||
$ producer = f$element(0, "-", kit_name)
|
||||
$ base = f$element(1, "-", kit_name)
|
||||
$ product = f$element(2, "-", kit_name)
|
||||
$ mmversion = f$element(3, "-", kit_name)
|
||||
$ majorver = f$extract(0, 3, mmversion)
|
||||
$ minorver = f$extract(3, 2, mmversion)
|
||||
$ updatepatch = f$element(4, "-", kit_name)
|
||||
$ if updatepatch .eqs. "-" then updatepatch = ""
|
||||
$!
|
||||
$! kit type of "D" means a daily build
|
||||
$ kit_type = f$edit(f$extract(0, 1, majorver), "upcase")
|
||||
$!
|
||||
$!
|
||||
$ product_line = "product ''producer' ''base' ''product'"
|
||||
$ if updatepatch .eqs. ""
|
||||
$ then
|
||||
$ product_name = " ''majorver'.''minorver'"
|
||||
$ else
|
||||
$ product_name = " ''majorver'.''minorver'-''updatepatch'"
|
||||
$ endif
|
||||
$ product_line = product_line + " ''product_name' full;"
|
||||
$!write sys$output product_line
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! Create the file as a VMS text file.
|
||||
$!----------------------------------------
|
||||
$ base_file = kit_name
|
||||
$ create 'base_file'.pcsi$desc
|
||||
$!
|
||||
$!
|
||||
$! Start building file.
|
||||
$!----------------------
|
||||
$ open/append pdsc 'base_file'.pcsi$desc
|
||||
$!
|
||||
$ write pdsc product_line
|
||||
$!
|
||||
$! Required product dependencies.
|
||||
$!----------------------------------
|
||||
$ vmsprd = "DEC"
|
||||
$ if base .eqs. "I64VMS" then vmsprd = "HP"
|
||||
$ vsiprd = "VSI"
|
||||
$!
|
||||
$ write pdsc " software ''vmsprd' ''base' VMS ;"
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ node_swvers = f$getsyi("node_swvers")
|
||||
$ vernum = f$extract(1, f$length(node_swvers), node_swvers)
|
||||
$ majver = f$element(0, ".", vernum)
|
||||
$ minverdash = f$element(1, ".", vernum)
|
||||
$ minver = f$element(0, "-", minverdash)
|
||||
$ dashver = f$element(1, "-", minverdash)
|
||||
$ if dashver .eqs. "-" then dashver = ""
|
||||
$ vmstag = majver + minver + dashver
|
||||
$ code = f$extract(0, 1, arch_type)
|
||||
$ arch_code = f$extract(0, 1, arch_type)
|
||||
$ line_out = -
|
||||
" if ((not <software ''vsiprd' ''base' VMS version minimum" + -
|
||||
" ''node_swvers'>) and" + -
|
||||
" (not <software ''vmsprd' ''base' VMS version minimum ''node_swvers'>));"
|
||||
$ write pdsc line_out
|
||||
$ write pdsc " error NEED_VMS''vmstag';"
|
||||
$ write pdsc " end if;"
|
||||
$!
|
||||
$write pdsc " software VMSPORTS ''base' ZLIB ;"
|
||||
$write pdsc -
|
||||
" if (not <software VMSPORTS ''base' ZLIB version minimum V1.2-8>) ;"
|
||||
$write pdsc " error NEED_ZLIB;"
|
||||
$write pdsc " end if;"
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! install/upgrade/postinstall steps.
|
||||
$!-----------------------------------
|
||||
$! 1. Duplicate filenames need an alias procedure. (N/A for curl)
|
||||
$! 2. ODS-5 filenames need an alias procedure. (N/A for curl)
|
||||
$! 3. Special alias links for executables (curl. -> curl.exe)
|
||||
$! if a lot, then an alias procedure is needed.
|
||||
$! 4. Rename the files to lowercase.
|
||||
$!
|
||||
$!
|
||||
$! Alias links needed.
|
||||
$!-------------------------
|
||||
$ add_alias_lines = ""
|
||||
$ rem_alias_lines = ""
|
||||
$ line_out = ""
|
||||
$!
|
||||
$! Read through the file list to set up aliases and rename commands.
|
||||
$!---------------------------------------------------------------------
|
||||
$ open/read flst pcsi_gnv_curl_file_list.txt
|
||||
$!
|
||||
$inst_alias_loop:
|
||||
$ read/end=inst_alias_loop_end flst line_in
|
||||
$ line_in = f$edit(line_in,"compress,trim,uncomment")
|
||||
$ if line_in .eqs. "" then goto inst_alias_loop
|
||||
$ pathname = f$element(0, " ", line_in)
|
||||
$ linkflag = f$element(1, " ", line_in)
|
||||
|
||||
$ if linkflag .nes. "->" then goto inst_alias_write
|
||||
$!
|
||||
$ linktarget = f$element(2, " ", line_in)
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ old_start = f$locate("[gnv.usr", pathname)
|
||||
$ if old_start .lt. f$length(pathname)
|
||||
$ then
|
||||
$ pathname = "[gnv.beta" + pathname - "[gnv.usr"
|
||||
$ linktarget = "[gnv.beta" + linktarget - "[gnv.usr"
|
||||
$ endif
|
||||
$ endif
|
||||
$ nlink = "pcsi$destination:" + pathname
|
||||
$ ntarg = "pcsi$destination:" + linktarget
|
||||
$ new_add_alias_line = -
|
||||
"""if f$search(""""''nlink'"""") .eqs. """""""" then" + -
|
||||
" set file/enter=''nlink' ''ntarg'"""
|
||||
$ if add_alias_lines .nes. ""
|
||||
$ then
|
||||
$ add_alias_lines = add_alias_lines + "," + new_add_alias_line
|
||||
$ else
|
||||
$ add_alias_lines = new_add_alias_line
|
||||
$ endif
|
||||
$!
|
||||
$ new_rem_alias_line = -
|
||||
"""if f$search(""""''nlink'"""") .nes. """""""" then" + -
|
||||
" set file/remove ''nlink';"""
|
||||
$ if rem_alias_lines .nes. ""
|
||||
$ then
|
||||
$ rem_alias_lines = rem_alias_lines + "," + new_rem_alias_line
|
||||
$ else
|
||||
$ rem_alias_lines = new_rem_alias_line
|
||||
$ endif
|
||||
$!
|
||||
$ goto inst_alias_loop
|
||||
$!
|
||||
$inst_alias_write:
|
||||
$!
|
||||
$! execute install / remove
|
||||
$ write pdsc " execute install ("
|
||||
$! add aliases
|
||||
$ i = 0
|
||||
$ex_ins_loop:
|
||||
$ line = f$element(i, ",", add_alias_lines)
|
||||
$ i = i + 1
|
||||
$ if line .eqs. "" then goto ex_ins_loop
|
||||
$ if line .eqs. "," then goto ex_ins_loop_end
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ line_out = line
|
||||
$ goto ex_ins_loop
|
||||
$ex_ins_loop_end:
|
||||
$ write pdsc line_out
|
||||
$ line_out = ""
|
||||
$ write pdsc " )"
|
||||
$ write pdsc " remove ("
|
||||
$! remove aliases
|
||||
$ i = 0
|
||||
$ex_rem_loop:
|
||||
$ line = f$element(i, ",", rem_alias_lines)
|
||||
$ i = i + 1
|
||||
$ if line .eqs. "" then goto ex_rem_loop
|
||||
$ if line .eqs. "," then goto ex_rem_loop_end
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ line_out = line
|
||||
$ goto ex_rem_loop
|
||||
$ex_rem_loop_end:
|
||||
$ write pdsc line_out
|
||||
$ line_out = ""
|
||||
$ write pdsc " ) ;"
|
||||
$!
|
||||
$! execute upgrade
|
||||
$ write pdsc " execute upgrade ("
|
||||
$ i = 0
|
||||
$ex_upg_loop:
|
||||
$ line = f$element(i, ",", rem_alias_lines)
|
||||
$ i = i + 1
|
||||
$ if line .eqs. "" then goto ex_upg_loop
|
||||
$ if line .eqs. "," then goto ex_upg_loop_end
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ line_out = line
|
||||
$ goto ex_upg_loop
|
||||
$ex_upg_loop_end:
|
||||
$ write pdsc line_out
|
||||
$ line_out = ""
|
||||
$! remove aliases
|
||||
$ write pdsc " ) ;"
|
||||
$!
|
||||
$! execute postinstall
|
||||
$ write pdsc " execute postinstall ("
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ line_out = " ""set process/parse=extended"""
|
||||
$ endif
|
||||
$ i = 0
|
||||
$ex_pins_loop:
|
||||
$ line = f$element(i, ",", add_alias_lines)
|
||||
$ i = i + 1
|
||||
$ if line .eqs. "" then goto ex_pins_loop
|
||||
$ if line .eqs. "," then goto ex_pins_loop_end
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ line_out = line
|
||||
$ goto ex_pins_loop
|
||||
$ex_pins_loop_end:
|
||||
$ if line_out .eqs. "" then line_out = " ""continue"""
|
||||
$! write pdsc line_out
|
||||
$! line_out = ""
|
||||
$! add aliases and follow with renames.
|
||||
$!
|
||||
$goto inst_dir
|
||||
$!
|
||||
$inst_dir_loop:
|
||||
$ read/end=inst_alias_loop_end flst line_in
|
||||
$ line_in = f$edit(line_in,"compress,trim,uncomment")
|
||||
$ if line_in .eqs. "" then goto inst_dir_loop
|
||||
$inst_dir:
|
||||
$ pathname = f$element(0, " ", line_in)
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ if pathname .eqs. "[gnv]usr.dir"
|
||||
$ then
|
||||
$ pathname = "[gnv]beta.dir"
|
||||
$ else
|
||||
$ old_start = f$locate("[gnv.usr", pathname)
|
||||
$ if old_start .lt. f$length(pathname)
|
||||
$ then
|
||||
$ pathname = "[gnv.beta" + pathname - "[gnv.usr"
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! Ignore the directory entries for now.
|
||||
$!-----------------------------------------
|
||||
$ filedir = f$parse(pathname,,,"DIRECTORY")
|
||||
$ if pathname .eqs. filedir then goto inst_dir_loop
|
||||
$!
|
||||
$! process .dir extensions for rename
|
||||
$! If this is not a directory then start processing files.
|
||||
$!-------------------------
|
||||
$ filetype = f$parse(pathname,,,"TYPE")
|
||||
$ filetype_u = f$edit(filetype, "upcase")
|
||||
$ filename = f$parse(pathname,,,"NAME")
|
||||
$ if filetype_u .nes. ".DIR" then goto inst_file
|
||||
$!
|
||||
$! process directory lines for rename.
|
||||
$!--------------------------------------
|
||||
$ if line_out .nes. ""
|
||||
$ then
|
||||
$ write pdsc line_out,","
|
||||
$ line_out = ""
|
||||
$ endif
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ line_out = " ""rename pcsi$destination:''pathname' ''filename'.DIR"""
|
||||
$ else
|
||||
$ if line_out .nes. "" then write pdsc line_out
|
||||
$ line_out = ""
|
||||
$ endif
|
||||
$ goto inst_dir_loop
|
||||
$!
|
||||
$!
|
||||
$! process file lines for rename
|
||||
$!---------------------------------
|
||||
$inst_file_loop:
|
||||
$ read/end=inst_alias_loop_end flst line_in
|
||||
$ line_in = f$edit(line_in,"compress,trim,uncomment")
|
||||
$ if line_in .eqs. "" then goto inst_dir_loop
|
||||
$ pathname = f$element(0, " ", line_in)
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ if pathname .eqs. "[gnv]usr.dir"
|
||||
$ then
|
||||
$ pathname = "[gnv]beta.dir"
|
||||
$ else
|
||||
$ old_start = f$locate("[gnv.usr", pathname)
|
||||
$ if old_start .lt. f$length(pathname)
|
||||
$ then
|
||||
$ pathname = "[gnv.beta" + pathname - "[gnv.usr"
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! Filenames with $ in them are VMS special and do not need to be lowercase.
|
||||
$! --------------------------------------------------------------------------
|
||||
$ if f$locate("$", pathname) .lt. f$length(pathname) then goto inst_file_loop
|
||||
$!
|
||||
$ filetype = f$parse(pathname,,,"TYPE")
|
||||
$ filename = f$parse(pathname,,,"NAME") + filetype
|
||||
$inst_file:
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ if line_out .nes. "" then write pdsc line_out,","
|
||||
$ filetype = f$parse(pathname,,,"TYPE")
|
||||
$ filename = f$parse(pathname,,,"NAME") + filetype
|
||||
$ line_out = " ""rename pcsi$destination:''pathname' ''filename'"""
|
||||
$ else
|
||||
$ if line_out .nes. "" then write pdsc line_out
|
||||
$ line_out = ""
|
||||
$ endif
|
||||
$ goto inst_file_loop
|
||||
$!
|
||||
$inst_alias_loop_end:
|
||||
$!
|
||||
$write pdsc line_out
|
||||
$write pdsc " ) ;"
|
||||
$close flst
|
||||
$!
|
||||
$! Move Release Notes to destination
|
||||
$!-------------------------------------
|
||||
$write pdsc " information RELEASE_NOTES phase after ;"
|
||||
$!
|
||||
$! Source kit option
|
||||
$!---------------------
|
||||
$write pdsc " option SOURCE default 0;"
|
||||
$write pdsc " directory ""[gnv.common_src]"" PROTECTION PUBLIC ;"
|
||||
$write pdsc -
|
||||
" file ""[gnv.common_src]''filename_base'_original_src.bck"""
|
||||
$write pdsc -
|
||||
" source [common_src]''filename_base'_original_src.bck ;"
|
||||
$if f$search("gnv$gnu:[vms_src]''filename_base'_vms_src.bck") .nes. ""
|
||||
$then
|
||||
$ write pdsc " directory ""[gnv.vms_src]"" PROTECTION PUBLIC ;"
|
||||
$ write pdsc " file ""[gnv.vms_src]''filename_base'_vms_src.bck"""
|
||||
$ write pdsc " source [vms_src]''filename_base'_vms_src.bck ;"
|
||||
$endif
|
||||
$write pdsc " end option;"
|
||||
$!
|
||||
$!
|
||||
$! Read through the file list again.
|
||||
$!----------------------------------
|
||||
$open/read flst pcsi_gnv_curl_file_list.txt
|
||||
$!
|
||||
$!
|
||||
$! Create directory lines
|
||||
$!-------------------------
|
||||
$flst_dir_loop:
|
||||
$ read/end=flst_loop_end flst line_in
|
||||
$ line_in = f$edit(line_in,"compress,trim,uncomment")
|
||||
$ if line_in .eqs. "" then goto flst_dir_loop
|
||||
$!
|
||||
$ filename = f$element(0, " ", line_in)
|
||||
$ linkflag = f$element(1, " ", line_in)
|
||||
$ if linkflag .eqs. "->" then goto flst_dir_loop
|
||||
$!
|
||||
$! Ignore .dir extensions
|
||||
$!-------------------------
|
||||
$ filetype = f$edit(f$parse(filename,,,"TYPE"), "upcase")
|
||||
$ if filetype .eqs. ".DIR" then goto flst_dir_loop
|
||||
$!
|
||||
$ destname = filename
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ old_start = f$locate("[gnv.usr", destname)
|
||||
$ if old_start .lt. f$length(destname)
|
||||
$ then
|
||||
$ destname = "[gnv.beta" + destname - "[gnv.usr"
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! It should be just a directory then.
|
||||
$!-------------------------------------
|
||||
$ filedir = f$edit(f$parse(filename,,,"DIRECTORY"), "lowercase")
|
||||
$! If this is not a directory then start processing files.
|
||||
$!---------------------------------------------------------
|
||||
$ if filename .nes. filedir then goto flst_file
|
||||
$!
|
||||
$ write pdsc " directory ""''destname'"" PROTECTION PUBLIC ;"
|
||||
$ goto flst_dir_loop
|
||||
$!
|
||||
$!
|
||||
$! Add file lines for curl.
|
||||
$!---------------------------
|
||||
$flst_file_loop:
|
||||
$ read/end=flst_loop_end flst line_in
|
||||
$ line_in = f$edit(line_in,"compress,trim,uncomment")
|
||||
$ if line_in .eqs. "" then goto inst_file_loop
|
||||
$ filename = f$element(0, " ", line_in)
|
||||
$ destname = filename
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ old_start = f$locate("[gnv.usr", destname)
|
||||
$ if old_start .lt. f$length(destname)
|
||||
$ then
|
||||
$ destname = "[gnv.beta" + destname - "[gnv.usr"
|
||||
$ endif
|
||||
$ endif
|
||||
$flst_file:
|
||||
$ srcfile = filename - "gnv."
|
||||
$ write pdsc " file ""''destname'"" "
|
||||
$ write pdsc " source ""''srcfile'"" ;"
|
||||
$ goto flst_file_loop
|
||||
$!
|
||||
$flst_loop_end:
|
||||
$ close flst
|
||||
$!
|
||||
$! Add Link alias procedure file (N/A for curl)
|
||||
$!------------------------------------------------
|
||||
$!
|
||||
$! Add [.SYS$STARTUP]curl_startup file
|
||||
$!---------------------------------------
|
||||
$ if kit_type .eqs. "D"
|
||||
$ then
|
||||
$ write pdsc " file ""[sys$startup]curl_daily_startup.com"""
|
||||
$ else
|
||||
$ write pdsc " file ""[sys$startup]curl_startup.com"""
|
||||
$ endif
|
||||
$ write pdsc " source [usr.lib]curl_startup.com ;"
|
||||
$!
|
||||
$! Add Release notes file.
|
||||
$!------------------------------
|
||||
$ write pdsc -
|
||||
" file ""[SYSHLP]''filename_base'.release_notes"" release notes ;"
|
||||
$!
|
||||
$! Close the product file
|
||||
$!------------------------
|
||||
$ write pdsc "end product;"
|
||||
$!
|
||||
$close pdsc
|
||||
$!
|
||||
$all_exit:
|
||||
$ exit
|
195
third_party/curl/packages/vms/build_gnv_curl_pcsi_text.com
vendored
Normal file
195
third_party/curl/packages/vms/build_gnv_curl_pcsi_text.com
vendored
Normal file
@ -0,0 +1,195 @@
|
||||
$! File: Build_GNV_curl_pcsi_text.com
|
||||
$!
|
||||
$! Build the *.pcsi$text file from the four components:
|
||||
$! 1. Generated =product header section
|
||||
$! 2. [--]readme. file from the Curl distribution, modified to fit
|
||||
$! a pcsi$text file format.
|
||||
$! 3. [--]copying file from the Curl distribution, modified to fit
|
||||
$! a pcsi$text file format.
|
||||
$! 4. Generated Producer section.
|
||||
$!
|
||||
$! Set the name of the release notes from the GNV_PCSI_FILENAME_BASE
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
|
||||
$ if kit_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer = f$trnlnm("GNV_PCSI_PRODUCER")
|
||||
$ if producer .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer_full_name = f$trnlnm("GNV_PCSI_PRODUCER_FULL_NAME")
|
||||
$ if producer_full_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Parse the kit name into components.
|
||||
$!---------------------------------------
|
||||
$ producer = f$element(0, "-", kit_name)
|
||||
$ base = f$element(1, "-", kit_name)
|
||||
$ product = f$element(2, "-", kit_name)
|
||||
$ mmversion = f$element(3, "-", kit_name)
|
||||
$ majorver = f$extract(0, 3, mmversion)
|
||||
$ minorver = f$extract(3, 2, mmversion)
|
||||
$ updatepatch = f$element(4, "-", kit_name)
|
||||
$ if updatepatch .eqs. "-" then updatepatch = ""
|
||||
$!
|
||||
$!
|
||||
$ product_line = "=product ''producer' ''base' ''product'"
|
||||
$ if updatepatch .eqs. ""
|
||||
$ then
|
||||
$ product_name = " ''majorver'.''minorver'"
|
||||
$ else
|
||||
$ product_name = " ''majorver'.''minorver'-''updatepatch'"
|
||||
$ endif
|
||||
$ product_line = product_line + " ''product_name' full"
|
||||
$!
|
||||
$!
|
||||
$! If this is VAX and the file is on NFS, the names may be mangled.
|
||||
$!-----------------------------------------------------------------
|
||||
$ readme_file = ""
|
||||
$ if f$search("[--]readme.") .nes. ""
|
||||
$ then
|
||||
$ readme_file = "[--]readme."
|
||||
$ else
|
||||
$ if f$search("[--]$README.") .nes. ""
|
||||
$ then
|
||||
$ readme_file = "[--]$README."
|
||||
$ else
|
||||
$ write sys$output "Can not find readme file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$ copying_file = ""
|
||||
$ if f$search("[--]copying.") .nes. ""
|
||||
$ then
|
||||
$ copying_file = "[--]copying."
|
||||
$ else
|
||||
$ if f$search("[--]$COPYING.") .nes. ""
|
||||
$ then
|
||||
$ copying_file = "[--]$COPYING."
|
||||
$ else
|
||||
$ write sys$output "Can not find copying file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! Create the file as a VMS text file.
|
||||
$!----------------------------------------
|
||||
$ base_file = kit_name
|
||||
$ create 'base_file'.pcsi$text
|
||||
$!
|
||||
$!
|
||||
$! Start building file.
|
||||
$!----------------------
|
||||
$ open/append ptxt 'base_file'.pcsi$text
|
||||
$ write ptxt product_line
|
||||
$!
|
||||
$!
|
||||
$! First insert the Readme file.
|
||||
$!
|
||||
$ open/read rf 'readme_file'
|
||||
$!
|
||||
$ write ptxt "1 'PRODUCT"
|
||||
$ write ptxt "=prompt ''producter' ''product' for OpenVMS"
|
||||
$!
|
||||
$rf_loop:
|
||||
$ read/end=rf_loop_end rf line_in
|
||||
$ if line_in .nes. ""
|
||||
$ then
|
||||
$! PCSI files use the first character in for their purposes.
|
||||
$!--------------------------------------------------------------
|
||||
$ first_char = f$extract(0, 1, line_in)
|
||||
$ if first_char .nes. " " then line_in = " " + line_in
|
||||
$ endif
|
||||
$ write ptxt line_in
|
||||
$ goto rf_loop
|
||||
$rf_loop_end:
|
||||
$ close rf
|
||||
$!
|
||||
$!
|
||||
$! Now add in the copying file
|
||||
$!--------------------------------
|
||||
$ write ptxt ""
|
||||
$ write ptxt "1 'NOTICE"
|
||||
$ write ptxt ""
|
||||
$!
|
||||
$ open/read cf 'copying_file'
|
||||
$!
|
||||
$cf_loop:
|
||||
$ read/end=cf_loop_end cf line_in
|
||||
$ if line_in .nes. ""
|
||||
$ then
|
||||
$! PCSI files use the first character in for their purposes.
|
||||
$!--------------------------------------------------------------
|
||||
$ first_char = f$extract(0, 1, line_in)
|
||||
$ if first_char .nes. " " then line_in = " " + line_in
|
||||
$ endif
|
||||
$ write ptxt line_in
|
||||
$ goto cf_loop
|
||||
$cf_loop_end:
|
||||
$ close cf
|
||||
$!
|
||||
$! Now we need the rest of the boiler plate.
|
||||
$!--------------------------------------------
|
||||
$ write ptxt ""
|
||||
$ write ptxt "1 'PRODUCER"
|
||||
$ write ptxt "=prompt ''producer_full_name'"
|
||||
$ write ptxt -
|
||||
"This software product is provided by ''producer_full_name' with no warranty."
|
||||
$!
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ node_swvers = f$getsyi("node_swvers")
|
||||
$ vernum = f$extract(1, f$length(node_swvers), node_swvers)
|
||||
$ majver = f$element(0, ".", vernum)
|
||||
$ minverdash = f$element(1, ".", vernum)
|
||||
$ minver = f$element(0, "-", minverdash)
|
||||
$ dashver = f$element(1, "-", minverdash)
|
||||
$ if dashver .eqs. "-" then dashver = ""
|
||||
$ vmstag = majver + minver + dashver
|
||||
$ code = f$extract(0, 1, arch_type)
|
||||
$!
|
||||
$ write ptxt "1 NEED_VMS''vmstag'"
|
||||
$ write ptxt -
|
||||
"=prompt OpenVMS ''vernum' or later is not installed on your system."
|
||||
$ write ptxt "This product requires OpenVMS ''vernum' or later to function."
|
||||
$ write ptxt "1 NEED_ZLIB"
|
||||
$ write ptxt "=prompt ZLIB 1.2-8 or later is not installed on your system."
|
||||
$ write ptxt "This product requires ZLIB 1.2-8 or later to function."
|
||||
$ write ptxt "1 SOURCE"
|
||||
$ write ptxt "=prompt Source modules for ''product'"
|
||||
$ write ptxt "The Source modules for ''product' will be installed."
|
||||
$ write ptxt "1 RELEASE_NOTES"
|
||||
$ write ptxt "=prompt Release notes are available in the [SYSHLP] directory."
|
||||
$!
|
||||
$ close ptxt
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$all_exit:
|
||||
$ exit
|
100
third_party/curl/packages/vms/build_gnv_curl_release_notes.com
vendored
Normal file
100
third_party/curl/packages/vms/build_gnv_curl_release_notes.com
vendored
Normal file
@ -0,0 +1,100 @@
|
||||
$! File: Build_GNV_curl_release_notes.com
|
||||
$!
|
||||
$! Build the release note file from the four components:
|
||||
$! 1. The curl_release_note_start.txt
|
||||
$! 2. The hp_ssl_release_info.txt
|
||||
$! 3. [--]readme. file from the Curl distribution.
|
||||
$! 4. The Curl_gnv-build_steps.txt.
|
||||
$!
|
||||
$! Set the name of the release notes from the GNV_PCSI_FILENAME_BASE
|
||||
$! logical name.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$ base_file = f$trnlnm("GNV_PCSI_FILENAME_BASE")
|
||||
$ if base_file .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ curl_readme = f$search("sys$disk:[--]readme.")
|
||||
$ if curl_readme .eqs. ""
|
||||
$ then
|
||||
$ curl_readme = f$search("sys$disk:[--]$README.")
|
||||
$ endif
|
||||
$ if curl_readme .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find Curl readme file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ curl_copying = f$search("sys$disk:[--]copying.")
|
||||
$ if curl_copying .eqs. ""
|
||||
$ then
|
||||
$ curl_copying = f$search("sys$disk:[--]$COPYING.")
|
||||
$ endif
|
||||
$ if curl_copying .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find Curl copying file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ vms_readme = f$search("sys$disk:[]readme.")
|
||||
$ if vms_readme .eqs. ""
|
||||
$ then
|
||||
$ vms_readme = f$search("sys$disk:[]$README.")
|
||||
$ endif
|
||||
$ if vms_readme .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find VMS specific Curl readme file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ curl_release_notes = f$search("sys$disk:[--]release-notes.")
|
||||
$ if curl_release_notes .eqs. ""
|
||||
$ then
|
||||
$ curl_release_notes = f$search("sys$disk:[--]$RELEASE-NOTES.")
|
||||
$ endif
|
||||
$ if curl_release_notes .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find Curl release-notes file."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ if f$search("sys$disk:[]hp_ssl_release_info.txt") .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "GNV_LINK_CURL.COM has not been run!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ type/noheader 'curl_readme', 'vms_readme', -
|
||||
'curl_release_notes', -
|
||||
sys$disk:[]curl_release_note_start.txt, -
|
||||
sys$disk:[]hp_ssl_release_info.txt, -
|
||||
'curl_copying', -
|
||||
sys$disk:[]curl_gnv_build_steps.txt -
|
||||
/out='base_file'.release_notes
|
||||
$!
|
||||
$ purge 'base_file'.release_notes
|
||||
$ rename 'base_file.release_notes ;1
|
||||
$!
|
||||
$all_exit:
|
||||
$ exit
|
202
third_party/curl/packages/vms/build_libcurl_pc.com
vendored
Normal file
202
third_party/curl/packages/vms/build_libcurl_pc.com
vendored
Normal file
@ -0,0 +1,202 @@
|
||||
$! File: build_libcurl_pc.com
|
||||
$!
|
||||
$! Build the libcurl.pc file from the libcurl.pc.in file
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$! Skip this if the libcurl.pc already exists.
|
||||
$ if f$search("[--]libcurl.pc") .nes. "" then goto all_exit
|
||||
$!
|
||||
$! Need to know the kit type.
|
||||
$ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
|
||||
$ if kit_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Parse the kit name into components.
|
||||
$!---------------------------------------
|
||||
$ producer = f$element(0, "-", kit_name)
|
||||
$ base = f$element(1, "-", kit_name)
|
||||
$ product = f$element(2, "-", kit_name)
|
||||
$ mmversion = f$element(3, "-", kit_name)
|
||||
$ majorver = f$extract(0, 3, mmversion)
|
||||
$ minorver = f$extract(3, 2, mmversion)
|
||||
$ updatepatch = f$element(4, "-", kit_name)
|
||||
$ if updatepatch .eqs. "-" then updatepatch = ""
|
||||
$!
|
||||
$! kit type of "D" means a daily build
|
||||
$ kit_type = f$edit(f$extract(0, 1, majorver), "upcase")
|
||||
$!
|
||||
$ pc_file_in = "[--]libcurl^.pc.in"
|
||||
$!
|
||||
$ if f$search(pc_file_in) .eqs. ""
|
||||
$ then
|
||||
$ pc_file_in = "[--]libcurl.pc$5nin"
|
||||
$ if f$search(pc_file_in) .eqs. ""
|
||||
$ then
|
||||
$ pc_file_in = "[--]libcurl.pc_in"
|
||||
$ if f$search(pc_file_in) .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find libcurl.pc.in."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$ if (f$getsyi("HW_MODEL") .lt. 1024)
|
||||
$ then
|
||||
$ arch_name = "VAX"
|
||||
$ else
|
||||
$ arch_name = ""
|
||||
$ arch_name = arch_name + f$edit(f$getsyi("ARCH_NAME"), "UPCASE")
|
||||
$ if (arch_name .eqs. "") then arch_name = "UNK"
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ curl_version = "0.0.0"
|
||||
$ open/read vf [--.src]tool_version.h
|
||||
$version_loop:
|
||||
$ read vf/end=version_loop_end line_in
|
||||
$ if line_in .eqs. "" then goto version_loop
|
||||
$ key = f$element(0, " ", line_in)
|
||||
$ if key .nes. "#define" then goto version_loop
|
||||
$ name = f$element(1, " ", line_in)
|
||||
$ if name .eqs. "VERSION"
|
||||
$ then
|
||||
$ curl_version = f$element(2, " ", line_in) - """" - """"
|
||||
$ else
|
||||
$ goto version_loop
|
||||
$ endif
|
||||
$version_loop_end:
|
||||
$ close vf
|
||||
$!
|
||||
$!
|
||||
$ create [--]libcurl.pc
|
||||
$ open/append pco [--]libcurl.pc
|
||||
$ open/read pci 'pc_file_in'
|
||||
$pc_file_loop:
|
||||
$ read pci/end=pc_file_loop_end line_in
|
||||
$!
|
||||
$! blank lines
|
||||
$ if line_in .eqs. ""
|
||||
$ then
|
||||
$ write pco ""
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$!
|
||||
$! comment lines
|
||||
$ key = f$extract(0, 1, line_in)
|
||||
$ if key .eqs. "#"
|
||||
$ then
|
||||
$ write pco line_in
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$!
|
||||
$! Special handling for libs.
|
||||
$ if f$locate("Libs:", line_in) .eq. 0
|
||||
$ then
|
||||
$ write pco "#",line_in
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$! No substitution line
|
||||
$ line_in_len = f$length(line_in)
|
||||
$ if f$locate("@", line_in) .ge. line_in_len
|
||||
$ then
|
||||
$ write pco line_in
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$!
|
||||
$ if f$locate("@prefix@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ if kit_type .nes. "D"
|
||||
$ then
|
||||
$ write pco "prefix=/usr"
|
||||
$ else
|
||||
$ write pco "prefix=/beta"
|
||||
$ endif
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@exec_prefix@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ if kit_type .nes. "D"
|
||||
$ then
|
||||
$ write pco "exec_prefix=/usr"
|
||||
$ else
|
||||
$ write pco "exec_prefix=/beta"
|
||||
$ endif
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@libdir@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ write pco "libdir=$(exec_prefix}/lib"
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@includedir@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ write pco "includedir=$(prefix}/include"
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@SUPPORT_PROTOCOLS@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ proto1 = "DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS"
|
||||
$ proto2 = " LDAP LDAPS POP3 POP3S RTSP SMTP SMTPS TELNET TFTP"
|
||||
$ proto = proto1 + proto2
|
||||
$ write pco "supported_protocols=""" + proto + """"
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@SUPPORT_FEATURES@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ write pco "supported_features=""SSL libz NTLM"""
|
||||
$ else
|
||||
$ write pco "supported_features=""SSL IPv6 libz NTLM"""
|
||||
$ endif
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@CURLVERSION@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ write pco "Version: ''curl_version'"
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@LIBCURL_LIBS@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ write pco "Libs.private: -lssl -lcrypto -lz"
|
||||
$ else
|
||||
$ write pco "Libs.private: -lssl -lcrypto -lgssapi -lz"
|
||||
$ endif
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$ if f$locate("@CPPFLAG_CURL_STATICLIB@", line_in) .lt line_in_len
|
||||
$ then
|
||||
$ write pco "Cflags: -I${includedir} -DCURL_STATICLIB"
|
||||
$ goto pc_file_loop
|
||||
$ endif
|
||||
$!
|
||||
$pc_file_loop_end:
|
||||
$ close pco
|
||||
$ close pci
|
||||
$!
|
||||
$all_exit:
|
||||
$ exit
|
1038
third_party/curl/packages/vms/build_vms.com
vendored
Normal file
1038
third_party/curl/packages/vms/build_vms.com
vendored
Normal file
File diff suppressed because it is too large
Load Diff
239
third_party/curl/packages/vms/clean_gnv_curl.com
vendored
Normal file
239
third_party/curl/packages/vms/clean_gnv_curl.com
vendored
Normal file
@ -0,0 +1,239 @@
|
||||
$! File: clean_gnv_curl.COM
|
||||
$!
|
||||
$! The GNV environment leaves behind some during the configure and build
|
||||
$! procedure that need to be cleaned up.
|
||||
$!
|
||||
$! The default is to remove all the left over stuff from running the
|
||||
$! configure script and to remove all intermediate binary files.
|
||||
$!
|
||||
$! This should be run with no parameters after the gnv_curl_configure.sh
|
||||
$! script is run.
|
||||
$!
|
||||
$! Parameter P1: REALCLEAN
|
||||
$! This removes all build products and brings the environment back to
|
||||
$! the point where the gnv_curl_configure.sh procedure needs to be run again.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!============================================================================
|
||||
$!
|
||||
$! Save this so we can get back.
|
||||
$ default_dir = f$environment("default")
|
||||
$!
|
||||
$!
|
||||
$! Move to where the base directory is.
|
||||
$ set def [--]
|
||||
$!
|
||||
$!
|
||||
$ file = "sys$login:sh*."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "sys$login:make*."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]confdefs.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]conftest.dsf"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]conftest.lis"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]conftest.sym"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$!
|
||||
$ file = "lcl_root:[.conf*...]*.*"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "lcl_root:[]conf*.dir
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]*.out"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "lcl_root:[.lib]*.o"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]*.lis"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]*.lis"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]cc_temp*."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]*.dsf"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]*.o"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]ar*."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]cc_temp*."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.lo"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.a"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.la"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.lai"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl-*_original_src.bck"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl_d-*_original_src.bck"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl-*_vms_src.bck"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl_d-*_vms_src.bck"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl-*.release_notes"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]curl_d-*.release_notes"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]*-curl-*.pcsi$desc"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]*-curl_d-*.pcsi$desc"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]*-curl-*.pcsi$text"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.packages.vms]*-curl_d-*.pcsi$text"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$!======================================================================
|
||||
$!
|
||||
$ if p1 .nes. "REALCLEAN" then goto all_exit
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.obj"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]Makefile."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]libtool."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.lis"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]POTFILES."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]libcurl.pc"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]curl-config."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]config.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]config.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.src]curl."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.tests]configurehelp.pm"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]config.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]curl_config.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]libcurl.vers"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]ca-bundle.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]config.log"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]config.status"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]conftest.dangle"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]CXX$DEMANGLER_DB."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[]stamp-h1."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]stamp-h1."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]stamp-h2."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]stamp-h3."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[.lib]*.a"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]*.spec"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]gnv$*.*"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$!
|
||||
$ file = "lcl_root:[...]gnv*.opt"
|
||||
$ 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.
|
||||
$!-----------------------
|
||||
$ set def 'default_dir'
|
||||
$!
|
||||
$ exit
|
363
third_party/curl/packages/vms/compare_curl_source.com
vendored
Normal file
363
third_party/curl/packages/vms/compare_curl_source.com
vendored
Normal file
@ -0,0 +1,363 @@
|
||||
$! Compare_curl_source.com
|
||||
$!
|
||||
$! This procedure compares the files in two directories and reports the
|
||||
$! differences. It is customized for the vmsports repository layout.
|
||||
$!
|
||||
$! It needs to be customized to the local site directories.
|
||||
$!
|
||||
$! This is used by me for these purposes:
|
||||
$! 1. Compare the original source of a project with an existing
|
||||
$! VMS port.
|
||||
$! 2. Compare the checked out repository of a project with the
|
||||
$! the local working copy to make sure they are in sync.
|
||||
$! 3. Keep a copy directory up to date. The third is needed by
|
||||
$! me because VMS Backup can create a saveset of files from a
|
||||
$! NFS mounted volume.
|
||||
$!
|
||||
$! First the files in the original source directory which is assumed to be
|
||||
$! under source code control are compared with the copy directory.
|
||||
$!
|
||||
$! Then the files are are only in the copy directory are listed.
|
||||
$!
|
||||
$! The result will five diagnostics about of files:
|
||||
$! 1. Files that are not generation 1.
|
||||
$! 2. Files missing in the copy directory.
|
||||
$! 3. Files in the copy directory not in the source directory.
|
||||
$! 4. Files different from the source directory.
|
||||
$! 5. Files that VMS DIFF can not process.
|
||||
$!
|
||||
$! This needs to be run on an ODS-5 volume.
|
||||
$!
|
||||
$! If UPDATE is given as a second parameter, files missing or different in the
|
||||
$! copy directory will be updated.
|
||||
$!
|
||||
$! By default:
|
||||
$! The directory src_root:[project_name] will be translated to something like
|
||||
$! DISK:[dir.dir.reference.project_name] and this will be used
|
||||
$! to calculate DISK:[dir.dir.vms_source.project_name] for the VMS specific
|
||||
$! source directory.
|
||||
$!
|
||||
$! 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
|
||||
$! and the repository checkout directory have the same contents.
|
||||
$!
|
||||
$! If P1 is "SRCBCK" then this
|
||||
$! The source directory tree is: src_root:[project_name]
|
||||
$! The copy directory is src_root1:[project_name]
|
||||
$!
|
||||
$! src_root1:[project_name] is used by me to work around that VMS backup will
|
||||
$! not use NFS as a source directory so I need to make a copy.
|
||||
$!
|
||||
$! This is to make sure that the backup save set for the unmodified
|
||||
$! source is up to date.
|
||||
$!
|
||||
$! 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:
|
||||
$! The source directory is vms_root:[project_name]
|
||||
$! The copy directory is vms_root1:[project_name]
|
||||
$!
|
||||
$! vms_root:[project_name] is where I do the VMS specific edits.
|
||||
$! vms_root1:[project_name] is used by me to work around that VMS backup will
|
||||
$! not use NFS as a source directory so I need to make a copy.
|
||||
$!
|
||||
$! This is to make sure that the backup save set for the unmodified
|
||||
$! source is up to date.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!==========================================================================
|
||||
$!
|
||||
$! Update missing/changed files.
|
||||
$ update_file = 0
|
||||
$ if (p2 .eqs. "UPDATE")
|
||||
$ then
|
||||
$ update_file = 1
|
||||
$ endif
|
||||
$!
|
||||
$ myproc = f$environment("PROCEDURE")
|
||||
$ myprocdir = f$parse(myproc,,,"DIRECTORY") - "[" - "]" - "<" - ">"
|
||||
$ myprocdir = f$edit(myprocdir, "LOWERCASE")
|
||||
$ mydefault = f$environment("DEFAULT")
|
||||
$ mydir = f$parse(mydefault,,,"DIRECTORY")
|
||||
$ mydir = f$edit(mydir, "LOWERCASE")
|
||||
$ odelim = f$extract(0, 1, mydir)
|
||||
$ mydir = mydir - "[" - "]" - "<" - ">"
|
||||
$ mydev = f$parse(mydefault,,,"DEVICE")
|
||||
$!
|
||||
$ ref = ""
|
||||
$ if P1 .eqs. ""
|
||||
$ then
|
||||
$ ref_base_dir = myprocdir
|
||||
$ wrk_base_dir = mydir
|
||||
$ update_file = 0
|
||||
$ resultd = f$parse("src_root:",,,,"NO_CONCEAL")
|
||||
$ resultd = f$edit(resultd, "LOWERCASE")
|
||||
$ resultd = resultd - "][" - "><" - ".;" - ".."
|
||||
$ resultd_len = f$length(resultd) - 1
|
||||
$ delim = f$extract(resultd_len, 1, resultd)
|
||||
$ ref_root_base = mydir + delim
|
||||
$ resultd = resultd - ref_root_base - "reference." + "vms_source."
|
||||
$ ref = resultd + ref_base_dir
|
||||
$ wrk = "VMS_ROOT:" + odelim + wrk_base_dir
|
||||
$ resultd_len = f$length(resultd) - 1
|
||||
$ resultd = f$extract(0, resultd_len, resultd) + delim
|
||||
$ ref_root_dir = f$parse(resultd,,,"DIRECTORY")
|
||||
$ ref_root_dir = f$edit(ref_root_dir, "LOWERCASE")
|
||||
$ ref_root_dir = ref_root_dir - "[" - "]"
|
||||
$ ref_base_dir = ref_root_dir + "." + ref_base_dir
|
||||
$ endif
|
||||
$!
|
||||
$ if p1 .eqs. "SRCBCK"
|
||||
$ then
|
||||
$ ref_base_dir = "curl"
|
||||
$ wrk_base_dir = "curl"
|
||||
$ ref = "src_root:[" + ref_base_dir
|
||||
$ wrk = "src_root1:[" + wrk_base_dir
|
||||
$ if update_file
|
||||
$ then
|
||||
$ if f$search("src_root1:[000000]curl.dir") .eqs. ""
|
||||
$ then
|
||||
$ create/dir/prot=o:rwed src_root1:[curl]
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if p1 .eqs. "VMSBCK"
|
||||
$ then
|
||||
$ ref_base_dir = "curl"
|
||||
$ wrk_base_dir = "curl"
|
||||
$ ref = "vms_root:[" + ref_base_dir
|
||||
$ wrk = "vms_root1:[" + wrk_base_dir
|
||||
$ if update_file
|
||||
$ then
|
||||
$ if f$search("vms_root1:[000000]curl.dir") .eqs. ""
|
||||
$ then
|
||||
$ create/dir/prot=o:rwed vms_root1:[curl]
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if ref .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Unknown compare type specified!"
|
||||
$ exit 44
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Future - check the device types involved for the
|
||||
$! the syntax to check.
|
||||
$ ODS2_SYNTAX = 0
|
||||
$ NFS_MANGLE = 0
|
||||
$ PWRK_MANGLE = 0
|
||||
$!
|
||||
$ vax = f$getsyi("HW_MODEL") .lt. 1024
|
||||
$ if vax
|
||||
$ then
|
||||
$ ODS2_SYNTAX = 1
|
||||
$ endif
|
||||
$!
|
||||
$ report_missing = 1
|
||||
$!
|
||||
$ if .not. ODS2_SYNTAX
|
||||
$ then
|
||||
$ set proc/parse=extended
|
||||
$ endif
|
||||
$!
|
||||
$loop:
|
||||
$ ref_spec = f$search("''ref'...]*.*;",1)
|
||||
$ if ref_spec .eqs. "" then goto loop_end
|
||||
$!
|
||||
$ ref_dev = f$parse(ref_spec,,,"DEVICE")
|
||||
$ ref_dir = f$parse(ref_spec,,,"DIRECTORY")
|
||||
$ ref_dir = f$edit(ref_dir, "LOWERCASE")
|
||||
$ ref_name = f$parse(ref_spec,,,"NAME")
|
||||
$ ref_type = f$parse(ref_spec,,,"TYPE")
|
||||
$!
|
||||
$!
|
||||
$ 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 = rel_path - ".]" - ".>" - "]" - ">"
|
||||
$! rel_path = rel_path + delim
|
||||
$!
|
||||
$ if ODS2_SYNTAX
|
||||
$ then
|
||||
$! if rel_path .eqs. ".examples.scripts^.noah]"
|
||||
$! then
|
||||
$! rel_path = ".examples.scripts_noah]"
|
||||
$! endif
|
||||
$! if rel_path .eqs. ".examples.scripts^.v2]"
|
||||
$! then
|
||||
$! rel_path = ".examples.scripts_v2]"
|
||||
$! endif
|
||||
$ endif
|
||||
$!
|
||||
$ wrk_path = wrk + rel_path
|
||||
$!
|
||||
$ ref_name_type = ref_name + ref_type
|
||||
$!
|
||||
$ if ODS2_SYNTAX
|
||||
$ then
|
||||
$ endif
|
||||
$!
|
||||
$ wrk_spec = wrk_path + ref_name_type
|
||||
$!
|
||||
$!
|
||||
$ wrk_chk = f$search(wrk_spec, 0)
|
||||
$ if wrk_chk .eqs. ""
|
||||
$ then
|
||||
$ if report_missing
|
||||
$ then
|
||||
$ write sys$output "''wrk_spec' is missing"
|
||||
$ endif
|
||||
$ if update_file
|
||||
$ then
|
||||
$ copy/log 'ref_spec' 'wrk_spec'
|
||||
$ endif
|
||||
$ goto loop
|
||||
$ endif
|
||||
$!
|
||||
$ wrk_name = f$parse(wrk_spec,,,"NAME")
|
||||
$ wrk_type = f$parse(wrk_spec,,,"TYPE")
|
||||
$ wrk_fname = wrk_name + wrk_type"
|
||||
$ ref_fname = ref_name + ref_type
|
||||
$!
|
||||
$ if ref_fname .nes. wrk_fname
|
||||
$ then
|
||||
$ write sys$output "''wrk_spc' wrong name, should be ""''ref_fname'"""
|
||||
$ endif
|
||||
$!
|
||||
$ ref_type = f$edit(ref_type, "UPCASE")
|
||||
$ if ref_type .eqs. ".DIR" then goto loop
|
||||
$!
|
||||
$ if ODS2_SYNTAX
|
||||
$ then
|
||||
$ ref_fname = f$edit(ref_fname, "LOWERCASE")
|
||||
$ endif
|
||||
$!
|
||||
$! These files are in the wrong format for VMS diff, and we don't change them.
|
||||
$ ref_skip = 0
|
||||
$ if ref_type .eqs. ".PDF" then ref_skip = 1
|
||||
$ if ref_type .eqs. ".HTML" then ref_skip = 1
|
||||
$ if ref_type .eqs. ".P12" then ref_skip = 1
|
||||
$ if ref_type .eqs. "."
|
||||
$ then
|
||||
$ if f$locate("test", ref_fname) .eq. 0 then ref_skip = 1
|
||||
$ if ref_fname .eqs. "configure." then ref_skip = 1
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if ref_skip .ne. 0
|
||||
$ then
|
||||
$ if report_missing
|
||||
$ then
|
||||
$ write sys$output "Skipping diff of ''ref_fname'"
|
||||
$ endif
|
||||
$ goto loop
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ wrk_ver = f$parse(wrk_chk,,,"VERSION")
|
||||
$ if wrk_ver .nes. ";1"
|
||||
$ then
|
||||
$ write sys$output "Version for ''wrk_spec' is not 1"
|
||||
$ endif
|
||||
$ set noon
|
||||
$ diff/out=nl: 'wrk_spec' 'ref_spec'
|
||||
$ if $severity .nes. "1"
|
||||
$ then
|
||||
$ write sys$output "''wrk_spec' is different from ''ref_spec'"
|
||||
$ if update_file
|
||||
$ then
|
||||
$ delete 'wrk_spec';*
|
||||
$ copy/log 'ref_spec' 'wrk_spec'
|
||||
$ endif
|
||||
$ endif
|
||||
$ set on
|
||||
$
|
||||
$!
|
||||
$ goto loop
|
||||
$loop_end:
|
||||
$!
|
||||
$!
|
||||
$missing_loop:
|
||||
$! For missing loop, check the latest generation.
|
||||
$ ref_spec = f$search("''wrk'...]*.*;")
|
||||
$ if ref_spec .eqs. "" then goto missing_loop_end
|
||||
$!
|
||||
$ ref_dev = f$parse(ref_spec,,,"DEVICE")
|
||||
$ ref_dir = f$parse(ref_spec,,,"DIRECTORY")
|
||||
$ ref_dir = f$edit(ref_dir, "LOWERCASE")
|
||||
$ ref_name = f$parse(ref_spec,,,"NAME")
|
||||
$ ref_type = f$parse(ref_spec,,,"TYPE")
|
||||
$ ref_name_type = ref_name + ref_type
|
||||
$!
|
||||
$ rel_path = ref_dir - "[" - wrk_base_dir
|
||||
$!
|
||||
$!
|
||||
$ wrk_path = ref + rel_path
|
||||
$ wrk_spec = wrk_path + ref_name + ref_type
|
||||
$ wrk_name = f$parse(wrk_spec,,,"NAME")
|
||||
$ wrk_type = f$parse(wrk_spec,,,"TYPE")
|
||||
$!
|
||||
$ wrk_fname = wrk_name + wrk_type"
|
||||
$ ref_fname = ref_name + ref_type
|
||||
$!
|
||||
$ wrk_skip = 0
|
||||
$ ref_utype = f$edit(ref_type,"UPCASE")
|
||||
$ ref_ufname = f$edit(ref_fname,"UPCASE")
|
||||
$!
|
||||
$ if wrk_skip .eq. 0
|
||||
$ then
|
||||
$ wrk_chk = f$search(wrk_spec, 0)
|
||||
$ if wrk_chk .eqs. ""
|
||||
$ then
|
||||
$ if report_missing
|
||||
$ then
|
||||
$ write sys$output "''wrk_spec' is missing"
|
||||
$ endif
|
||||
$ goto missing_loop
|
||||
$ endif
|
||||
$ else
|
||||
$ goto missing_loop
|
||||
$ endif
|
||||
$!
|
||||
$ if ref_fname .nes. wrk_fname
|
||||
$ then
|
||||
$ write sys$output "''wrk_spc' wrong name, should be ""''ref_fname'"""
|
||||
$ endif
|
||||
$!
|
||||
$ if ref_utype .eqs. ".DIR" then goto missing_loop
|
||||
$!
|
||||
$ wrk_ver = f$parse(wrk_chk,,,"VERSION")
|
||||
$ if wrk_ver .nes. ";1"
|
||||
$ then
|
||||
$ write sys$output "Version for ''wrk_spec' is not 1"
|
||||
$ endif
|
||||
$!
|
||||
$ goto missing_loop
|
||||
$!
|
||||
$!
|
||||
$missing_loop_end:
|
||||
$!
|
||||
$exit
|
1972
third_party/curl/packages/vms/config_h.com
vendored
Normal file
1972
third_party/curl/packages/vms/config_h.com
vendored
Normal file
File diff suppressed because it is too large
Load Diff
333
third_party/curl/packages/vms/curl_crtl_init.c
vendored
Normal file
333
third_party/curl/packages/vms/curl_crtl_init.c
vendored
Normal file
@ -0,0 +1,333 @@
|
||||
/***************************************************************************
|
||||
* _ _ ____ _
|
||||
* Project ___| | | | _ \| |
|
||||
* / __| | | | |_) | |
|
||||
* | (__| |_| | _ <| |___
|
||||
* \___|\___/|_| \_\_____|
|
||||
*
|
||||
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
*
|
||||
* This software is licensed as described in the file COPYING, which
|
||||
* you should have received as part of this distribution. The terms
|
||||
* are also available at https://curl.se/docs/copyright.html.
|
||||
*
|
||||
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
* copies of the Software, and permit persons to whom the Software is
|
||||
* furnished to do so, under the terms of the COPYING file.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
* SPDX-License-Identifier: curl
|
||||
*
|
||||
***************************************************************************/
|
||||
/* File: curl_crtl_init.c
|
||||
*
|
||||
* This file makes sure that the DECC Unix settings are correct for
|
||||
* the mode the program is run in.
|
||||
*
|
||||
* The CRTL has not been initialized at the time that these routines
|
||||
* are called, so many routines can not be called.
|
||||
*
|
||||
* This is a module that provides a LIB$INITIALIZE routine that
|
||||
* will turn on some CRTL features that are not enabled by default.
|
||||
*
|
||||
* The CRTL features can also be turned on via logical names, but that
|
||||
* impacts all programs and some aren't ready, willing, or able to handle
|
||||
* those settings.
|
||||
*
|
||||
* On VMS versions that are too old to use the feature setting API, this
|
||||
* module falls back to using logical names.
|
||||
*
|
||||
* Copyright (C) John Malmberg
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
*/
|
||||
|
||||
/* Unix headers */
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
/* VMS specific headers */
|
||||
#include <descrip.h>
|
||||
#include <lnmdef.h>
|
||||
#include <stsdef.h>
|
||||
|
||||
#pragma member_alignment save
|
||||
#pragma nomember_alignment longword
|
||||
#pragma message save
|
||||
#pragma message disable misalgndmem
|
||||
struct itmlst_3 {
|
||||
unsigned short int buflen;
|
||||
unsigned short int itmcode;
|
||||
void *bufadr;
|
||||
unsigned short int *retlen;
|
||||
};
|
||||
#pragma message restore
|
||||
#pragma member_alignment restore
|
||||
|
||||
#ifdef __VAX
|
||||
#define ENABLE "ENABLE"
|
||||
#define DISABLE "DISABLE"
|
||||
#else
|
||||
|
||||
#define ENABLE TRUE
|
||||
#define DISABLE 0
|
||||
int decc$feature_get_index (const char *name);
|
||||
int decc$feature_set_value (int index, int mode, int value);
|
||||
#endif
|
||||
|
||||
int SYS$TRNLNM(
|
||||
const unsigned long * attr,
|
||||
const struct dsc$descriptor_s * table_dsc,
|
||||
struct dsc$descriptor_s * name_dsc,
|
||||
const unsigned char * acmode,
|
||||
const struct itmlst_3 * item_list);
|
||||
int SYS$CRELNM(
|
||||
const unsigned long * attr,
|
||||
const struct dsc$descriptor_s * table_dsc,
|
||||
const struct dsc$descriptor_s * name_dsc,
|
||||
const unsigned char * acmode,
|
||||
const struct itmlst_3 * item_list);
|
||||
|
||||
|
||||
/* Take all the fun out of simply looking up a logical name */
|
||||
static int sys_trnlnm
|
||||
(const char * logname,
|
||||
char * value,
|
||||
int value_len)
|
||||
{
|
||||
const $DESCRIPTOR(table_dsc, "LNM$FILE_DEV");
|
||||
const unsigned long attr = LNM$M_CASE_BLIND;
|
||||
struct dsc$descriptor_s name_dsc;
|
||||
int status;
|
||||
unsigned short result;
|
||||
struct itmlst_3 itlst[2];
|
||||
|
||||
itlst[0].buflen = value_len;
|
||||
itlst[0].itmcode = LNM$_STRING;
|
||||
itlst[0].bufadr = value;
|
||||
itlst[0].retlen = &result;
|
||||
|
||||
itlst[1].buflen = 0;
|
||||
itlst[1].itmcode = 0;
|
||||
|
||||
name_dsc.dsc$w_length = strlen(logname);
|
||||
name_dsc.dsc$a_pointer = (char *)logname;
|
||||
name_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
|
||||
name_dsc.dsc$b_class = DSC$K_CLASS_S;
|
||||
|
||||
status = SYS$TRNLNM(&attr, &table_dsc, &name_dsc, 0, itlst);
|
||||
|
||||
if($VMS_STATUS_SUCCESS(status)) {
|
||||
|
||||
/* Null terminate and return the string */
|
||||
/*--------------------------------------*/
|
||||
value[result] = '\0';
|
||||
}
|
||||
|
||||
return status;
|
||||
}
|
||||
|
||||
/* How to simply create a logical name */
|
||||
static int sys_crelnm
|
||||
(const char * logname,
|
||||
const char * value)
|
||||
{
|
||||
int ret_val;
|
||||
const char * proc_table = "LNM$PROCESS_TABLE";
|
||||
struct dsc$descriptor_s proc_table_dsc;
|
||||
struct dsc$descriptor_s logname_dsc;
|
||||
struct itmlst_3 item_list[2];
|
||||
|
||||
proc_table_dsc.dsc$a_pointer = (char *) proc_table;
|
||||
proc_table_dsc.dsc$w_length = strlen(proc_table);
|
||||
proc_table_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
|
||||
proc_table_dsc.dsc$b_class = DSC$K_CLASS_S;
|
||||
|
||||
logname_dsc.dsc$a_pointer = (char *) logname;
|
||||
logname_dsc.dsc$w_length = strlen(logname);
|
||||
logname_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
|
||||
logname_dsc.dsc$b_class = DSC$K_CLASS_S;
|
||||
|
||||
item_list[0].buflen = strlen(value);
|
||||
item_list[0].itmcode = LNM$_STRING;
|
||||
item_list[0].bufadr = (char *)value;
|
||||
item_list[0].retlen = NULL;
|
||||
|
||||
item_list[1].buflen = 0;
|
||||
item_list[1].itmcode = 0;
|
||||
|
||||
ret_val = SYS$CRELNM(NULL, &proc_table_dsc, &logname_dsc, NULL, item_list);
|
||||
|
||||
return ret_val;
|
||||
}
|
||||
|
||||
|
||||
/* Start of DECC RTL Feature handling */
|
||||
|
||||
/*
|
||||
** Sets default value for a feature
|
||||
*/
|
||||
#ifdef __VAX
|
||||
static void set_feature_default(const char *name, const char *value)
|
||||
{
|
||||
sys_crelnm(name, value);
|
||||
}
|
||||
#else
|
||||
static void set_feature_default(const char *name, int value)
|
||||
{
|
||||
int index;
|
||||
|
||||
index = decc$feature_get_index(name);
|
||||
|
||||
if(index > 0)
|
||||
decc$feature_set_value (index, 0, value);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void set_features(void)
|
||||
{
|
||||
int status;
|
||||
char unix_shell_name[255];
|
||||
int use_unix_settings = 1;
|
||||
|
||||
status = sys_trnlnm("GNV$UNIX_SHELL",
|
||||
unix_shell_name, sizeof unix_shell_name -1);
|
||||
if(!$VMS_STATUS_SUCCESS(status)) {
|
||||
use_unix_settings = 0;
|
||||
}
|
||||
|
||||
/* ACCESS should check ACLs or it is lying. */
|
||||
set_feature_default("DECC$ACL_ACCESS_CHECK", ENABLE);
|
||||
|
||||
/* We always want the new parse style */
|
||||
set_feature_default ("DECC$ARGV_PARSE_STYLE" , ENABLE);
|
||||
|
||||
|
||||
/* Unless we are in POSIX compliant mode, we want the old POSIX root
|
||||
* enabled.
|
||||
*/
|
||||
set_feature_default("DECC$DISABLE_POSIX_ROOT", DISABLE);
|
||||
|
||||
/* EFS charset, means UTF-8 support */
|
||||
/* VTF-7 support is controlled by a feature setting called UTF8 */
|
||||
set_feature_default ("DECC$EFS_CHARSET", ENABLE);
|
||||
set_feature_default ("DECC$EFS_CASE_PRESERVE", ENABLE);
|
||||
|
||||
/* Support timestamps when available */
|
||||
set_feature_default ("DECC$EFS_FILE_TIMESTAMPS", ENABLE);
|
||||
|
||||
/* Cache environment variables - performance improvements */
|
||||
set_feature_default ("DECC$ENABLE_GETENV_CACHE", ENABLE);
|
||||
|
||||
/* Start out with new file attribute inheritance */
|
||||
#ifdef __VAX
|
||||
set_feature_default ("DECC$EXEC_FILEATTR_INHERITANCE", "2");
|
||||
#else
|
||||
set_feature_default ("DECC$EXEC_FILEATTR_INHERITANCE", 2);
|
||||
#endif
|
||||
|
||||
/* Don't display trailing dot after files without type */
|
||||
set_feature_default ("DECC$READDIR_DROPDOTNOTYPE", ENABLE);
|
||||
|
||||
/* For standard output channels buffer output until terminator */
|
||||
/* Gets rid of output logs with single character lines in them. */
|
||||
set_feature_default ("DECC$STDIO_CTX_EOL", ENABLE);
|
||||
|
||||
/* Fix mv aa.bb aa */
|
||||
set_feature_default ("DECC$RENAME_NO_INHERIT", ENABLE);
|
||||
|
||||
if(use_unix_settings) {
|
||||
|
||||
/* POSIX requires that open files be able to be removed */
|
||||
set_feature_default ("DECC$ALLOW_REMOVE_OPEN_FILES", ENABLE);
|
||||
|
||||
/* Default to outputting Unix filenames in VMS routines */
|
||||
set_feature_default ("DECC$FILENAME_UNIX_ONLY", ENABLE);
|
||||
/* FILENAME_UNIX_ONLY Implicitly sets */
|
||||
/* decc$disable_to_vms_logname_translation */
|
||||
|
||||
set_feature_default ("DECC$FILE_PERMISSION_UNIX", ENABLE);
|
||||
|
||||
set_feature_default ("DECC$FILE_SHARING", ENABLE);
|
||||
|
||||
set_feature_default ("DECC$FILE_OWNER_UNIX", ENABLE);
|
||||
set_feature_default ("DECC$POSIX_SEEK_STREAM_FILE", ENABLE);
|
||||
|
||||
} else {
|
||||
set_feature_default("DECC$FILENAME_UNIX_REPORT", ENABLE);
|
||||
}
|
||||
|
||||
/* When reporting Unix filenames, glob the same way */
|
||||
set_feature_default ("DECC$GLOB_UNIX_STYLE", ENABLE);
|
||||
|
||||
/* The VMS version numbers on Unix filenames is incompatible with most */
|
||||
/* ported packages. */
|
||||
set_feature_default("DECC$FILENAME_UNIX_NO_VERSION", ENABLE);
|
||||
|
||||
/* The VMS version numbers on Unix filenames is incompatible with most */
|
||||
/* ported packages. */
|
||||
set_feature_default("DECC$UNIX_PATH_BEFORE_LOGNAME", ENABLE);
|
||||
|
||||
/* Set strtol to proper behavior */
|
||||
set_feature_default("DECC$STRTOL_ERANGE", ENABLE);
|
||||
|
||||
/* Commented here to prevent future bugs: A program or user should */
|
||||
/* never ever enable DECC$POSIX_STYLE_UID. */
|
||||
/* It will probably break all code that accesses UIDs */
|
||||
/* do_not_set_default ("DECC$POSIX_STYLE_UID", TRUE); */
|
||||
}
|
||||
|
||||
|
||||
/* Some boilerplate to force this to be a proper LIB$INITIALIZE section */
|
||||
|
||||
#pragma nostandard
|
||||
#pragma extern_model save
|
||||
#ifdef __VAX
|
||||
#pragma extern_model strict_refdef "LIB$INITIALIZE" nowrt, long, nopic
|
||||
#else
|
||||
#pragma extern_model strict_refdef "LIB$INITIALIZE" nowrt, long
|
||||
# if __INITIAL_POINTER_SIZE
|
||||
# pragma __pointer_size __save
|
||||
# pragma __pointer_size 32
|
||||
# else
|
||||
# pragma __required_pointer_size __save
|
||||
# pragma __required_pointer_size 32
|
||||
# endif
|
||||
#endif
|
||||
/* Set our contribution to the LIB$INITIALIZE array */
|
||||
void (* const iniarray[])(void) = {set_features, } ;
|
||||
#ifndef __VAX
|
||||
# if __INITIAL_POINTER_SIZE
|
||||
# pragma __pointer_size __restore
|
||||
# else
|
||||
# pragma __required_pointer_size __restore
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
** Force a reference to LIB$INITIALIZE to ensure it
|
||||
** exists in the image.
|
||||
*/
|
||||
int LIB$INITIALIZE(void);
|
||||
#ifdef __DECC
|
||||
#pragma extern_model strict_refdef
|
||||
#endif
|
||||
int lib_init_ref = (int) LIB$INITIALIZE;
|
||||
#ifdef __DECC
|
||||
#pragma extern_model restore
|
||||
#pragma standard
|
||||
#endif
|
290
third_party/curl/packages/vms/curl_gnv_build_steps.txt
vendored
Normal file
290
third_party/curl/packages/vms/curl_gnv_build_steps.txt
vendored
Normal file
@ -0,0 +1,290 @@
|
||||
From File: curl_gnv_build_steps.txt
|
||||
|
||||
Copyright (C) John Malmberg
|
||||
|
||||
Permission to use, copy, modify, and/or distribute this software for any
|
||||
purpose with or without fee is hereby granted, provided that the above
|
||||
copyright notice and this permission notice appear in all copies.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
|
||||
SPDX-License-Identifier: ISC
|
||||
|
||||
Currently building Curl using GNV takes longer than building Curl via DCL.
|
||||
The GNV procedure actually uses the same configure and makefiles that
|
||||
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
|
||||
same location or from the sourceforge.net GNV project.
|
||||
|
||||
The HP C 7.x compiler was used for building the GNV version.
|
||||
|
||||
The source kits are provided in backup savesets inside of the PCSI install kit.
|
||||
|
||||
Backup save sets are currently the only distribution medium that I can be
|
||||
sure is installed on a target VMS system that will correctly unpack files
|
||||
with extended character sets in them. You may need to adjust the ownership
|
||||
of the restored files, since /Interchange/noconvert was not available at the
|
||||
time that this document was written.
|
||||
|
||||
[gnv.common_src]curl_*_original_src.bck is the original source of the curl kit
|
||||
as provided by the curl project. [gnv.vms_src]curl-*_vms_src.bck, if present,
|
||||
has the OpenVMS specific files that are used for building that are not yet in
|
||||
the curl source kits for that release distributed https://curl.se
|
||||
|
||||
These backup savesets should be restored to different directory trees on
|
||||
an ODS-5 volume(s) which are referenced by concealed rooted logical names.
|
||||
|
||||
SRC_ROOT: is for the source files common to all platforms.
|
||||
VMS_ROOT: is for the source files that are specific to OpenVMS.
|
||||
Note, you should create the VMS_ROOT: directory tree even if it is
|
||||
initially empty. This is where you should put edits if you are
|
||||
making changes.
|
||||
LCL_ROOT: is manually created to have the same base and sub-directories as
|
||||
SRC_ROOT: and VMS_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 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.
|
||||
|
||||
In future releases of GNV, and with GNV Bash 4.3.30 installed, this name
|
||||
should be GNV$GNU:
|
||||
|
||||
As directly updating those directories would probably be disruptive to other
|
||||
users of the system and require elevated privilege, this can be handled by
|
||||
creating a separate directory tree to install into which can be referenced
|
||||
by the concealed rooted logical name new_gnu:. A concealed logical name of
|
||||
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:
|
||||
|
||||
The directory NEW_GNU:[usr] should be created. The make install phase should
|
||||
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:
|
||||
|
||||
$ create/dir lcl_root:[curl]/prot=w:re
|
||||
$ copy src_root:[curl...]*.dir -
|
||||
lcl_root:[curl...]/prot=(o:rwed,w:re)
|
||||
$ create/dir vms_root:[curl]/prot=w:re
|
||||
$ copy src_root:[curl...]*.dir -
|
||||
vms_root:[curl...]/prot=(o:rwed,w:re)
|
||||
|
||||
One of the ways with to protect the source from being modified is to have
|
||||
the directories under src_root: owned by a user or resource where the build
|
||||
username only has read access to it.
|
||||
|
||||
|
||||
Note to builders:
|
||||
|
||||
GNV currently has a bug where configure scripts take a long time to run.
|
||||
Some of the configure steps take a while to complete, and on a 600 Mhz
|
||||
DS10 with IDE disks, taking an hour to run the CURL configure is normal.
|
||||
|
||||
The following messages can be ignored and may get fixed in a future version
|
||||
of GNV. The GNV$*.OPT files are used to find the libraries as many have
|
||||
different names on VMS than on Unix. The Bash environment variable
|
||||
GNV_CC_QUALIFIERS can override all other settings for the C Compiler.
|
||||
|
||||
? cc: No support for switch -warnprotos
|
||||
? cc: Unrecognized file toomanyargs
|
||||
? cc: Warning: library "ssl" not found
|
||||
? cc: Warning: library "crypto" not found
|
||||
? cc: Warning: library "gssapi" not found
|
||||
? cc: Warning: library "z" not found
|
||||
u unimplemented switch - ignored
|
||||
|
||||
|
||||
With these search lists set up and the properly, curl can be built by
|
||||
setting your default to PRJ_ROOT:[curl.packages.vms] and then issuing
|
||||
either the command:
|
||||
|
||||
$ @pcsi_product_gnv_curl.com
|
||||
|
||||
or
|
||||
|
||||
$ @build_gnv_curl.com.
|
||||
|
||||
The GNV configure procedure takes considerably longer than the DCL build
|
||||
procedure takes. It is of use for testing the GNV build environment, and
|
||||
may not have been kept up to date.
|
||||
|
||||
The pcsi_product_gnv_curl.com needs the following logical names which
|
||||
are described in the section below:
|
||||
|
||||
gnv_pcsi_producer
|
||||
gnv_pcsi_producer_full_name
|
||||
stage_root
|
||||
vms_root1 (Optional if vms_root is on a NFS volume)
|
||||
src_root1 (Optional if src_root is on a NFS volume)
|
||||
|
||||
The pcsi_product_gnv_curl.com is described in more detail below. It does
|
||||
the following steps. The build steps are only done if they are needed to
|
||||
allow using either DCL or GNV based building procedures.
|
||||
|
||||
$ @build_vms list
|
||||
|
||||
$ @gnv_link_curl.com
|
||||
|
||||
$ @build_gnv_curl_release_notes.com
|
||||
|
||||
$ @backup_gnv_curl_src.com
|
||||
|
||||
$ @build_gnv_curl_pcsi_desc.com
|
||||
|
||||
$ @build_gnv_curl_pcsi_text.com
|
||||
|
||||
$ @stage_curl_install remove
|
||||
$ @stage_curl_install
|
||||
|
||||
Then builds the kit.
|
||||
|
||||
The build_gnv_curl.com command procedure does the following:
|
||||
|
||||
$ @setup_gnv_curl_build.com
|
||||
|
||||
$ bash gnv_curl_configure.sh
|
||||
|
||||
$ @clean_gnv_curl.com
|
||||
|
||||
$ bash make_gnv_curl_install.sh
|
||||
|
||||
$ @gnv_link_curl.com
|
||||
|
||||
$ @stage_curl_install.com
|
||||
|
||||
$ purge new_gnu:[*...]/log
|
||||
|
||||
To clean up after a GNV based build to start over, the following commands are
|
||||
used:
|
||||
|
||||
$ bash
|
||||
bash$ cd ../..
|
||||
bash$ make clean
|
||||
bash$ exit
|
||||
|
||||
Then run the @clean_gnv_curl.com. Use the parameter "realclean" if you are
|
||||
going to run the setup_gnv_curl_build.com and configure script again.
|
||||
|
||||
$ @clean_gnv_curl.com realclean
|
||||
|
||||
If new public symbols have been added, adjust the file gnv_libcurl_symbols.opt
|
||||
to have the new symbols. If the symbols are longer than 32 characters,
|
||||
then they will need to have the original be exact case CRC shortened and
|
||||
an alias in upper case with CRC shortened, in addition to having an exact
|
||||
case truncated alias and an uppercase truncated alias.
|
||||
|
||||
The *.EXE files are not moved to the new_gnu: directory.
|
||||
|
||||
After you are satisfied with the results of your build, you can move the
|
||||
files from new_gnu: to old_gnu: at your convenience.
|
||||
|
||||
Building a PCSI kit for an architecture 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]
|
||||
|
||||
2. Edit the file curl_release_note_start.txt or other text files to
|
||||
reflect any changes.
|
||||
|
||||
3. Define the logical name GNV_PCSI_PRODUCER to indicate who is making
|
||||
the distribution. For making updates to an existing open source
|
||||
kit you may need to keep the producer the same.
|
||||
|
||||
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 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
|
||||
directories.
|
||||
|
||||
A limitation of the PCSI kitting procedure is that when selecting files,
|
||||
it tends to ignore the directory structure and assumes that all files
|
||||
with the same name are the same file, so every file placed in the kit
|
||||
must have a unique name. Then a procedure needs to be added to the kit
|
||||
to create an alias link on install and remove the link on remove.
|
||||
|
||||
Since at this time curl does not need this alias procedure, the steps
|
||||
to automatically build it are not included here.
|
||||
|
||||
While newer versions of PCSI can support ODS-5 filenames, not all versions
|
||||
of PCSI on systems that have ODS-5 filenames do. So as a post install
|
||||
step, the PCSI kit built by these steps does a rename to the correct
|
||||
case as a post install step.
|
||||
|
||||
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
|
||||
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
|
||||
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
|
||||
|
||||
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.
|
77
third_party/curl/packages/vms/curl_release_note_start.txt
vendored
Normal file
77
third_party/curl/packages/vms/curl_release_note_start.txt
vendored
Normal file
@ -0,0 +1,77 @@
|
||||
From file: CURL_RELEASE_NOTE_START.TXT
|
||||
|
||||
Note: These kits are produced by a hobbyist and are providing any support
|
||||
or any commitment to supply bug fixes or future releases. This code is
|
||||
as-is with no warranties.
|
||||
|
||||
The testing of this build of curl was minimal and involved building some of
|
||||
the sample and test programs, accessing a public HTTPS: website, doing a
|
||||
form post of some VMS test files, and FTP upload of some text files.
|
||||
|
||||
Due to the way that PCSI identifies packages, if you install a package from
|
||||
one producer and then want to upgrade it from another producer, you will
|
||||
probably need to uninstall the previous package first.
|
||||
|
||||
OpenVMS specific building and kitting instructions are after the standard
|
||||
curl readme file.
|
||||
|
||||
This product may be available for your platform in a PCSI kit. The source kit
|
||||
contains files for building CURL using GNV or with a DCL procedure.
|
||||
|
||||
The GNV based build creates a libcurl share imaged which is supplied in the
|
||||
PCSI kit.
|
||||
|
||||
This version of CURL will return VMS compatible status codes when run from
|
||||
DCL and Unix compatible exit codes and messages when run with the SHELL
|
||||
environment variable set.
|
||||
|
||||
This port of Curl uses the OpenSSL, Ldap, and Kerberos V5 that are bundled
|
||||
with OpenVMS or supplied as updates by HP. Ldap and Kerberos are not available
|
||||
on the VAX platform. See section below for a special note about HP OpenSSL
|
||||
on Alpha and IA64.
|
||||
|
||||
The supplied CURL_STARTUP.COM procedure that is installed in
|
||||
[VMS$COMMON.SYS$STARTUP] can be put in your VMS startup procedure to install
|
||||
the GNV$LIBCURL shared image and create logical names GNV$LIBCURL to reference
|
||||
it. It will create the GNV$CURL_INCLUDE logical name for build procedures
|
||||
to access the header files.
|
||||
|
||||
Normally to use curl from DCL, just create a foreign command as:
|
||||
curl :== $gnv$gnu:[usr.bin]gnv$curl.exe
|
||||
|
||||
If you need to work around having the older HP SSL kit installed, then
|
||||
for DCL create this command procedure:
|
||||
|
||||
$ create/dir gnv$gnu:[vms_bin]/prot=w:re
|
||||
$ create gnv$gnu:[vms_bin]curl.com
|
||||
$ curl := $gnv$gnu:[usr.bin]gnv$curl.exe
|
||||
$ define/user ssl$libcrypto_shr32 gnv$curl_ssl_libcryptoshr32
|
||||
$ curl "''p1'" "''p2'" "''p3'" "''p4'" "''p5'" "''p6'" "''p7'" "''p8'"
|
||||
^Z
|
||||
|
||||
Then you can use: curl :== @gnv$gnu:[vms_bin]curl.com to run curl.
|
||||
|
||||
For the HP SSL work around to work for GNV do the following:
|
||||
$ create/dir gnv$gnu:[usr.local.bin]/prot=w:re
|
||||
$ create gnv$gnu:[usr.local.bin]curl.
|
||||
#! /bin/sh
|
||||
dcl @gnv\$gnu:[vms_bin]curl.com $*
|
||||
^Z
|
||||
|
||||
Similar workarounds will be needed for any program linked with GNV$LIBCURL
|
||||
until the HP OpenSSL is upgraded to the current 1.4 version or later.
|
||||
|
||||
If you are installing a "daily" build instead of a release build of Curl, some
|
||||
things have been changed so that it can be installed at the same time as
|
||||
a production build without conflicts.
|
||||
|
||||
The CURL_DAILY_STARTUP.COM will be supplied instead of CURL_STARTUP.COM.
|
||||
This file is actually not used with the daily package and is provided as
|
||||
a preview of what the next CURL_STARTUP.COM will be for the next release.
|
||||
Do not run it.
|
||||
|
||||
The files that are normally installed in [VMS$COMMON.GNV.usr], for the
|
||||
daily build are installed in [VMS$COMMON.GNV.beta] directory.
|
||||
|
||||
To use the daily GNV$LIBCURL image, you will need to define the logical
|
||||
name GNV$LIBCURL to the image.
|
98
third_party/curl/packages/vms/curl_startup.com
vendored
Normal file
98
third_party/curl/packages/vms/curl_startup.com
vendored
Normal file
@ -0,0 +1,98 @@
|
||||
$! File: curl_Startup.com
|
||||
$!
|
||||
$! Procedure to setup the CURL libraries for use by programs from the
|
||||
$! VMS SYSTARTUP*.COM procedure.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!========================================================================
|
||||
$!
|
||||
$!
|
||||
$! GNV$GNU if needed.
|
||||
$ if f$trnlnm("GNV$GNU") .eqs. ""
|
||||
$ then
|
||||
$ x = f$trnlnm("GNU","LNM$SYSTEM_TABLE")
|
||||
$ if x .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "GNV must be started up before this procedure.
|
||||
$ exit 44
|
||||
$ endif
|
||||
$ define/system/exec/trans=conc GNV$GNU 'x'
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ myproc = f$environment("procedure")
|
||||
$!
|
||||
$! ZLIB needed.
|
||||
$ if f$trnlnm("GNV$LIBZSHR32") .eqs. ""
|
||||
$ then
|
||||
$ zlib_startup = f$parse("gnv$zlib_startup.com;0", myproc,,,)
|
||||
$ if f$search(zlib_startup) .nes. ""
|
||||
$ then
|
||||
$ @'zlib_startup
|
||||
$ else
|
||||
$ write sys$output "ZLIB package not found and is required."
|
||||
$ exit 44
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ curl_ssl_libcrypto32 = ""
|
||||
$ curl_ssl_libssl32 = ""
|
||||
$ gnv_ssl_libcrypto32 = "gnv$gnu:[lib]ssl$libcrypto_shr32.exe"
|
||||
$ gnv_ssl_libssl32 = "gnv$gnu:[lib]ssl$libssl_shr32.exe"
|
||||
$ if f$search(gnv_ssl_libcrypto32) .nes. ""
|
||||
$ then
|
||||
$ curl_ssl_libcrypto32 = gnv_ssl_libcrypto32
|
||||
$ curl_ssl_libssl32 = gnv_ssl_libssl32
|
||||
$ else
|
||||
$ hp_ssl_libcrypto32 = "sys$share:ssl$libcrypto_shr32.exe"
|
||||
$ hp_ssl_libssl32 = "sys$share:ssl$libssl_shr32.exe"
|
||||
$ if f$search(hp_ssl_libcrypto32) .nes. ""
|
||||
$ then
|
||||
$ curl_ssl_libcrypto32 = hp_ssl_libcrypto32
|
||||
$ curl_ssl_libssl32 = hp_ssl_libssl32
|
||||
$ else
|
||||
$ write sys$output "HP SSL package not found and is required."
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$ define/system/exec gnv$curl_ssl_libcryptoshr32 'curl_ssl_libcrypto32'
|
||||
$ define/system/exec gnv$curl_ssl_libsslshr32 'curl_ssl_libssl32'
|
||||
$!
|
||||
$!
|
||||
$! CURL setup
|
||||
$ define/system/exec gnv$libcurl gnv$gnu:[usr.lib]GNV$LIBCURL.EXE
|
||||
$ define/system/exec gnv$curl_include gnv$gnu:[usr.include.curl]
|
||||
$ if .not. f$file_attributes("gnv$libcurl", "known")
|
||||
$ then
|
||||
$ install ADD gnv$libcurl/OPEN/SHARE/HEADER
|
||||
$ else
|
||||
$ install REPLACE gnv$libcurl/OPEN/SHARE/HEADER
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ curl_exe = "gnv$gnu:[usr.bin]gnv$curl.exe"
|
||||
$ if .not. f$file_attributes(curl_exe, "known")
|
||||
$ then
|
||||
$ install ADD 'curl_exe'/OPEN/SHARE/HEADER
|
||||
$ else
|
||||
$ install REPLACE 'curl_exe'/OPEN/SHARE/HEADER
|
||||
$ endif
|
||||
$!
|
||||
$all_exit:
|
||||
$ exit
|
143
third_party/curl/packages/vms/curlmsg.h
vendored
Normal file
143
third_party/curl/packages/vms/curlmsg.h
vendored
Normal file
@ -0,0 +1,143 @@
|
||||
#ifndef HEADER_CURLMSG_H
|
||||
#define HEADER_CURLMSG_H
|
||||
/***************************************************************************
|
||||
* _ _ ____ _
|
||||
* Project ___| | | | _ \| |
|
||||
* / __| | | | |_) | |
|
||||
* | (__| |_| | _ <| |___
|
||||
* \___|\___/|_| \_\_____|
|
||||
*
|
||||
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
*
|
||||
* This software is licensed as described in the file COPYING, which
|
||||
* you should have received as part of this distribution. The terms
|
||||
* are also available at https://curl.se/docs/copyright.html.
|
||||
*
|
||||
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
* copies of the Software, and permit persons to whom the Software is
|
||||
* furnished to do so, under the terms of the COPYING file.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
* SPDX-License-Identifier: curl
|
||||
*
|
||||
***************************************************************************/
|
||||
|
||||
#pragma __member_alignment __save
|
||||
#pragma __nomember_alignment
|
||||
|
||||
/* */
|
||||
/* CURLMSG.H */
|
||||
/* */
|
||||
/* SDL File Generated by VAX-11 Message V04-00 on 3-SEP-2008 13:33:54.09 */
|
||||
/* */
|
||||
/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H */
|
||||
/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE, */
|
||||
/* CURLMSG.MSG. AN .SDL FILE IS CREATED FROM THIS FILE WITH */
|
||||
/* MESSAGE/SDL. THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL */
|
||||
/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND. */
|
||||
/* */
|
||||
/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT */
|
||||
/* THE ERROR SEVERITY LEVEL. WITH THE EXCEPTION OF */
|
||||
/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF */
|
||||
/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE */
|
||||
/* CURLE_ ONES IN INCLUDE/CURL.H. THE MESSAGE UTILITY MANUAL STATES */
|
||||
/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT */
|
||||
/* EXCEED 31 CHARACTERS." WITH A PREFIX OF FIVE THAT LEAVES US WITH 26 */
|
||||
/* FOR THE MESSAGE NAME. */
|
||||
/* */
|
||||
/* IF YOU UPDATE THIS FILE, UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC */
|
||||
/* */
|
||||
|
||||
#define CURL_FACILITY 3841
|
||||
#define CURL_OK 251756553
|
||||
#define CURL_UNSUPPORTED_PROTOCOL 251756562
|
||||
#define CURL_FAILED_INIT 251756570
|
||||
#define CURL_URL_MALFORMAT 251756578
|
||||
#define CURL_OBSOLETE4 251756586
|
||||
#define CURL_COULDNT_RESOLVE_PROXY 251756594
|
||||
#define CURL_COULDNT_RESOLVE_HOST 251756602
|
||||
#define CURL_COULDNT_CONNECT 251756610
|
||||
#define CURL_WEIRD_SERVER_REPLY 251756618
|
||||
#define CURL_FTP_WEIRD_SERVER_REPLY CURL_WEIRD_SERVER_REPLY
|
||||
#define CURL_FTP_ACCESS_DENIED 251756626
|
||||
#define CURL_OBSOLETE10 251756634
|
||||
#define CURL_FTP_WEIRD_PASS_REPLY 251756642
|
||||
#define CURL_OBSOLETE12 251756650
|
||||
#define CURL_FTP_WEIRD_PASV_REPLY 251756658
|
||||
#define CURL_FTP_WEIRD_227_FORMAT 251756666
|
||||
#define CURL_FTP_CANT_GET_HOST 251756674
|
||||
#define CURL_OBSOLETE16 251756682
|
||||
#define CURL_FTP_COULDNT_SET_TYPE 251756690
|
||||
#define CURL_PARTIAL_FILE 251756698
|
||||
#define CURL_FTP_COULDNT_RETR_FILE 251756706
|
||||
#define CURL_OBSOLETE20 251756714
|
||||
#define CURL_QUOTE_ERROR 251756722
|
||||
#define CURL_HTTP_RETURNED_ERROR 251756730
|
||||
#define CURL_WRITE_ERROR 251756738
|
||||
#define CURL_OBSOLETE24 251756746
|
||||
#define CURL_UPLOAD_FAILED 251756754
|
||||
#define CURL_READ_ERROR 251756762
|
||||
#define CURL_OUT_OF_MEMORY 251756770
|
||||
#define CURL_OPERATION_TIMEOUTED 251756778
|
||||
#define CURL_OBSOLETE29 251756786
|
||||
#define CURL_FTP_PORT_FAILED 251756794
|
||||
#define CURL_FTP_COULDNT_USE_REST 251756802
|
||||
#define CURL_OBSOLETE32 251756810
|
||||
#define CURL_RANGE_ERROR 251756818
|
||||
#define CURL_HTTP_POST_ERROR 251756826
|
||||
#define CURL_SSL_CONNECT_ERROR 251756834
|
||||
#define CURL_BAD_DOWNLOAD_RESUME 251756842
|
||||
#define CURL_FILE_COULDNT_READ_FILE 251756850
|
||||
#define CURL_LDAP_CANNOT_BIND 251756858
|
||||
#define CURL_LDAP_SEARCH_FAILED 251756866
|
||||
#define CURL_OBSOLETE40 251756874
|
||||
#define CURL_FUNCTION_NOT_FOUND 251756882
|
||||
#define CURL_ABORTED_BY_CALLBACK 251756890
|
||||
#define CURL_BAD_FUNCTION_ARGUMENT 251756898
|
||||
#define CURL_OBSOLETE44 251756906
|
||||
#define CURL_INTERFACE_FAILED 251756914
|
||||
#define CURL_OBSOLETE46 251756922
|
||||
#define CURL_TOO_MANY_REDIRECTS 251756930
|
||||
#define CURL_UNKNOWN_TELNET_OPTION 251756938
|
||||
#define CURL_TELNET_OPTION_SYNTAX 251756946
|
||||
#define CURL_OBSOLETE50 251756954
|
||||
#define CURL_PEER_FAILED_VERIF 251756962
|
||||
#define CURL_GOT_NOTHING 251756970
|
||||
#define CURL_SSL_ENGINE_NOTFOUND 251756978
|
||||
#define CURL_SSL_ENGINE_SETFAILED 251756986
|
||||
#define CURL_SEND_ERROR 251756994
|
||||
#define CURL_RECV_ERROR 251757002
|
||||
#define CURL_OBSOLETE57 251757010
|
||||
#define CURL_SSL_CERTPROBLEM 251757018
|
||||
#define CURL_SSL_CIPHER 251757026
|
||||
#define CURL_SSL_CACERT 251757034
|
||||
#define CURL_BAD_CONTENT_ENCODING 251757042
|
||||
#define CURL_LDAP_INVALID_URL 251757050
|
||||
#define CURL_FILESIZE_EXCEEDED 251757058
|
||||
#define CURL_USE_SSL_FAILED 251757066
|
||||
#define CURL_SEND_FAIL_REWIND 251757074
|
||||
#define CURL_SSL_ENGINE_INITFAILED 251757082
|
||||
#define CURL_LOGIN_DENIED 251757090
|
||||
#define CURL_TFTP_NOTFOUND 251757098
|
||||
#define CURL_TFTP_PERM 251757106
|
||||
#define CURL_REMOTE_DISK_FULL 251757114
|
||||
#define CURL_TFTP_ILLEGAL 251757122
|
||||
#define CURL_TFTP_UNKNOWNID 251757130
|
||||
#define CURL_REMOTE_FILE_EXISTS 251757138
|
||||
#define CURL_TFTP_NOSUCHUSER 251757146
|
||||
#define CURL_CONV_FAILED 251757154
|
||||
#define CURL_CONV_REQD 251757162
|
||||
#define CURL_SSL_CACERT_BADFILE 251757170
|
||||
#define CURL_REMOTE_FILE_NOT_FOUND 251757178
|
||||
#define CURL_SSH 251757186
|
||||
#define CURL_SSL_SHUTDOWN_FAILED 251757194
|
||||
#define CURL_AGAIN 251757202
|
||||
#define CURL_SSL_CRL_BADFILE 251757210
|
||||
#define CURL_SSL_ISSUER_ERROR 251757218
|
||||
#define CURL_CURL_LAST 251757226
|
||||
|
||||
#pragma __member_alignment __restore
|
||||
|
||||
#endif /* HEADER_CURLMSG_H */
|
134
third_party/curl/packages/vms/curlmsg.msg
vendored
Normal file
134
third_party/curl/packages/vms/curlmsg.msg
vendored
Normal file
@ -0,0 +1,134 @@
|
||||
!***************************************************************************
|
||||
! _ _ ____ _
|
||||
! Project ___| | | | _ \| |
|
||||
! / __| | | | |_) | |
|
||||
! | (__| |_| | _ <| |___
|
||||
! \___|\___/|_| \_\_____|
|
||||
!
|
||||
! Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
!
|
||||
! This software is licensed as described in the file COPYING, which
|
||||
! you should have received as part of this distribution. The terms
|
||||
! are also available at https://curl.se/docs/copyright.html.
|
||||
!
|
||||
! You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
! copies of the Software, and permit persons to whom the Software is
|
||||
! furnished to do so, under the terms of the COPYING file.
|
||||
!
|
||||
! This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
! KIND, either express or implied.
|
||||
!
|
||||
! SPDX-License-Identifier: curl
|
||||
!
|
||||
!##########################################################################
|
||||
!
|
||||
! These VMS error codes are generated by taking apart the curl.h
|
||||
! file and putting all the CURLE_* enum stuff into this file,
|
||||
! CURLMSG.MSG. An .SDL file is created from this file with
|
||||
! MESSAGE/SDL. The .H file is created using the freeware SDL tool
|
||||
! against the .SDL file with SDL/ALPHA/LANG=CC command.
|
||||
!
|
||||
! With the exception of CURLE_OK, all of the messages are at
|
||||
! the error severity level. With the exception of
|
||||
! PEER_FAILED_VERIF, which is a shortened form of
|
||||
! PEER_FAILED_VERIFICATION, these are the same names as the
|
||||
! CURLE_ ones in include/curl.h. The Message Utility manual states
|
||||
! "The combined length of the prefix and the message symbol name cannot
|
||||
! exceed 31 characters." With a prefix of five that leaves us with 26
|
||||
! for the message name.
|
||||
!
|
||||
! If you update this file also update curlmsg_vms.h so that they are in sync
|
||||
!
|
||||
.TITLE CURLMSG Message files
|
||||
.FACILITY CURL,1793 /PREFIX=CURL_
|
||||
.BASE 1
|
||||
.SEVERITY SUCCESS
|
||||
OK <normal successful completion>
|
||||
|
||||
.SEVERITY ERROR
|
||||
UNSUPPORTED_PROTOCOL <unsupported protocol>
|
||||
FAILED_INIT <failed init>
|
||||
URL_MALFORMAT <URL malformat>
|
||||
OBSOLETE4 <obsolete error code>
|
||||
COULDNT_RESOLVE_PROXY <could not resolve proxy>
|
||||
COULDNT_RESOLVE_HOST <could not resolve host>
|
||||
COULDNT_CONNECT <could not connect>
|
||||
WEIRD_SERVER_REPLY <weird server reply>
|
||||
FTP_ACCESS_DENIED <FTP access denied>
|
||||
OBSOLETE10 <obsolete error code>
|
||||
FTP_WEIRD_PASS_REPLY <FTP weird PASS reply>
|
||||
OBSOLETE12 <obsolete error code>
|
||||
FTP_WEIRD_PASV_REPLY <FTP weird PASV reply>
|
||||
FTP_WEIRD_227_FORMAT <FTP weird 227 format>
|
||||
FTP_CANT_GET_HOST <FTP can not get host>
|
||||
OBSOLETE16 <obsolete error code>
|
||||
FTP_COULDNT_SET_TYPE <FTP could not set type>
|
||||
PARTIAL_FILE <partial file>
|
||||
FTP_COULDNT_RETR_FILE <FTP could not RETR file>
|
||||
OBSOLETE20 <obsolete error code>
|
||||
QUOTE_ERROR <quote command error>
|
||||
HTTP_RETURNED_ERROR <HTTP returned error>
|
||||
WRITE_ERROR <write error>
|
||||
OBSOLETE24 <obsolete error code>
|
||||
UPLOAD_FAILED <failed upload command>
|
||||
READ_ERROR <read error, could not open/read file>
|
||||
OUT_OF_MEMORY <out of memory>
|
||||
OPERATION_TIMEOUTED <operation timed out, timeout time was reached>
|
||||
OBSOLETE29 <obsolete error code>
|
||||
FTP_PORT_FAILED <FTP PORT operation failed>
|
||||
FTP_COULDNT_USE_REST <FTP REST command failed>
|
||||
OBSOLETE32 <obsolete error code>
|
||||
RANGE_ERROR <RANGE command error>
|
||||
HTTP_POST_ERROR <HTTP POST error>
|
||||
SSL_CONNECT_ERROR <SSL connect error>
|
||||
BAD_DOWNLOAD_RESUME <bad download resume>
|
||||
FILE_COULDNT_READ_FILE <FILE could not read file>
|
||||
LDAP_CANNOT_BIND <LDAP cannot bind>
|
||||
LDAP_SEARCH_FAILED <LDAP search failed>
|
||||
OBSOLETE40 <obsolete error code>
|
||||
FUNCTION_NOT_FOUND <function not found>
|
||||
ABORTED_BY_CALLBACK <aborted by callback>
|
||||
BAD_FUNCTION_ARGUMENT <bad function argument>
|
||||
OBSOLETE44 <obsolete error code>
|
||||
INTERFACE_FAILED <CURLOPT_INTERFACE failed>
|
||||
OBSOLETE46 <obsolete error code>
|
||||
TOO_MANY_REDIRECTS <too many redirects>
|
||||
UNKNOWN_TELNET_OPTION <unknown TELNET option>
|
||||
TELNET_OPTION_SYNTAX <malformed TELNET option syntax>
|
||||
OBSOLETE50 <obsolete error code>
|
||||
PEER_FAILED_VERIF <peer certificate or fingerprint failed>
|
||||
GOT_NOTHING <got nothing>
|
||||
SSL_ENGINE_NOTFOUND <SSL crypto engine not found>
|
||||
SSL_ENGINE_SETFAILED <SSL can not set SSL crypto engine as default>
|
||||
SEND_ERROR <SEND error, failure sending network data>
|
||||
RECV_ERROR <RECV error, failure receiving network data>
|
||||
OBSOLETE57 <obsolete error code>
|
||||
SSL_CERTPROBLEM <SSL problem with the local certificate>
|
||||
SSL_CIPHER <SSL CIPHER, could not use specified cipher>
|
||||
SSL_CACERT <SSL CACERT, problem with the CA cert (path?)>
|
||||
BAD_CONTENT_ENCODING <unrecognized transfer encoding>
|
||||
LDAP_INVALID_URL <LDAP invalid url>
|
||||
FILESIZE_EXCEEDED <maximum file size exceeded>
|
||||
USE_SSL_FAILED <requested FTP SSL level failed>
|
||||
SEND_FAIL_REWIND <sending data requires a rewind that failed>
|
||||
SSL_ENGINE_INITFAILED <failed to initialise ENGINE>
|
||||
LOGIN_DENIED <user or password not accepted. failed to login>
|
||||
TFTP_NOTFOUND <file not found on server>
|
||||
TFTP_PERM <permission problem on server>
|
||||
REMOTE_DISK_FULL <out of disk space on server>
|
||||
TFTP_ILLEGAL <illegal TFTP operation>
|
||||
TFTP_UNKNOWNID <unknown transfer ID>
|
||||
REMOTE_FILE_EXISTS <file already exists>
|
||||
TFTP_NOSUCHUSER <no such user>
|
||||
CONV_FAILED <conversion failed>
|
||||
CONV_REQD <caller must register conversion callbacks>
|
||||
SSL_CACERT_BADFILE <could not load CACERT file>
|
||||
REMOTE_FILE_NOT_FOUND <remote file not found>
|
||||
SSH <unspecified error from the SSH layer>
|
||||
SSL_SHUTDOWN_FAILED <failed to shut down the SSL connection>
|
||||
AGAIN <socket not ready, wait and try again>
|
||||
SSL_CRL_BADFILE <could not load CRL file, missing or wrong format>
|
||||
SSL_ISSUER_ERROR <issuer check failed>
|
||||
CURL_LAST <CURLMSG.MSG is out of sync with the source code>
|
||||
|
||||
.END
|
116
third_party/curl/packages/vms/curlmsg.sdl
vendored
Normal file
116
third_party/curl/packages/vms/curlmsg.sdl
vendored
Normal file
@ -0,0 +1,116 @@
|
||||
|
||||
|
||||
MODULE $CURDEF;
|
||||
|
||||
/*
|
||||
/* This SDL File Generated by VAX-11 Message V04-00 on 3-SEP-2008 13:33:54.09
|
||||
/*
|
||||
/* $ID: CURLMSG.MSG,V 1.7 2008-05-30 23:51:09 CURLVMS EXP $
|
||||
/*
|
||||
/* THESE VMS ERROR CODES ARE GENERATED BY TAKING APART THE CURL.H
|
||||
/* FILE AND PUTTING ALL THE CURLE_* ENUM STUFF INTO THIS FILE,
|
||||
/* CURLMSG.MSG. AN .SDL FILE IS CREATED FROM THIS FILE WITH
|
||||
/* MESSAGE/SDL. THE .H FILE IS CREATED USING THE FREEWARE SDL TOOL
|
||||
/* AGAINST THE .SDL FILE WITH SDL/ALPHA/LANG=CC COMMAND.
|
||||
/*
|
||||
/* WITH THE EXCEPTION OF CURLE_OK, ALL OF THE MESSAGES ARE AT
|
||||
/* THE ERROR SEVERITY LEVEL. WITH THE EXCEPTION OF
|
||||
/* PEER_FAILED_VERIF, WHICH IS A SHORTENED FORM OF
|
||||
/* PEER_FAILED_VERIFICATION, THESE ARE THE SAME NAMES AS THE
|
||||
/* CURLE_ ONES IN INCLUDE/CURL.H. THE MESSAGE UTILITY MANUAL STATES
|
||||
/* "THE COMBINED LENGTH OF THE PREFIX AND THE MESSAGE SYMBOL NAME CANNOT
|
||||
/* EXCEED 31 CHARACTERS." WITH A PREFIX OF FIVE THAT LEAVES US WITH 26
|
||||
/* FOR THE MESSAGE NAME.
|
||||
/*
|
||||
/* IF YOU UPDATE THIS FILE ALSO UPDATE CURLMSG_VMS.H SO THAT THEY ARE IN SYNC
|
||||
/*
|
||||
CONSTANT
|
||||
"FACILITY" EQUALS 3841 PREFIX "CURL" TAG ""
|
||||
,"OK" EQUALS %X0F018009 PREFIX "CURL" TAG ""
|
||||
,"UNSUPPORTED_PROTOCOL" EQUALS %X0F018012 PREFIX "CURL" TAG ""
|
||||
,"FAILED_INIT" EQUALS %X0F01801A PREFIX "CURL" TAG ""
|
||||
,"URL_MALFORMAT" EQUALS %X0F018022 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE4" EQUALS %X0F01802A PREFIX "CURL" TAG ""
|
||||
,"COULDNT_RESOLVE_PROXY" EQUALS %X0F018032 PREFIX "CURL" TAG ""
|
||||
,"COULDNT_RESOLVE_HOST" EQUALS %X0F01803A PREFIX "CURL" TAG ""
|
||||
,"COULDNT_CONNECT" EQUALS %X0F018042 PREFIX "CURL" TAG ""
|
||||
,"WEIRD_SERVER_REPLY" EQUALS %X0F01804A PREFIX "CURL" TAG ""
|
||||
,"FTP_WEIRD_SERVER_REPLY" EQUALS %X0F01804A PREFIX "CURL" TAG ""
|
||||
,"FTP_ACCESS_DENIED" EQUALS %X0F018052 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE10" EQUALS %X0F01805A PREFIX "CURL" TAG ""
|
||||
,"FTP_WEIRD_PASS_REPLY" EQUALS %X0F018062 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE12" EQUALS %X0F01806A PREFIX "CURL" TAG ""
|
||||
,"FTP_WEIRD_PASV_REPLY" EQUALS %X0F018072 PREFIX "CURL" TAG ""
|
||||
,"FTP_WEIRD_227_FORMAT" EQUALS %X0F01807A PREFIX "CURL" TAG ""
|
||||
,"FTP_CANT_GET_HOST" EQUALS %X0F018082 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE16" EQUALS %X0F01808A PREFIX "CURL" TAG ""
|
||||
,"FTP_COULDNT_SET_TYPE" EQUALS %X0F018092 PREFIX "CURL" TAG ""
|
||||
,"PARTIAL_FILE" EQUALS %X0F01809A PREFIX "CURL" TAG ""
|
||||
,"FTP_COULDNT_RETR_FILE" EQUALS %X0F0180A2 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE20" EQUALS %X0F0180AA PREFIX "CURL" TAG ""
|
||||
,"QUOTE_ERROR" EQUALS %X0F0180B2 PREFIX "CURL" TAG ""
|
||||
,"HTTP_RETURNED_ERROR" EQUALS %X0F0180BA PREFIX "CURL" TAG ""
|
||||
,"WRITE_ERROR" EQUALS %X0F0180C2 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE24" EQUALS %X0F0180CA PREFIX "CURL" TAG ""
|
||||
,"UPLOAD_FAILED" EQUALS %X0F0180D2 PREFIX "CURL" TAG ""
|
||||
,"READ_ERROR" EQUALS %X0F0180DA PREFIX "CURL" TAG ""
|
||||
,"OUT_OF_MEMORY" EQUALS %X0F0180E2 PREFIX "CURL" TAG ""
|
||||
,"OPERATION_TIMEOUTED" EQUALS %X0F0180EA PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE29" EQUALS %X0F0180F2 PREFIX "CURL" TAG ""
|
||||
,"FTP_PORT_FAILED" EQUALS %X0F0180FA PREFIX "CURL" TAG ""
|
||||
,"FTP_COULDNT_USE_REST" EQUALS %X0F018102 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE32" EQUALS %X0F01810A PREFIX "CURL" TAG ""
|
||||
,"RANGE_ERROR" EQUALS %X0F018112 PREFIX "CURL" TAG ""
|
||||
,"HTTP_POST_ERROR" EQUALS %X0F01811A PREFIX "CURL" TAG ""
|
||||
,"SSL_CONNECT_ERROR" EQUALS %X0F018122 PREFIX "CURL" TAG ""
|
||||
,"BAD_DOWNLOAD_RESUME" EQUALS %X0F01812A PREFIX "CURL" TAG ""
|
||||
,"FILE_COULDNT_READ_FILE" EQUALS %X0F018132 PREFIX "CURL" TAG ""
|
||||
,"LDAP_CANNOT_BIND" EQUALS %X0F01813A PREFIX "CURL" TAG ""
|
||||
,"LDAP_SEARCH_FAILED" EQUALS %X0F018142 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE40" EQUALS %X0F01814A PREFIX "CURL" TAG ""
|
||||
,"FUNCTION_NOT_FOUND" EQUALS %X0F018152 PREFIX "CURL" TAG ""
|
||||
,"ABORTED_BY_CALLBACK" EQUALS %X0F01815A PREFIX "CURL" TAG ""
|
||||
,"BAD_FUNCTION_ARGUMENT" EQUALS %X0F018162 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE44" EQUALS %X0F01816A PREFIX "CURL" TAG ""
|
||||
,"INTERFACE_FAILED" EQUALS %X0F018172 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE46" EQUALS %X0F01817A PREFIX "CURL" TAG ""
|
||||
,"TOO_MANY_REDIRECTS" EQUALS %X0F018182 PREFIX "CURL" TAG ""
|
||||
,"UNKNOWN_TELNET_OPTION" EQUALS %X0F01818A PREFIX "CURL" TAG ""
|
||||
,"TELNET_OPTION_SYNTAX" EQUALS %X0F018192 PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE50" EQUALS %X0F01819A PREFIX "CURL" TAG ""
|
||||
,"PEER_FAILED_VERIF" EQUALS %X0F0181A2 PREFIX "CURL" TAG ""
|
||||
,"GOT_NOTHING" EQUALS %X0F0181AA PREFIX "CURL" TAG ""
|
||||
,"SSL_ENGINE_NOTFOUND" EQUALS %X0F0181B2 PREFIX "CURL" TAG ""
|
||||
,"SSL_ENGINE_SETFAILED" EQUALS %X0F0181BA PREFIX "CURL" TAG ""
|
||||
,"SEND_ERROR" EQUALS %X0F0181C2 PREFIX "CURL" TAG ""
|
||||
,"RECV_ERROR" EQUALS %X0F0181CA PREFIX "CURL" TAG ""
|
||||
,"OBSOLETE57" EQUALS %X0F0181D2 PREFIX "CURL" TAG ""
|
||||
,"SSL_CERTPROBLEM" EQUALS %X0F0181DA PREFIX "CURL" TAG ""
|
||||
,"SSL_CIPHER" EQUALS %X0F0181E2 PREFIX "CURL" TAG ""
|
||||
,"SSL_CACERT" EQUALS %X0F0181EA PREFIX "CURL" TAG ""
|
||||
,"BAD_CONTENT_ENCODING" EQUALS %X0F0181F2 PREFIX "CURL" TAG ""
|
||||
,"LDAP_INVALID_URL" EQUALS %X0F0181FA PREFIX "CURL" TAG ""
|
||||
,"FILESIZE_EXCEEDED" EQUALS %X0F018202 PREFIX "CURL" TAG ""
|
||||
,"USE_SSL_FAILED" EQUALS %X0F01820A PREFIX "CURL" TAG ""
|
||||
,"SEND_FAIL_REWIND" EQUALS %X0F018212 PREFIX "CURL" TAG ""
|
||||
,"SSL_ENGINE_INITFAILED" EQUALS %X0F01821A PREFIX "CURL" TAG ""
|
||||
,"LOGIN_DENIED" EQUALS %X0F018222 PREFIX "CURL" TAG ""
|
||||
,"TFTP_NOTFOUND" EQUALS %X0F01822A PREFIX "CURL" TAG ""
|
||||
,"TFTP_PERM" EQUALS %X0F018232 PREFIX "CURL" TAG ""
|
||||
,"REMOTE_DISK_FULL" EQUALS %X0F01823A PREFIX "CURL" TAG ""
|
||||
,"TFTP_ILLEGAL" EQUALS %X0F018242 PREFIX "CURL" TAG ""
|
||||
,"TFTP_UNKNOWNID" EQUALS %X0F01824A PREFIX "CURL" TAG ""
|
||||
,"REMOTE_FILE_EXISTS" EQUALS %X0F018252 PREFIX "CURL" TAG ""
|
||||
,"TFTP_NOSUCHUSER" EQUALS %X0F01825A PREFIX "CURL" TAG ""
|
||||
,"CONV_FAILED" EQUALS %X0F018262 PREFIX "CURL" TAG ""
|
||||
,"CONV_REQD" EQUALS %X0F01826A PREFIX "CURL" TAG ""
|
||||
,"SSL_CACERT_BADFILE" EQUALS %X0F018272 PREFIX "CURL" TAG ""
|
||||
,"REMOTE_FILE_NOT_FOUND" EQUALS %X0F01827A PREFIX "CURL" TAG ""
|
||||
,"SSH" EQUALS %X0F018282 PREFIX "CURL" TAG ""
|
||||
,"SSL_SHUTDOWN_FAILED" EQUALS %X0F01828A PREFIX "CURL" TAG ""
|
||||
,"AGAIN" EQUALS %X0F018292 PREFIX "CURL" TAG ""
|
||||
,"SSL_CRL_BADFILE" EQUALS %X0F01829A PREFIX "CURL" TAG ""
|
||||
,"SSL_ISSUER_ERROR" EQUALS %X0F0182A2 PREFIX "CURL" TAG ""
|
||||
,"CURL_LAST" EQUALS %X0F0182AA PREFIX "CURL" TAG ""
|
||||
;
|
||||
END_MODULE;
|
143
third_party/curl/packages/vms/curlmsg_vms.h
vendored
Normal file
143
third_party/curl/packages/vms/curlmsg_vms.h
vendored
Normal file
@ -0,0 +1,143 @@
|
||||
#ifndef HEADER_CURLMSG_VMS_H
|
||||
#define HEADER_CURLMSG_VMS_H
|
||||
/***************************************************************************
|
||||
* _ _ ____ _
|
||||
* Project ___| | | | _ \| |
|
||||
* / __| | | | |_) | |
|
||||
* | (__| |_| | _ <| |___
|
||||
* \___|\___/|_| \_\_____|
|
||||
*
|
||||
* Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
|
||||
*
|
||||
* This software is licensed as described in the file COPYING, which
|
||||
* you should have received as part of this distribution. The terms
|
||||
* are also available at https://curl.se/docs/copyright.html.
|
||||
*
|
||||
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
||||
* copies of the Software, and permit persons to whom the Software is
|
||||
* furnished to do so, under the terms of the COPYING file.
|
||||
*
|
||||
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
||||
* KIND, either express or implied.
|
||||
*
|
||||
* SPDX-License-Identifier: curl
|
||||
*
|
||||
***************************************************************************/
|
||||
|
||||
/* */
|
||||
/* CURLMSG_VMS.H */
|
||||
/* */
|
||||
/* This defines the necessary bits to change CURLE_* error codes to VMS */
|
||||
/* style error codes. CURLMSG.H is built from CURLMSG.SDL which is built */
|
||||
/* from CURLMSG.MSG. The vms_cond array is used to return VMS errors by */
|
||||
/* putting the VMS error codes into the array offset based on CURLE_* code. */
|
||||
/* */
|
||||
/* If you update CURLMSG.MSG make sure to update this file to match. */
|
||||
/* */
|
||||
|
||||
#include "curlmsg.h"
|
||||
|
||||
/*
|
||||
#define FAC_CURL 0xC01
|
||||
#define FAC_SYSTEM 0
|
||||
#define MSG_NORMAL 0
|
||||
*/
|
||||
|
||||
/*
|
||||
#define SEV_WARNING 0
|
||||
#define SEV_SUCCESS 1
|
||||
#define SEV_ERROR 2
|
||||
#define SEV_INFO 3
|
||||
#define SEV_FATAL 4
|
||||
*/
|
||||
|
||||
static const long vms_cond[] =
|
||||
{
|
||||
CURL_OK,
|
||||
CURL_UNSUPPORTED_PROTOCOL,
|
||||
CURL_FAILED_INIT,
|
||||
CURL_URL_MALFORMAT,
|
||||
CURL_OBSOLETE4,
|
||||
CURL_COULDNT_RESOLVE_PROXY,
|
||||
CURL_COULDNT_RESOLVE_HOST,
|
||||
CURL_COULDNT_CONNECT,
|
||||
CURL_WEIRD_SERVER_REPLY,
|
||||
CURL_FTP_ACCESS_DENIED,
|
||||
CURL_OBSOLETE10,
|
||||
CURL_FTP_WEIRD_PASS_REPLY,
|
||||
CURL_OBSOLETE12,
|
||||
CURL_FTP_WEIRD_PASV_REPLY,
|
||||
CURL_FTP_WEIRD_227_FORMAT,
|
||||
CURL_FTP_CANT_GET_HOST,
|
||||
CURL_OBSOLETE16,
|
||||
CURL_FTP_COULDNT_SET_TYPE,
|
||||
CURL_PARTIAL_FILE,
|
||||
CURL_FTP_COULDNT_RETR_FILE,
|
||||
CURL_OBSOLETE20,
|
||||
CURL_QUOTE_ERROR,
|
||||
CURL_HTTP_RETURNED_ERROR,
|
||||
CURL_WRITE_ERROR,
|
||||
CURL_OBSOLETE24,
|
||||
CURL_UPLOAD_FAILED,
|
||||
CURL_READ_ERROR,
|
||||
CURL_OUT_OF_MEMORY,
|
||||
CURL_OPERATION_TIMEOUTED,
|
||||
CURL_OBSOLETE29,
|
||||
CURL_FTP_PORT_FAILED,
|
||||
CURL_FTP_COULDNT_USE_REST,
|
||||
CURL_OBSOLETE32,
|
||||
CURL_RANGE_ERROR,
|
||||
CURL_HTTP_POST_ERROR,
|
||||
CURL_SSL_CONNECT_ERROR,
|
||||
CURL_BAD_DOWNLOAD_RESUME,
|
||||
CURL_FILE_COULDNT_READ_FILE,
|
||||
CURL_LDAP_CANNOT_BIND,
|
||||
CURL_LDAP_SEARCH_FAILED,
|
||||
CURL_OBSOLETE40,
|
||||
CURL_FUNCTION_NOT_FOUND,
|
||||
CURL_ABORTED_BY_CALLBACK,
|
||||
CURL_BAD_FUNCTION_ARGUMENT,
|
||||
CURL_OBSOLETE44,
|
||||
CURL_INTERFACE_FAILED,
|
||||
CURL_OBSOLETE46,
|
||||
CURL_TOO_MANY_REDIRECTS,
|
||||
CURL_UNKNOWN_TELNET_OPTION,
|
||||
CURL_TELNET_OPTION_SYNTAX,
|
||||
CURL_OBSOLETE50,
|
||||
CURL_PEER_FAILED_VERIF,
|
||||
CURL_GOT_NOTHING,
|
||||
CURL_SSL_ENGINE_NOTFOUND,
|
||||
CURL_SSL_ENGINE_SETFAILED,
|
||||
CURL_SEND_ERROR,
|
||||
CURL_RECV_ERROR,
|
||||
CURL_OBSOLETE57,
|
||||
CURL_SSL_CERTPROBLEM,
|
||||
CURL_SSL_CIPHER,
|
||||
CURL_SSL_CACERT,
|
||||
CURL_BAD_CONTENT_ENCODING,
|
||||
CURL_LDAP_INVALID_URL,
|
||||
CURL_FILESIZE_EXCEEDED,
|
||||
CURL_USE_SSL_FAILED,
|
||||
CURL_SEND_FAIL_REWIND,
|
||||
CURL_SSL_ENGINE_INITFAILED,
|
||||
CURL_LOGIN_DENIED,
|
||||
CURL_TFTP_NOTFOUND,
|
||||
CURL_TFTP_PERM,
|
||||
CURL_REMOTE_DISK_FULL,
|
||||
CURL_TFTP_ILLEGAL,
|
||||
CURL_TFTP_UNKNOWNID,
|
||||
CURL_REMOTE_FILE_EXISTS,
|
||||
CURL_TFTP_NOSUCHUSER,
|
||||
CURL_CONV_FAILED,
|
||||
CURL_CONV_REQD,
|
||||
CURL_SSL_CACERT_BADFILE,
|
||||
CURL_REMOTE_FILE_NOT_FOUND,
|
||||
CURL_SSH,
|
||||
CURL_SSL_SHUTDOWN_FAILED,
|
||||
CURL_AGAIN,
|
||||
CURLE_SSL_CRL_BADFILE,
|
||||
CURLE_SSL_ISSUER_ERROR,
|
||||
CURL_CURL_LAST
|
||||
};
|
||||
|
||||
#endif /* HEADER_CURLMSG_VMS_H */
|
450
third_party/curl/packages/vms/generate_config_vms_h_curl.com
vendored
Normal file
450
third_party/curl/packages/vms/generate_config_vms_h_curl.com
vendored
Normal file
@ -0,0 +1,450 @@
|
||||
$! File: GENERATE_CONFIG_H_CURL.COM
|
||||
$!
|
||||
$! Curl like most open source products uses a variant of a config.h file.
|
||||
$! Depending on the curl version, this could be config.h or curl_config.h.
|
||||
$!
|
||||
$! For GNV based builds, the configure script is run and that produces
|
||||
$! a [curl_]config.h file. Configure scripts on VMS generally do not
|
||||
$! know how to do everything, so there is also a [-.lib]config-vms.h file
|
||||
$! that has VMS specific code that compensates for bugs in some of the
|
||||
$! VMS shared images.
|
||||
$!
|
||||
$! This generates a [curl_]config.h file and also a config_vms.h file,
|
||||
$! which is used to supplement that file. Note that the config_vms.h file
|
||||
$! and the [.lib]config-vms.h file do two different tasks and that the
|
||||
$! filenames are slightly different.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!=========================================================================
|
||||
$!
|
||||
$! Allow arguments to be grouped together with comma or separated by spaces
|
||||
$! Do no know if we will need more than 8.
|
||||
$args = "," + p1 + "," + p2 + "," + p3 + "," + p4 + ","
|
||||
$args = args + p5 + "," + p6 + "," + p7 + "," + p8 + ","
|
||||
$!
|
||||
$! Provide lower case version to simplify parsing.
|
||||
$args_lower = f$edit(args, "LOWERCASE")
|
||||
$!
|
||||
$args_len = f$length(args)
|
||||
$!
|
||||
$if (f$getsyi("HW_MODEL") .lt. 1024)
|
||||
$then
|
||||
$ arch_name = "VAX"
|
||||
$else
|
||||
$ arch_name = ""
|
||||
$ arch_name = arch_name + f$edit(f$getsyi("ARCH_NAME"), "UPCASE")
|
||||
$ if (arch_name .eqs. "") then arch_name = "UNK"
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$nossl = 0
|
||||
$nohpssl = 1
|
||||
$hpssl = 0
|
||||
$libidn = 0
|
||||
$libssh2 = 0
|
||||
$noldap = 0
|
||||
$nozlib = 0
|
||||
$nokerberos = 0
|
||||
$!
|
||||
$! First check to see if SSL is disabled.
|
||||
$!---------------------------------------
|
||||
$if f$locate(",nossl,", args_lower) .lt. args_len then nossl = 1
|
||||
$if .not. nossl
|
||||
$then
|
||||
$!
|
||||
$! ssl$* logicals means HP ssl is present
|
||||
$!----------------------------------------
|
||||
$ if f$trnlnm("ssl$root") .nes. ""
|
||||
$ then
|
||||
$ nohpssl = 0
|
||||
$ hpssl = 1
|
||||
$ endif
|
||||
$!
|
||||
$! HP defines OPENSSL as SSL$INCLUDE as a convenience for linking.
|
||||
$! As it is a violation of VMS standards for this to be provided,
|
||||
$! some sites may have removed it, but if present, assume that
|
||||
$! it indicates which OpenSSL to use.
|
||||
$!------------------------------------
|
||||
$ openssl_lnm = f$trnlnm("OPENSSL")
|
||||
$ if (openssl_lnm .nes. "SYS$INCLUDE")
|
||||
$ then
|
||||
$! Non HP SSL is installed, default to use it.
|
||||
$ nohpssl = 1
|
||||
$ hpssl = 0
|
||||
$ endif
|
||||
$!
|
||||
$! Now check to see if hpssl has been specifically disabled
|
||||
$!----------------------------------------------------------
|
||||
$ if f$locate(",nohpssl,", args_lower) .lt. args_len
|
||||
$ then
|
||||
$ nohpssl = 1
|
||||
$ hpssl = 0
|
||||
$ endif
|
||||
$!
|
||||
$! Finally check to see if hp ssl has been specifically included.
|
||||
$!----------------------------------------------------------------
|
||||
$ if f$locate(",nohpssl,", args_lower) .lt. args_len
|
||||
$ then
|
||||
$ nohpssl = 1
|
||||
$ hpssl = 0
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$! Did someone port LIBIDN in the GNV compatible way?
|
||||
$!------------------------------------------------------
|
||||
$if f$trnlnm("GNV$LIBIDNSHR") .nes. ""
|
||||
$then
|
||||
$ write sys$output "NOTICE: A LIBIDN port has been detected."
|
||||
$ write sys$output " This port of curl for VMS has not been tested with it."
|
||||
$ if f$locate(",libidn,", args_lower) .lt. args_len
|
||||
$ then
|
||||
$ libidn = 1
|
||||
$ endif
|
||||
$ if .not. libidn
|
||||
$ then
|
||||
$ write sys$output " LIBIDN support is not enabled."
|
||||
$ write sys$output "Run with the ""libidn"" parameter to attempt to use."
|
||||
$ else
|
||||
$ write sys$output " Untested LIBIDN support requested."
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$! Did someone port LIBSSH2 in the GNV compatible way?
|
||||
$!------------------------------------------------------
|
||||
$if f$trnlnm("GNV$LIBSSH2SHR") .nes. ""
|
||||
$then
|
||||
$ write sys$output "NOTICE: A LIBSSH2 port has been detected."
|
||||
$ write sys$output " This port of curl for VMS has not been tested with it."
|
||||
$ if f$locate(",libssh2,", args_lower) .lt. args_len
|
||||
$ then
|
||||
$ libssh2 = 1
|
||||
$ endif
|
||||
$ if .not. libssh2
|
||||
$ then
|
||||
$ write sys$output " LIBSSH2 support is not enabled."
|
||||
$ write sys$output "Run with the ""libssh2"" parameter to attempt to use."
|
||||
$ else
|
||||
$ write sys$output " Untested LIBSSH2 support requested."
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$! LDAP suppressed?
|
||||
$if f$locate(",noldap,", args_lower) .lt. args_len
|
||||
$then
|
||||
$ noldap = 1
|
||||
$endif
|
||||
$if f$search("SYS$SHARE:LDAP$SHR.EXE") .eqs. ""
|
||||
$then
|
||||
$ noldap = 1
|
||||
$endif
|
||||
$!
|
||||
$if f$locate(",nokerberos,", args_lower) .lt. args_len then nokerberos = 1
|
||||
$if .not. nokerberos
|
||||
$then
|
||||
$! If kerberos is installed: sys$share:gss$rtl.exe exists.
|
||||
$ if f$search("sys$shsare:gss$rtl.exe") .eqs. ""
|
||||
$ then
|
||||
$ nokerberos = 1
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$! Is GNV compatible LIBZ present?
|
||||
$!------------------------------------------------------
|
||||
$if f$trnlnm("GNV$LIBZSHR") .nes. ""
|
||||
$then
|
||||
$ if f$locate(",nozlib,", args_lower) .lt. args_len
|
||||
$ then
|
||||
$ nozlib = 1
|
||||
$ endif
|
||||
$! if .not. nozlib
|
||||
$! then
|
||||
$! write sys$output " GNV$LIBZSHR support is enabled."
|
||||
$! else
|
||||
$! write sys$output " GNV$LIBZSHR support is disabled by nozlib."
|
||||
$! endif
|
||||
$else
|
||||
$ nozlib = 1
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$! Start the configuration file.
|
||||
$! Need to do a create and then an append to make the file have the
|
||||
$! typical file attributes of a VMS text file.
|
||||
$create sys$disk:[curl.lib]config_vms.h
|
||||
$open/append cvh sys$disk:[curl.lib]config_vms.h
|
||||
$!
|
||||
$! Write the defines to prevent multiple includes.
|
||||
$! These are probably not needed in this case,
|
||||
$! but are best practice to put on all header files.
|
||||
$write cvh "#ifndef __CONFIG_VMS_H__"
|
||||
$write cvh "#define __CONFIG_VMS_H__"
|
||||
$write cvh ""
|
||||
$write cvh "/* Define cpu-machine-OS */"
|
||||
$!
|
||||
$! Curl uses an OS macro to set the build environment.
|
||||
$!----------------------------------------------------
|
||||
$! Now the DCL builds usually say xxx-HP-VMS and configure scripts
|
||||
$! may put DEC or COMPAQ or HP for the middle part.
|
||||
$!
|
||||
$write cvh "#if defined(__alpha)"
|
||||
$write cvh "#define OS ""ALPHA-HP-VMS"""
|
||||
$write cvh "#elif defined(__vax)"
|
||||
$write cvh "#define OS ""VAX-HP-VMS"""
|
||||
$write cvh "#elif defined(__ia64)"
|
||||
$write cvh "#define OS ""IA64-HP-VMS""
|
||||
$write cvh "#else"
|
||||
$write cvh "#define OS ""UNKNOWN-HP-VMS""
|
||||
$write cvh "#endif"
|
||||
$write cvh ""
|
||||
$!
|
||||
$! We are now setting this on the GNV build, so also do this
|
||||
$! for compatibility.
|
||||
$write cvh "/* Location of default ca path */"
|
||||
$write cvh "#define curl_ca_path ""gnv$curl_ca_path"""
|
||||
$!
|
||||
$! NTLM_WB_ENABLED requires fork() but configure does not know this
|
||||
$! We have to disable this in the configure command line.
|
||||
$! config_h.com finds that configure defaults to it being enabled so
|
||||
$! reports it. So we need to turn it off here.
|
||||
$!
|
||||
$write cvh "#ifdef NTLM_WB_ENABLED"
|
||||
$write cvh "#undef NTLM_WB_ENABLED"
|
||||
$write cvh "#endif"
|
||||
$!
|
||||
$! The config_h.com finds a bunch of default disable commands in
|
||||
$! configure and will incorrectly disable these options. The config_h.com
|
||||
$! is a generic procedure and it would break more things to try to fix it
|
||||
$! to special case it for curl. So we will fix it here.
|
||||
$!
|
||||
$! We do them all here, even the ones that config_h.com currently gets correct.
|
||||
$!
|
||||
$write cvh "#ifdef CURL_DISABLE_COOKIES"
|
||||
$write cvh "#undef CURL_DISABLE_COOKIES"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_DICT"
|
||||
$write cvh "#undef CURL_DISABLE_DICT"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_FILE"
|
||||
$write cvh "#undef CURL_DISABLE_FILE"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_FTP"
|
||||
$write cvh "#undef CURL_DISABLE_FTP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_GOPHER"
|
||||
$write cvh "#undef CURL_DISABLE_GOPHER"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_HTTP"
|
||||
$write cvh "#undef CURL_DISABLE_HTTP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_IMAP"
|
||||
$write cvh "#undef CURL_DISABLE_IMAP"
|
||||
$write cvh "#endif"
|
||||
$if .not. noldap
|
||||
$then
|
||||
$ write cvh "#ifdef CURL_DISABLE_LDAP"
|
||||
$ write cvh "#undef CURL_DISABLE_LDAP"
|
||||
$ write cvh "#endif"
|
||||
$ if .not. nossl
|
||||
$ then
|
||||
$ write cvh "#ifdef CURL_DISABLE_LDAPS"
|
||||
$ write cvh "#undef CURL_DISABLE_LDAPS"
|
||||
$ write cvh "#endif"
|
||||
$ endif
|
||||
$endif
|
||||
$write cvh "#ifdef CURL_DISABLE_LIBCURL_OPTION"
|
||||
$write cvh "#undef CURL_DISABLE_LIBCURL_OPTION"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifndef __VAX"
|
||||
$write cvh "#ifdef CURL_DISABLE_NTLM"
|
||||
$write cvh "#undef CURL_DISABLE_NTLM"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#else"
|
||||
$! NTLM needs long long or int64 support, missing from DECC C.
|
||||
$write cvh "#ifdef __DECC
|
||||
$write cvh "#ifndef CURL_DISABLE_NTLM"
|
||||
$write cvh "#define CURL_DISABLE_NTLM 1"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_POP3"
|
||||
$write cvh "#undef CURL_DISABLE_POP3"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_PROXY"
|
||||
$write cvh "#undef CURL_DISABLE_PROXY"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_RTSP"
|
||||
$write cvh "#undef CURL_DISABLE_RTSP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_SMTP"
|
||||
$write cvh "#undef CURL_DISABLE_SMTP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_TELNET"
|
||||
$write cvh "#undef CURL_DISABLE_TELNET"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_TFTP"
|
||||
$write cvh "#undef CURL_DISABLE_TFTP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef CURL_DISABLE_POP3"
|
||||
$write cvh "#undef CURL_DISABLE_POP3"
|
||||
$write cvh "#endif"
|
||||
$if .not. nossl
|
||||
$then
|
||||
$ write cvh "#ifdef CURL_DISABLE_TLS_SRP"
|
||||
$ write cvh "#undef CURL_DISABLE_TLS_SRP"
|
||||
$ write cvh "#endif"
|
||||
$!
|
||||
$endif
|
||||
$write cvh "#ifdef CURL_DISABLE_VERBOSE_STRINGS"
|
||||
$write cvh "#undef CURL_DISABLE_VERBOSE_STRINGS"
|
||||
$write cvh "#endif"
|
||||
$!
|
||||
$! configure defaults to USE_*, a real configure on VMS chooses different.
|
||||
$write cvh "#ifdef USE_ARES"
|
||||
$write cvh "#undef USE_ARES"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_WOLFSSL"
|
||||
$write cvh "#undef USE_WOLFSSL"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_GNUTLS"
|
||||
$write cvh "#undef USE_GNUTLS"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_LIBRTMP"
|
||||
$write cvh "#undef USE_LIBRTMP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_MANUAL"
|
||||
$write cvh "#undef USE_MANUAL"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_NGHTTP2"
|
||||
$write cvh "#undef USE_NGHTTP2"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_OPENLDAP"
|
||||
$write cvh "#undef USE_OPENLDAP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_THREADS_POSIX"
|
||||
$write cvh "#undef USE_THREADS_POSIX"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_TLS_SRP"
|
||||
$write cvh "#undef USE_TLS_SRP"
|
||||
$write cvh "#endif"
|
||||
$write cvh "#ifdef USE_UNIX_SOCKETS"
|
||||
$write cvh "#undef USE_UNIX_SOCKETS"
|
||||
$write cvh "#endif"
|
||||
$!
|
||||
$write cvh "#ifndef HAVE_OLD_GSSMIT"
|
||||
$write cvh "#define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE"
|
||||
$write cvh "#endif"
|
||||
$!
|
||||
$!
|
||||
$! Note:
|
||||
$! The CURL_EXTERN_SYMBOL is used for platforms that need the compiler
|
||||
$! to know about universal symbols. VMS does not need this support so
|
||||
$! we do not set it here.
|
||||
$!
|
||||
$!
|
||||
$! I can not figure out where the C compiler is finding the ALLOCA.H file
|
||||
$! in the text libraries, so CONFIG_H.COM can not find it either.
|
||||
$! Usually the header file name is the module name in the text library.
|
||||
$! It does not appear to hurt anything to not find header file, so we
|
||||
$! are not overriding it here.
|
||||
$!
|
||||
$!
|
||||
$! Check to see if OpenSSL is present.
|
||||
$!----------------------------------
|
||||
$ssl_include = f$trnlnm("OPENSSL")
|
||||
$if ssl_include .eqs. ""
|
||||
$then
|
||||
$ ssl_include = f$trnlnm("ssl$include")
|
||||
$endif
|
||||
$if ssl_include .eqs. "" then nossl = 1
|
||||
$!
|
||||
$if .not. nossl
|
||||
$then
|
||||
$!
|
||||
$ write cvh "#ifndef USE_OPENSSL"
|
||||
$ write cvh "#define USE_OPENSSL 1"
|
||||
$ write cvh "#endif"
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ old_mes = f$environment("message")
|
||||
$ set message/notext/nofaci/noseve/noident
|
||||
$ search/output=nla0: ssl$include:*.h CONF_MFLAGS_IGNORE_MISSING_FILE
|
||||
$ status = $severity
|
||||
$ set message'old_mes'
|
||||
$ if status .nes. "1"
|
||||
$ then
|
||||
$ write cvh "#define VMS_OLD_SSL 1"
|
||||
$ endif
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$! LibIDN not ported to VMS at this time.
|
||||
$! This is for international domain name support.
|
||||
$! Allow explicit experimentation.
|
||||
$if libidn
|
||||
$then
|
||||
$ write cvh "#define HAVE_IDNA_STRERROR 1"
|
||||
$ write cvh "#define HAVE_IDNA_FREE 1"
|
||||
$ write cvh "#define HAVE_IDNA_FREE_H 1"
|
||||
$ write cvh "#define HAVE_LIBIDN 1"
|
||||
$else
|
||||
$ write cvh "#ifdef HAVE_LIBIDN"
|
||||
$ write cvh "#undef HAVE_LIBIDN"
|
||||
$ write cvh "#endif"
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$! LibSSH2 not ported to VMS at this time.
|
||||
$! Allow explicit experimentation.
|
||||
$if libssh2
|
||||
$then
|
||||
$ write cvh "#define HAVE_LIBSSH2_EXIT 1"
|
||||
$ write cvh "#define HAVE_LIBSSH2_INIT 1"
|
||||
$ write cvh "#define HAVE_LIBSSH2_SCP_SEND64 1"
|
||||
$ write cvh "#define HAVE_LIBSSH2_SESSION_HANDSHAKE 1"
|
||||
$ write cvh "#define HAVE_LIBSSH2_VERSION 1
|
||||
$!
|
||||
$ write cvh "#ifndef USE_LIBSSH2"
|
||||
$ write cvh "#define USE_LIBSSH2 1"
|
||||
$ write cvh "#endif"
|
||||
$else
|
||||
$ write cvh "#ifdef USE_LIBSSH2"
|
||||
$ write cvh "#undef USE_LIBSSH2"
|
||||
$ write cvh "#endif"
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$if .not. nozlib
|
||||
$then
|
||||
$ write cvh "#define HAVE_LIBZ 1"
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$! Suppress a message in curl_gssapi.c compile.
|
||||
$write cvh "#pragma message disable notconstqual"
|
||||
$!
|
||||
$! Close out the file
|
||||
$!
|
||||
$write cvh ""
|
||||
$write cvh "#endif /* __CONFIG_VMS_H__ */"
|
||||
$close cvh
|
||||
$!
|
||||
$all_exit:
|
||||
$exit
|
273
third_party/curl/packages/vms/generate_vax_transfer.com
vendored
Normal file
273
third_party/curl/packages/vms/generate_vax_transfer.com
vendored
Normal file
@ -0,0 +1,273 @@
|
||||
$! File: generate_vax_transfer.com
|
||||
$!
|
||||
$! File to generate and compile the VAX transfer vectors from reading in the
|
||||
$! Alpha/Itanium gnv_libcurl_symbols.opt file.
|
||||
$!
|
||||
$! This procedure patches the VAX Macro32 assembler to be case sensitive
|
||||
$! and then compiles the generated
|
||||
$!
|
||||
$! The output of this procedure is:
|
||||
$! gnv_libcurl_xfer.mar_exact
|
||||
$! gnv_libcurl_xfer.obj
|
||||
$! gnv_libcurl_xfer.opt
|
||||
$! macro32_exactcase.exe
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!============================================================================
|
||||
$!
|
||||
$! Save this so we can get back.
|
||||
$ default_dir = f$environment("default")
|
||||
$!
|
||||
$ on warning then goto all_exit
|
||||
$!
|
||||
$! Want hard tabs in the generated file.
|
||||
$ tab[0,8] = 9
|
||||
$!
|
||||
$! This procedure is used on VAX only
|
||||
$ if (f$getsyi("HW_MODEL") .ge. 1024)
|
||||
$ then
|
||||
$ write sys$output "This procedure is only used on VAX."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Get the libcurl version to generate the ident string.
|
||||
$! ident string is max of 31 characters.
|
||||
$!
|
||||
$ ident_string = "unknown"
|
||||
$ open/read cver [-.-.include.curl]curlver.h
|
||||
$cver_loop:
|
||||
$ read/end=cver_loop_end cver line_in
|
||||
$ line_in = f$edit(line_in, "COMPRESS,TRIM")
|
||||
$ if line_in .eqs. "" then goto cver_loop
|
||||
$ code = f$extract(0, 1, line_in)
|
||||
$ if code .nes. "#" then goto cver_loop
|
||||
$ directive = f$element(0, " ", line_in)
|
||||
$ if directive .nes. "#define" then goto cver_loop
|
||||
$ name = f$element(1, " ", line_in)
|
||||
$ if name .nes. "LIBCURL_VERSION" then goto cver_loop
|
||||
$ ident_string = f$element(2, " ", line_in) - "" - ""
|
||||
$cver_loop_end:
|
||||
$ close cver
|
||||
$!
|
||||
$ open/read aopt gnv_libcurl_symbols.opt
|
||||
$!
|
||||
$! Write out the header
|
||||
$ gosub do_header
|
||||
$!
|
||||
$ open/append vopt gnv_libcurl_xfer.mar_exact
|
||||
$ write vopt tab,".IDENT /", ident_string, "/"
|
||||
$!
|
||||
$ write vopt tab, ".PSECT LIBCURL_XFERVECTORS -"
|
||||
$ write vopt tab,tab,tab, "PIC,USR,CON,REL,GBL,SHR,EXE,RD,NOWRT,QUAD"
|
||||
$ write vopt ""
|
||||
$ write vopt tab, "SPARE", tab, "; never delete this spare"
|
||||
$ write vopt ";"
|
||||
$ write vopt ";", tab, "Exact case and upper case transfer vectors"
|
||||
$!
|
||||
$ alias_count = 0
|
||||
$vector_loop:
|
||||
$!
|
||||
$! Read in symbol_vector
|
||||
$!
|
||||
$ read/end=vector_loop_end aopt line_in
|
||||
$ line = f$edit(line_in, "UNCOMMENT,COMPRESS,TRIM")
|
||||
$ if line .eqs. "" then goto vector_loop
|
||||
$!
|
||||
$ line_u = f$edit(line, "UPCASE")
|
||||
$ key = f$element(0, "=", line_u)
|
||||
$ if (key .eqs. "SYMBOL_VECTOR")
|
||||
$ then
|
||||
$ symbol_string = f$element(1, "=", line) - "("
|
||||
$ symbol_type = f$element(2, "=", line_u) - ")"
|
||||
$ symbol_name = f$element(1, "/", symbol_string)
|
||||
$ if symbol_type .nes. "PROCEDURE"
|
||||
$ then
|
||||
$ write sys$output "%CURLBUILD-W-NOTPROC, " + -
|
||||
$ "This procedure can only handle procedure vectors"
|
||||
$ write sys$output -
|
||||
"Data vectors require manual construction for which this procedure or"
|
||||
$ write sys$output -
|
||||
"the shared library needs to be updated to resolve."
|
||||
$ write sys$output -
|
||||
"the preferred solution is to have a procedure return the address of the "
|
||||
$ write sys$output -
|
||||
"the variable instead of having a variable, as if the size of the variable "
|
||||
write sys$output -
|
||||
"changes, the symbol vector is no longer backwards compatible."
|
||||
$ endif
|
||||
$ if (symbol_name .eqs. "/")
|
||||
$ then
|
||||
$ symbol_name = symbol_string
|
||||
$ write vopt tab, symbol_type, tab, symbol_name
|
||||
$ else
|
||||
$ alias_count = alias_count + 1
|
||||
$ symbol_alias = f$element(0, "/", symbol_string)
|
||||
$ write vopt -
|
||||
tab, "''symbol_type_U", tab, symbol_name, tab, symbol_alias
|
||||
$ endif
|
||||
$ endif
|
||||
$ goto vector_loop
|
||||
$vector_loop_end:
|
||||
$!
|
||||
$! End of pass one, second pass needed if aliases exist
|
||||
$ close aopt
|
||||
$!
|
||||
$ if alias_count .eq. 0 then goto finish_file
|
||||
$!
|
||||
$! Start pass 2, write stub routine header
|
||||
$!
|
||||
$ open/read aopt gnv_libcurl_symbols.opt
|
||||
$!
|
||||
$alias_loop:
|
||||
$!
|
||||
$! Read in symbol_vector
|
||||
$!
|
||||
$ read/end=alias_loop_end aopt line_in
|
||||
$ line = f$edit(line_in, "UNCOMMENT,COMPRESS,TRIM")
|
||||
$ if line .eqs. "" then goto alias_loop
|
||||
$!
|
||||
$ line_u = f$edit(line, "UPCASE")
|
||||
$ key = f$element(0, "=", line_u)
|
||||
$ if (key .eqs. "SYMBOL_VECTOR")
|
||||
$ then
|
||||
$ symbol_string = f$element(1, "=", line) - "("
|
||||
$ symbol_type = f$element(2, "=", line_u) - ")"
|
||||
$ symbol_name = f$element(1, "/", symbol_string)
|
||||
$ if (symbol_name .eqs. "/")
|
||||
$ then
|
||||
$ symbol_name = symbol_string
|
||||
$ else
|
||||
$ alias_count = alias_count + 1
|
||||
$ symbol_alias = f$element(0, "/", symbol_string)
|
||||
$ write vopt tab, ".ENTRY", tab, symbol_alias, ", ^M<>"
|
||||
$ endif
|
||||
$ endif
|
||||
$ goto alias_loop
|
||||
$! read in symbol_vector
|
||||
$! if not alias, then loop
|
||||
$! write out subroutine name
|
||||
$!
|
||||
$alias_loop_end:
|
||||
$!
|
||||
$ write vopt tab, "MOVL #1, R0"
|
||||
$ write vopt tab, "RET"
|
||||
$!
|
||||
$finish_file:
|
||||
$!
|
||||
$ write vopt ""
|
||||
$ write vopt tab, ".END"
|
||||
$!
|
||||
$ close aopt
|
||||
$ close vopt
|
||||
$!
|
||||
$! Patch the Macro32 compiler
|
||||
$!----------------------------
|
||||
$ patched_macro = "sys$disk:[]macro32_exactcase.exe"
|
||||
$ if f$search(patched_macro) .eqs. ""
|
||||
$ then
|
||||
$ copy sys$system:macro32.exe 'patched_macro'
|
||||
$ patch @macro32_exactcase.patch
|
||||
$ endif
|
||||
$ define/user macro32 'patched_macro'
|
||||
$ macro/object=gnv_libcurl_xfer.obj gnv_libcurl_xfer.mar_exact
|
||||
$!
|
||||
$! Create the option file for linking the shared image.
|
||||
$ create gnv_libcurl_xfer.opt
|
||||
$ open/append lco gnv_libcurl_xfer.opt
|
||||
$ write lco "gsmatch=lequal,1,1"
|
||||
$ write lco "cluster=transfer_vector,,,''default_dir'gnv_libcurl_xfer"
|
||||
$ write lco "collect=libcurl_global, libcurl_xfervectors"
|
||||
$ close lco
|
||||
$!
|
||||
$!
|
||||
$ goto all_exit
|
||||
$!
|
||||
$! Process the header
|
||||
$do_header:
|
||||
$!
|
||||
$! Force the mode of the file to same as text editor generated.
|
||||
$ create gnv_libcurl_xfer.mar_exact
|
||||
$deck
|
||||
; File: gnv_libcurl_xfer.mar_exact
|
||||
;
|
||||
; VAX transfer vectors
|
||||
;
|
||||
; This needs to be compiled with a specialized patch on Macro32 to make it
|
||||
; preserve the case of symbols instead of converting it to uppercase.
|
||||
;
|
||||
; This patched Macro32 requires all directives to be in upper case.
|
||||
;
|
||||
; There are three sets of symbols for transfer vectors here.
|
||||
;
|
||||
; The first for upper case which matches the tradition method of generating
|
||||
; VAX transfer vectors.
|
||||
;
|
||||
; The second is the exact case for compatibility with open source C programs
|
||||
; that expect exact case symbols in images. These are separated because a
|
||||
; previous kit had only upper case symbols.
|
||||
;
|
||||
; The third is the routine stub that is used to resolve part of the upper
|
||||
; case transfer vectors, with exact case entry symbols.
|
||||
;
|
||||
; When you add routines, you need to add them after the second set of transfer
|
||||
; vectors for both upper and exact case, and then additional entry points
|
||||
; in upper case added to stub routines.
|
||||
;
|
||||
;*************************************************************************
|
||||
|
||||
.TITLE libcurl_xfer - Transfer vector for libcurl
|
||||
.DISABLE GLOBAL
|
||||
|
||||
;
|
||||
; Macro to generate a transfer vector entry
|
||||
;
|
||||
.MACRO PROCEDURE NAME
|
||||
.EXTRN 'NAME
|
||||
.ALIGN QUAD
|
||||
.TRANSFER 'NAME
|
||||
.MASK 'NAME
|
||||
JMP 'NAME+2
|
||||
.ENDM
|
||||
|
||||
.MACRO PROCEDUREU NAME NAMEU
|
||||
.EXTRN 'NAME
|
||||
.ALIGN QUAD
|
||||
.TRANSFER 'NAMEU
|
||||
.MASK 'NAME
|
||||
JMP 'NAME+2
|
||||
|
||||
.ENDM
|
||||
;
|
||||
;
|
||||
; Macro to reserve a spare entry.
|
||||
;
|
||||
.MACRO SPARE
|
||||
.ALIGN QUAD
|
||||
.ALIGN QUAD
|
||||
.QUAD 0
|
||||
.ENDM
|
||||
|
||||
$EOD
|
||||
$!
|
||||
$!
|
||||
$ return
|
||||
$!
|
||||
$all_exit:
|
||||
$set def 'default_dir'
|
||||
$exit '$status'
|
58
third_party/curl/packages/vms/gnv_conftest.c_first
vendored
Normal file
58
third_party/curl/packages/vms/gnv_conftest.c_first
vendored
Normal file
@ -0,0 +1,58 @@
|
||||
/* File: GNV$CONFTEST.C_FIRST
|
||||
*
|
||||
* Copyright (C) John Malmberg
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* SPDX-License-Identifier: ISC
|
||||
*
|
||||
*/
|
||||
|
||||
/* This is needed for Configure tests to get the correct exit status */
|
||||
void __posix_exit(int __status);
|
||||
#define exit(__p1) __posix_exit(__p1)
|
||||
|
||||
/* Fake pass the test to find a standard ldap routine that we know is */
|
||||
/* present on VMS, but with the wrong case for the symbol */
|
||||
char ldap_url_parse(void) {return 0;}
|
||||
|
||||
/* These are to pass the test that does not use headers */
|
||||
/* Because configure does an #undef which keeps us from using #define */
|
||||
/* char CRYPTO_add_lock(void) {return 0;} */
|
||||
char SSL_connect(void) {return 0;}
|
||||
char ENGINE_init(void) {return 0;}
|
||||
char RAND_status(void) {return 0;}
|
||||
/* char RAND_screen(void) {return 0;} In headers, but not present */
|
||||
char CRYPTO_cleanup_all_ex_data(void) {return 0;}
|
||||
char SSL_get_shutdown(void) {return 0;}
|
||||
char ENGINE_load_builtin_engines (void) {return 0;}
|
||||
|
||||
/* And these are to pass the test that uses headers. */
|
||||
/* Because the HP OpenSSL transfer vectors are currently in Upper case only */
|
||||
#pragma message disable macroredef
|
||||
#define CRYPTO_add_lock CRYPTO_ADD_LOCK
|
||||
#define SSL_connect SSL_CONNECT
|
||||
#define ENGINE_init ENGINE_INIT
|
||||
#define RAND_status RAND_STATUS
|
||||
/* #define RAND_screen RAND_SCREEN */
|
||||
#define CRYPTO_cleanup_all_ex_data CRYPTO_CLEANUP_ALL_EX_DATA
|
||||
#define SSL_get_shutdown SSL_GET_SHUTDOWN
|
||||
#define ENGINE_load_builtin_engines ENGINE_LOAD_BUILTIN_ENGINES
|
||||
|
||||
/* Can not use the #define macro to fix the case on CRYPTO_lock because */
|
||||
/* there is a macro CRYPTO_LOCK that is a number */
|
||||
|
||||
/* After all the work to get configure to pass the CRYPTO_LOCK tests,
|
||||
* it turns out that VMS does not have the CRYPTO_LOCK symbol in the
|
||||
* transfer vector, even though it is in the header file.
|
||||
*/
|
44
third_party/curl/packages/vms/gnv_curl_configure.sh
vendored
Executable file
44
third_party/curl/packages/vms/gnv_curl_configure.sh
vendored
Executable file
@ -0,0 +1,44 @@
|
||||
# File: gnv_curl_configure.sh
|
||||
#
|
||||
# Set up and run the configure script for Curl so that it can find the
|
||||
# proper options for VMS.
|
||||
#
|
||||
# Copyright (C) John Malmberg
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
# copyright notice and this permission notice appear in all copies.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
#
|
||||
# SPDX-License-Identifier: ISC
|
||||
#
|
||||
#==========================================================================
|
||||
#
|
||||
# POSIX exit mode is needed for Unix shells.
|
||||
export GNV_CC_MAIN_POSIX_EXIT=1
|
||||
#
|
||||
# Where to look for the helper files.
|
||||
export GNV_OPT_DIR=.
|
||||
#
|
||||
# How to find the SSL library files.
|
||||
export LIB_OPENSSL=/SSL_LIB
|
||||
#
|
||||
# Override configure adding -std1 which is too strict for what curl
|
||||
# actually wants.
|
||||
export GNV_CC_QUALIFIERS=/STANDARD=RELAXED
|
||||
#
|
||||
# Set the directory to where the Configure script actually is.
|
||||
cd ../..
|
||||
#
|
||||
#
|
||||
./configure --prefix=/usr --exec-prefix=/usr --disable-dependency-tracking \
|
||||
--disable-libtool-lock --with-gssapi --disable-ntlm-wb \
|
||||
--with-ca-path=gnv\$curl_ca_path
|
||||
#
|
181
third_party/curl/packages/vms/gnv_libcurl_symbols.opt
vendored
Normal file
181
third_party/curl/packages/vms/gnv_libcurl_symbols.opt
vendored
Normal file
@ -0,0 +1,181 @@
|
||||
! File GNV$LIBCURL_SYMBOLS.OPT
|
||||
!
|
||||
! This file must be manually maintained to allow upward compatibility
|
||||
! The SYMBOL_VECTORs are set up so that applications can be compiled
|
||||
! with either case sensitive symbol names or the default of uppercase.
|
||||
! This is because many of the Open Source applications that would call
|
||||
! the LIBCURL library need to be built with case sensitive names.
|
||||
!
|
||||
! Automatic generation is currently not practical because the order of
|
||||
! the entries are important for upward compatibility.
|
||||
!
|
||||
! The GSMATCH is manually set to the major version of 1, with the minor
|
||||
! version being the next two sections multiplied by a power of 10 to
|
||||
! become the minor version.
|
||||
! So LIBCURL 7.18.1 becomes 1,718010.
|
||||
! And a future LIBCURL of 7.18.2 would be 1,718020 if new routines were added.
|
||||
!
|
||||
! This leaves some spare digits for minor patches.
|
||||
!
|
||||
! Note that the GSMATCH does not need to have any real relationship to the
|
||||
! actual package version number.
|
||||
!
|
||||
! New SYMBOL_VECTORs must be added to the end of this list, and added
|
||||
! in pairs for both exact and with an uppercase alias.
|
||||
! If the public symbol is more than 31 characters long, then a special
|
||||
! shortened symbol will be exported, and three aliases should be created,
|
||||
! The aliases will be the special shortened uppercase alias, and both
|
||||
! upper and lowercase versions of a truncated name (preferred) or a
|
||||
! modified manually shortened name if a truncated name will not be
|
||||
! unique.
|
||||
!
|
||||
! Routines can not be removed, the functionality must be maintained.
|
||||
! If a new routine is supplied where the arguments are incompatible with
|
||||
! the older version, both versions are needed to be maintained.
|
||||
! The old version can be given a different name, but must be in the same
|
||||
! SYMBOL_VECTOR positions in this file.
|
||||
!
|
||||
! Changing the number of parameters for an existing routine does not require
|
||||
! maintaining multiple versions as long as the routine can be called with
|
||||
! the old number of parameters.
|
||||
!
|
||||
! Copyright (C) John Malmberg
|
||||
!
|
||||
! Permission to use, copy, modify, and/or distribute this software for any
|
||||
! purpose with or without fee is hereby granted, provided that the above
|
||||
! copyright notice and this permission notice appear in all copies.
|
||||
!
|
||||
! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
!
|
||||
! SPDX-License-Identifier: ISC
|
||||
!============================================================================
|
||||
GSMATCH=LEQUAL,1,719050
|
||||
CASE_SENSITIVE=YES
|
||||
SYMBOL_VECTOR=(curl_strequal=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_STREQUAL/curl_strequal=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_strnequal=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_STRNEQUAL/curl_strnequal=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_formadd=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_FORMADD/curl_formadd=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_formget=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_FORMGET/curl_formget=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_formfree=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_FORMFREE/curl_formfree=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_getenv=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_GETENV/curl_getenv=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_version=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_VERSION/curl_version=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_escape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_ESCAPE/curl_easy_escape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_escape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_ESCAPE/curl_escape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_unescape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_UNESCAPE/curl_easy_unescape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_unescape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_UNESCAPE/curl_unescape=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_free=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_FREE/curl_free=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_global_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_GLOBAL_INIT/curl_global_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_global_init_mem=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_GLOBAL_INIT_MEM/curl_global_init_mem=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_global_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_GLOBAL_CLEANUP/curl_global_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_slist_append=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SLIST_APPEND/curl_slist_append=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_slist_free_all=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SLIST_FREE_ALL/curl_slist_free_all=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_getdate=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_GETDATE/curl_getdate=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_share_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SHARE_INIT/curl_share_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_share_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SHARE_SETOPT/curl_share_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_share_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SHARE_CLEANUP/curl_share_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_version_info=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_VERSION_INFO/curl_version_info=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_STRERROR/curl_easy_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_share_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_SHARE_STRERROR/curl_share_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_pause=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_PAUSE/curl_easy_pause=PROCEDURE)
|
||||
!
|
||||
! easy.h
|
||||
SYMBOL_VECTOR=(curl_easy_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_INIT/curl_easy_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_SETOPT/curl_easy_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_perform=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_PERFORM/curl_easy_perform=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_CLEANUP/curl_easy_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_getinfo=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_GETINFO/curl_easy_getinfo=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_duphandle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_DUPHANDLE/curl_easy_duphandle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_reset=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_RESET/curl_easy_reset=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_recv=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_RECV/curl_easy_recv=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_easy_send=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_EASY_SEND/curl_easy_send=PROCEDURE)
|
||||
!
|
||||
! multi.h
|
||||
SYMBOL_VECTOR=(curl_multi_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_INIT/curl_multi_init=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_add_handle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_ADD_HANDLE/curl_multi_add_handle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_remove_handle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_REMOVE_HANDLE/curl_multi_remove_handle=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_fdset=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_FDSET/curl_multi_fdset=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_perform=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_PERFORM/curl_multi_perform=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_CLEANUP/curl_multi_cleanup=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_info_read=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_INFO_READ/curl_multi_info_read=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_STRERROR/curl_multi_strerror=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_socket=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_SOCKET/curl_multi_socket=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_socket_action=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_SOCKET_ACTION/curl_multi_socket_action=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_socket_all=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_SOCKET_ALL/curl_multi_socket_all=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_timeout=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_TIMEOUT/curl_multi_timeout=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_SETOPT/curl_multi_setopt=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_multi_assign=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MULTI_ASSIGN/curl_multi_assign=PROCEDURE)
|
||||
!
|
||||
! mprintf.h
|
||||
SYMBOL_VECTOR=(curl_mprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MPRINTF/curl_mprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mfprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MFPRINTF/curl_mfprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_msprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MSPRINTF/curl_msprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_msnprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MSNPRINTF/curl_msnprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mvprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MVPRINTF/curl_mvprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mvfprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MVFPRINTF/curl_mvfprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mvsprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MVSPRINTF/curl_mvsprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mvsnprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MVSNPRINTF/curl_mvsnprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_maprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MAPRINTF/curl_maprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(curl_mvaprintf=PROCEDURE)
|
||||
SYMBOL_VECTOR=(CURL_MVAPRINTF/curl_mvaprintf=PROCEDURE)
|
851
third_party/curl/packages/vms/gnv_link_curl.com
vendored
Normal file
851
third_party/curl/packages/vms/gnv_link_curl.com
vendored
Normal file
@ -0,0 +1,851 @@
|
||||
$! File: gnv_link_curl.com
|
||||
$!
|
||||
$! File to build images using gnv$libcurl.exe
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!============================================================================
|
||||
$!
|
||||
$! Save this so we can get back.
|
||||
$ default_dir = f$environment("default")
|
||||
$ define/job gnv_packages_vms 'default_dir'
|
||||
$!
|
||||
$ on warning then goto all_exit
|
||||
$!
|
||||
$! On VAX, we need to generate a Macro transfer vector.
|
||||
$ parse_style = "TRADITIONAL"
|
||||
$ if (f$getsyi("HW_MODEL") .lt. 1024)
|
||||
$ then
|
||||
$ @generate_vax_transfer.com
|
||||
$ arch_name = "VAX"
|
||||
$ else
|
||||
$ arch_name = ""
|
||||
$ arch_name = arch_name + f$edit(f$getsyi("ARCH_NAME"), "UPCASE")
|
||||
$ if (arch_name .eqs. "") then arch_name = "UNK"
|
||||
$!
|
||||
$! Extended parsing option starts with VMS 7.3-1.
|
||||
$! There is no 7.4, so that simplifies the parse a bit.
|
||||
$!
|
||||
$ node_swvers = f$getsyi("node_swvers")
|
||||
$ version_patch = f$extract(1, f$length(node_swvers), node_swvers)
|
||||
$ maj_ver = f$element(0, ".", version_patch)
|
||||
$ min_ver_patch = f$element(1, ".", version_patch)
|
||||
$ min_ver = f$element(0, "-", min_ver_patch)
|
||||
$ patch = f$element(1, "-", min_ver_patch)
|
||||
$ if patch .eqs. "-" then patch = ""
|
||||
$ parse_x = 0
|
||||
$ if maj_ver .ges. "8"
|
||||
$ then
|
||||
$ parse_x = 1
|
||||
$ else
|
||||
$ if maj_ver .eqs. "7" .and. min_ver .ges. "3" .and. patch .nes. ""
|
||||
$ then
|
||||
$ parse_x = 1
|
||||
$ endif
|
||||
$ endif
|
||||
$ if parse_x
|
||||
$ then
|
||||
$ parse_style = f$getjpi("", "parse_style_perm")
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Move to where the base directories.
|
||||
$ set def [--]
|
||||
$!
|
||||
$!
|
||||
$! Build the Message file.
|
||||
$!--------------------------
|
||||
$ if f$search("[.packages.vms]curlmsg.obj") .eqs. ""
|
||||
$ then
|
||||
$ message [.packages.vms]curlmsg.msg/object=[.packages.vms]
|
||||
$ endif
|
||||
$ if f$search("gnv$curlmsg.exe") .eqs. ""
|
||||
$ then
|
||||
$ link/share=gnv$curlmsg.exe [.packages.vms]curlmsg.obj
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Need to build the common init module.
|
||||
$!-------------------------------------------
|
||||
$ cflags = "/list/show=(expan,includ)"
|
||||
$ init_obj = "[.packages.vms]curl_crtl_init.obj"
|
||||
$ if f$search(init_obj) .eqs. ""
|
||||
$ then
|
||||
$ cc'cflags' 'default_dir'curl_crtl_init.c/obj='init_obj'
|
||||
$ endif
|
||||
$ purge 'init_obj'
|
||||
$ rename 'init_obj' ;1
|
||||
$!
|
||||
$!
|
||||
$! Need to build the module to test the HP OpenSSL version
|
||||
$!--------------------------------------------------------
|
||||
$ if arch_name .nes. "VAX"
|
||||
$ then
|
||||
$ rpt_obj = "[.packages.vms]report_openssl_version.obj
|
||||
$ if f$search(rpt_obj) .eqs. ""
|
||||
$ then
|
||||
$ cc'cflags' 'default_dir'report_openssl_version.c/obj='rpt_obj'
|
||||
$ endif
|
||||
$ purge 'rpt_obj'
|
||||
$ rename 'rpt_obj' ;1
|
||||
$!
|
||||
$ link/exe='default_dir'report_openssl_version.exe 'rpt_obj'
|
||||
$ report_openssl_version := $'default_dir'report_openssl_version.exe
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ base_link_opt_file = "[.packages.vms.''arch_name']gnv_libcurl_linker.opt"
|
||||
$ share_link_opt_file = "[.packages.vms.''arch_name']gnv_ssl_libcurl_linker.opt"
|
||||
$ if f$search(base_link_opt_file) .eqs. ""
|
||||
$ then
|
||||
$ base_link_opt_file = "[.packages.vms]gnv_libcurl_linker.opt"
|
||||
$ share_link_opt_file = "[.packages.vms]gnv_ssl_libcurl_linker.opt"
|
||||
$ if f$search(base_link_opt_file) .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "Can not find base library option file!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! Create the a new option file with special fixup for HP SSL
|
||||
$! For a shared image, we always want ZLIB and 32 bit HPSSL
|
||||
$!
|
||||
$ if f$search("gnv$libzshr32") .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "VMSPORTS/GNV LIBZ Shared image not found!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Need to check the version of the HP SSL shared image.
|
||||
$!
|
||||
$! VAX platform can not be checked this way, it appears symbol lookup
|
||||
$! was disabled. VAX has not been updated in a while.
|
||||
$ if arch_name .eqs. "VAX"
|
||||
$ then
|
||||
$ hp_ssl_libcrypto32 = "sys$common:[syslib]ssl$libcrypto_shr32.exe"
|
||||
$ hp_ssl_libssl32 = "sys$common:[syslib]ssl$libssl_shr32.exe"
|
||||
$ if f$search(hp_ssl_libcrypto32) .nes. ""
|
||||
$ then
|
||||
$ use_hp_ssl = 1
|
||||
$ curl_ssl_libcrypto32 = hp_ssl_libcrypto32
|
||||
$ curl_ssl_libssl32 = hp_ssl_libssl32
|
||||
$ curl_ssl_version = "OpenSSL/0.9.6g"
|
||||
$ else
|
||||
$ write sys$output "HP OpenSSL Shared images not found!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ else
|
||||
$!
|
||||
$! Minimum HP version we can use reports:
|
||||
$! "OpenSSL 0.9.8w 23 Apr 2012"
|
||||
$!
|
||||
$ use_hp_ssl = 0
|
||||
$ hp_ssl_libcrypto32 = "sys$share:ssl$libcrypto_shr32.exe"
|
||||
$ hp_ssl_libssl32 = "sys$share:ssl$libssl_shr32.exe"
|
||||
$ if f$search(hp_ssl_libcrypto32) .nes. ""
|
||||
$ then
|
||||
$ curl_ssl_libcrypto32 = hp_ssl_libcrypto32
|
||||
$ curl_ssl_libssl32 = hp_ssl_libssl32
|
||||
$ report_openssl_version 'hp_ssl_libcrypto32' hp_ssl_version
|
||||
$ endif
|
||||
$!
|
||||
$ if f$type(hp_ssl_version) .eqs. "STRING"
|
||||
$ then
|
||||
$ curl_ssl_version = hp_ssl_version
|
||||
$ full_version = f$element(1, " ", hp_ssl_version)
|
||||
$ ver_maj = f$element(0, ".", full_version)
|
||||
$ ver_min = f$element(1, ".", full_version)
|
||||
$ ver_patch = f$element(2, ".", full_version)
|
||||
$! ! ver_patch is typically both a number and some letters
|
||||
$ ver_patch_len = f$length(ver_patch)
|
||||
$ ver_patchltr = ""
|
||||
$ver_patch_loop:
|
||||
$ ver_patchltr_c = f$extract(ver_patch_len - 1, 1, ver_patch)
|
||||
$ if ver_patchltr_c .les. "9" then goto ver_patch_loop_end
|
||||
$ ver_patchltr = ver_patchltr_c + ver_patchltr
|
||||
$ ver_patch_len = ver_patch_len - 1
|
||||
$ goto ver_patch_loop
|
||||
$ver_patch_loop_end:
|
||||
$ ver_patchnum = ver_patch - ver_patchltr
|
||||
$ if 'ver_maj' .ge. 0
|
||||
$ then
|
||||
$ if 'ver_min' .ge. 9
|
||||
$ then
|
||||
$ if 'ver_patchnum' .ge. 8
|
||||
$ then
|
||||
$ if ver_patchltr .ges. "w" then use_hp_ssl = 1
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$set nover
|
||||
$ if use_hp_ssl .eq. 0
|
||||
$ then
|
||||
$ write sys$output -
|
||||
" HP OpenSSL version of ""''hp_ssl_version'"" is too old for shared libcurl!"
|
||||
$ endif
|
||||
$ else
|
||||
$ write sys$output "Unable to get version of HP OpenSSL"
|
||||
$ endif
|
||||
$!
|
||||
$ gnv_ssl_libcrypto32 = "gnv$gnu:[lib]ssl$libcrypto_shr32.exe"
|
||||
$ gnv_ssl_libssl32 = "gnv$gnu:[lib]ssl$libssl_shr32.exe"
|
||||
$ if f$search(gnv_ssl_libcrypto32) .nes. ""
|
||||
$ then
|
||||
$ report_openssl_version 'gnv_ssl_libcrypto32' gnv_ssl_version
|
||||
$ endif
|
||||
$!
|
||||
$ use_gnv_ssl = 0
|
||||
$ if f$type(gnv_ssl_version) .eqs. "STRING"
|
||||
$ then
|
||||
$ gnv_full_version = f$element(1, " ", gnv_ssl_version)
|
||||
$ gnv_ver_maj = f$element(0, ".", gnv_full_version)
|
||||
$ gnv_ver_min = f$element(1, ".", gnv_full_version)
|
||||
$ gnv_ver_patch = f$element(2, ".", gnv_full_version)
|
||||
$ gnv_ver_patch_len = f$length(gnv_ver_patch)
|
||||
$ gnv_ver_patchnum = f$extract(0, gnv_ver_patch_len - 1, gnv_ver_patch)
|
||||
$ gnv_ver_patchltr = f$extract(gnv_ver_patch_len - 1, 1, gnv_ver_patch)
|
||||
$ if 'gnv_ver_maj' .ge. 0
|
||||
$ then
|
||||
$ if 'gnv_ver_min' .ge. 9
|
||||
$ then
|
||||
$ if 'gnv_ver_patchnum' .ge. 8
|
||||
$ then
|
||||
$ if gnv_ver_patchltr .ges. "w" then use_gnv_ssl = 1
|
||||
$ endif
|
||||
$ endif
|
||||
$ endif
|
||||
$ if use_gnv_ssl .eq. 0
|
||||
$ then
|
||||
$ write sys$output -
|
||||
"GNV OpenSSL version of ""''gnv_ssl_version'" is too old for shared libcurl!"
|
||||
$ endif
|
||||
$!
|
||||
$! Prefer to break the tie with the lowest supported version
|
||||
$! For simplicity, if the GNV image is present, it will be used.
|
||||
$! Version tuple is not a simple compare.
|
||||
$!
|
||||
$ if use_gnv_ssl .eq. 1 then
|
||||
$ curl_ssl_libcrypto32 = gnv_ssl_libcrypto32
|
||||
$ curl_ssl_libssl32 = gnv_ssl_libssl32
|
||||
$ curl_ssl_version = gnv_ssl_version
|
||||
$ use_hp_ssl = 0
|
||||
$ endif
|
||||
!$!
|
||||
$ else
|
||||
$ write sys$output "Unable to get version of GNV OpenSSL"
|
||||
$ endif
|
||||
$!
|
||||
$! Need to write a release note section about HP OpenSSL
|
||||
$!
|
||||
$create 'default_dir'hp_ssl_release_info.txt
|
||||
$deck
|
||||
This package is built on with the OpenSSL version listed below and requires
|
||||
the shared images from the HP OpenSSL product that is kitted with that
|
||||
version or a compatible later version.
|
||||
|
||||
For Alpha and IA64 platforms, see the url below to register to get the
|
||||
download URL. The kit will be HP 1.4-467 or later.
|
||||
https://h41379.www4.hpe.com/openvms/products/ssl/ssl.html
|
||||
|
||||
For VAX, use the same registration, but remove the kit name from any of the
|
||||
download URLs provided and put in CPQ-VAXVMS-SSL-V0101-B-1.PCSI-DCX_VAXEXE
|
||||
|
||||
If your system can not be upgraded to a compatible version of OpenSSL, then
|
||||
you can extract the two shared images from the kit and place them in the
|
||||
[vms$common.gnv.lib]directory of the volume that you are installing GNV and
|
||||
or GNV compatible components like Curl.
|
||||
|
||||
If GNV is installed, you must run the GNV startup procedure before these steps
|
||||
and before installing Curl.
|
||||
|
||||
|
||||
1. make sure that [vms$common.gnv.lib] exists by using the following
|
||||
commands. We want the directory to be in lowercase except on VAX.
|
||||
|
||||
$SET PROCESS/PARSE=extend !If not VAX.
|
||||
$CREATE/DIR device:[vms$common.gnv.lib]/prot=w:re
|
||||
|
||||
2. Extract the ssl$crypto_shr32.exe and ssl$libssl_shr32.exe images.
|
||||
|
||||
$PRODUCT EXTRACT FILE -
|
||||
/select=(ssl$libcrypto_shr32.exe,ssl$libssl_shr32.exe)-
|
||||
/source=device:[dir] -
|
||||
/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.
|
||||
|
||||
When you upgrade SSL on VMS to the newer version of HP SSL, then these copies
|
||||
should be deleted.
|
||||
|
||||
$eod
|
||||
$!
|
||||
$ open/append sslr 'default_dir'hp_ssl_release_info.txt
|
||||
$ write sslr "OpenSSL version used for building this kit: ",curl_ssl_version
|
||||
$ write sslr ""
|
||||
$ close sslr
|
||||
$!
|
||||
$!
|
||||
$! LIBZ
|
||||
$ libzshr_line = ""
|
||||
$ try_shr = "gnv$libzshr32"
|
||||
$ if f$search(try_shr) .nes. ""
|
||||
$ then
|
||||
$ libzshr_line = "''try_shr'/share"
|
||||
$ else
|
||||
$ write sys$output "''try_shr' image not found!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ gssrtlshr_line = ""
|
||||
$ if arch_name .nes. "VAX"
|
||||
$ then
|
||||
$ try_shr = "sys$share:gss$rtl"
|
||||
$ if f$search("''try_shr'.exe") .nes. ""
|
||||
$ then
|
||||
$ gssrtlshr_line = "''try_shr'/share"
|
||||
$ else
|
||||
$ write sys$output "''try_shr' image not found!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$ if f$search(share_link_opt_file) .eqs. ""
|
||||
$ then
|
||||
$ create 'share_link_opt_file'
|
||||
$ open/append slopt 'share_link_opt_file'
|
||||
$ if libzshr_line .nes. "" then write slopt libzshr_line
|
||||
$ if gssrtlshr_line .nes. "" then write slopt gssrtlshr_line
|
||||
$ write slopt "gnv$curl_ssl_libcryptoshr32/share"
|
||||
$ write slopt "gnv$curl_ssl_libsslshr32/share"
|
||||
$ close slopt
|
||||
$ endif
|
||||
$!
|
||||
$! DCL build puts curllib in architecture directory
|
||||
$! GNV build uses the makefile.
|
||||
$ libfile = "[.packages.vms.''arch_name']curllib.olb"
|
||||
$ if f$search(libfile) .nes. ""
|
||||
$ then
|
||||
$ olb_file = libfile
|
||||
$ else
|
||||
$ ! GNV based build
|
||||
$ libfile = "[.lib.^.libs]libcurl.a"
|
||||
$ if f$search(libfile) .nes. ""
|
||||
$ then
|
||||
$ olb_file = libfile
|
||||
$ else
|
||||
$ write sys$output -
|
||||
"Can not build shared image, libcurl object library not found!"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$gnv_libcurl_share = "''default_dir'gnv$libcurl.exe"
|
||||
$!
|
||||
$ if f$search(gnv_libcurl_share) .eqs. ""
|
||||
$ then
|
||||
$ if arch_name .nes. "VAX"
|
||||
$ then
|
||||
$ define/user gnv$curl_ssl_libcryptoshr32 'curl_ssl_libcrypto32'
|
||||
$ define/user gnv$curl_ssl_libsslshr32 'curl_ssl_libssl32'
|
||||
$ link/dsf='default_dir'gnv$libcurl.dsf/share='gnv_libcurl_share' -
|
||||
/map='default_dir'gnv$libcurl.map -
|
||||
gnv_packages_vms:gnv_libcurl_symbols.opt/opt,-
|
||||
'olb_file'/lib,-
|
||||
'share_link_opt_file'/opt
|
||||
$ else
|
||||
$! VAX will not allow the logical name hack for the
|
||||
$! SSL libcryto library, it is pulling it in twice if I try it.
|
||||
$ link/share='gnv_libcurl_share'/map='default_dir'gnv$libcurl.map -
|
||||
gnv_packages_vms:gnv_libcurl_xfer.opt/opt,-
|
||||
'olb_file'/lib,-
|
||||
'base_link_opt_file'/opt
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if f$search("[.src]curl-tool_main.o") .nes. ""
|
||||
$ then
|
||||
$! From src/makefile.inc:
|
||||
$! # libcurl has sources that provide functions named curlx_* that aren't
|
||||
$! # part of the official API, but we reuse the code here to avoid
|
||||
$! # duplication.
|
||||
$!
|
||||
$!
|
||||
$ if f$search("[.src]curl.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.src]curl.exe/dsf=[.src]curl.dsf -
|
||||
[.src]curl-tool_main.o, [.src]curl-tool_binmode.o, -
|
||||
[.src]curl-tool_bname.o, [.src]curl-tool_cb_dbg.o, -
|
||||
[.src]curl-tool_cb_hdr.o, [.src]curl-tool_cb_prg.o, -
|
||||
[.src]curl-tool_cb_rea.o, [.src]curl-tool_cb_see.o, -
|
||||
[.src]curl-tool_cb_wrt.o, [.src]curl-tool_cfgable.o, -
|
||||
[.src]curl-tool_convert.o, [.src]curl-tool_dirhie.o, -
|
||||
[.src]curl-tool_doswin.o, [.src]curl-tool_easysrc.o, -
|
||||
[.src]curl-tool_formparse.o, [.src]curl-tool_getparam.o, -
|
||||
[.src]curl-tool_getpass.o, [.src]curl-tool_help.o, -
|
||||
[.src]curl-tool_helpers.o, [.src]curl-tool_homedir.o, -
|
||||
[.src]curl-tool_hugehelp.o, [.src]curl-tool_libinfo.o, -
|
||||
[.src]curl-tool_mfiles.o, -
|
||||
[.src]curl-tool_msgs.o, [.src]curl-tool_operate.o, -
|
||||
[.src]curl-tool_operhlp.o, -
|
||||
[.src]curl-tool_paramhlp.o, [.src]curl-tool_parsecfg.o, -
|
||||
[.src]curl-tool_setopt.o, [.src]curl-tool_sleep.o, -
|
||||
[.src]curl-tool_urlglob.o, [.src]curl-tool_util.o, -
|
||||
[.src]curl-tool_vms.o, [.src]curl-tool_writeenv.o, -
|
||||
[.src]curl-tool_writeout.o, [.src]curl-tool_xattr.o, -
|
||||
[.src]curl-strtoofft.o, [.src]curl-strdup.o, [.src]curl-strcase.o, -
|
||||
[.src]curl-nonblock.o, gnv_packages_vms:curlmsg.obj,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
gnv_packages_vms:curl_crtl_init.obj
|
||||
$ endif
|
||||
$ else
|
||||
$ curl_exe = "[.src]curl.exe"
|
||||
$ curl_dsf = "[.src]curl.dsf"
|
||||
$ curl_main = "[.packages.vms.''arch_name']tool_main.obj"
|
||||
$ curl_src = "[.packages.vms.''arch_name']curlsrc.olb"
|
||||
$ curl_lib = "[.packages.vms.''arch_name']curllib.olb"
|
||||
$ strcase = "strcase"
|
||||
$ nonblock = "nonblock"
|
||||
$ warnless = "warnless"
|
||||
$!
|
||||
$! Extended parse style requires special quoting
|
||||
$!
|
||||
$ if (arch_name .nes. "VAX") .and. (parse_style .eqs. "EXTENDED")
|
||||
$ then
|
||||
$ strcase = """strcase"""
|
||||
$ nonblock = """nonblock"""
|
||||
$ warnless = """warnless"""
|
||||
$ endif
|
||||
$ if f$search(curl_exe) .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe='curl_exe'/dsf='curl_dsf' -
|
||||
'curl_main','curl_src'/lib, -
|
||||
'curl_lib'/library/include=-
|
||||
('strcase','nonblock','warnless'),-
|
||||
gnv_packages_vms:curlmsg.obj,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
gnv_packages_vms:curl_crtl_init.obj
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! in6addr_missing so skip building:
|
||||
$! [.server]sws.o
|
||||
$! [.server]sockfilt.o
|
||||
$! [.server]tftpd.o
|
||||
$!
|
||||
$!
|
||||
$ target = "10-at-a-time"
|
||||
$ if f$search("[.docs.examples]''target'.o") .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "examples not built"
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "anyauthput"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "certinfo"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "cookie_interface"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "debug"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "fileupload"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ target = "fopen"
|
||||
$ if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$ then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$target = "ftpget"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "ftpgetresp"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "ftpupload"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "getinfo"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "getinmemory"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "http-post"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "httpcustomheader"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "httpput"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "https"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "multi-app"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "multi-debugcallback"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "multi-double"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "multi-post"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "multi-single"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "persistent"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "post-callback"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "postit2"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "sendrecv"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "sepheaders"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "simple"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "simplepost"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$!
|
||||
$target = "simplessl"
|
||||
$if f$search("[.docs.examples]''target'.exe") .eqs. ""
|
||||
$then
|
||||
$ define/user gnv$libcurl 'gnv_libcurl_share'
|
||||
$ link'ldebug'/exe=[.docs.examples]'target'.exe-
|
||||
/dsf=[.docs.examples]'target'.dsf -
|
||||
[.docs.examples]'target'.o,-
|
||||
gnv$'target'.opt/opt,-
|
||||
sys$input:/opt
|
||||
gnv$libcurl/share
|
||||
$endif
|
||||
$!
|
||||
$! =============== End of docs/examples =========================
|
||||
$!
|
||||
$!
|
||||
$all_exit:
|
||||
$set def 'default_dir'
|
||||
$exit '$status'
|
||||
$!
|
11
third_party/curl/packages/vms/macro32_exactcase.patch
vendored
Normal file
11
third_party/curl/packages/vms/macro32_exactcase.patch
vendored
Normal file
@ -0,0 +1,11 @@
|
||||
macro32_exactcase.exe
|
||||
SE EC
|
||||
^X00000001
|
||||
RE /I
|
||||
^X00012B1D
|
||||
'BICB2 #^X00000020,R3'
|
||||
EXIT
|
||||
'BICB2 #^X00000000,R3'
|
||||
EXI
|
||||
U
|
||||
EXI
|
44
third_party/curl/packages/vms/make_gnv_curl_install.sh
vendored
Executable file
44
third_party/curl/packages/vms/make_gnv_curl_install.sh
vendored
Executable file
@ -0,0 +1,44 @@
|
||||
# File: make_gnv_curl_install.sh
|
||||
#
|
||||
# Set up and run the make script for Curl.
|
||||
#
|
||||
# This makes the library, the curl binary and attempts an install.
|
||||
# A search list should be set up for GNU (GNV$GNU).
|
||||
#
|
||||
# Copyright (C) John Malmberg
|
||||
#
|
||||
# Permission to use, copy, modify, and/or distribute this software for any
|
||||
# purpose with or without fee is hereby granted, provided that the above
|
||||
# copyright notice and this permission notice appear in all copies.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
# OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
#
|
||||
# SPDX-License-Identifier: ISC
|
||||
#
|
||||
#==========================================================================
|
||||
#
|
||||
#
|
||||
# Needed VMS build setups for GNV.
|
||||
export GNV_OPT_DIR=.
|
||||
export GNV_CC_QUALIFIERS=/DEBUG/OPTIMIZE/STANDARD=RELAXED\
|
||||
/float=ieee_float/ieee_mode=denorm_results
|
||||
export GNV_CXX_QUALIFIERS=/DEBUG/OPTIMIZE/float=ieee/ieee_mode=denorm_results
|
||||
export GNV_CC_NO_INC_PRIMARY=1
|
||||
#
|
||||
#
|
||||
# POSIX exit mode is needed for Unix shells.
|
||||
export GNV_CC_MAIN_POSIX_EXIT=1
|
||||
make
|
||||
cd ../..
|
||||
# adjust the libcurl.pc file, GNV currently ignores the Lib: line.
|
||||
# but is noisy about it, so we just remove it.
|
||||
sed -e 's/^Libs:/#Libs:/g' libcurl.pc > libcurl.pc_new
|
||||
rm libcurl.pc
|
||||
mv libcurl.pc_new libcurl.pc
|
||||
make install
|
188
third_party/curl/packages/vms/make_pcsi_curl_kit_name.com
vendored
Normal file
188
third_party/curl/packages/vms/make_pcsi_curl_kit_name.com
vendored
Normal file
@ -0,0 +1,188 @@
|
||||
$! File: MAKE_PCSI_CURL_KIT_NAME.COM
|
||||
$!
|
||||
$! Calculates the PCSI kit name for use in building an installation kit.
|
||||
$! PCSI is HP's PolyCenter Software Installation Utility.
|
||||
$!
|
||||
$! The results are stored in as logical names so that other procedures
|
||||
$! can use them.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!========================================================================
|
||||
$!
|
||||
$! Save default
|
||||
$ default_dir = f$environment("DEFAULT")
|
||||
$!
|
||||
$! Move to the base directories
|
||||
$ set def [--]
|
||||
$!
|
||||
$! Put things back on error.
|
||||
$ on warning then goto all_exit
|
||||
$!
|
||||
$! The producer is the name or common abbreviation for the entity that is
|
||||
$! making the kit. It must be set as a logical name before running this
|
||||
$! procedure.
|
||||
$!
|
||||
$! HP documents the producer as the legal owner of the software, but for
|
||||
$! open source work, it should document who is creating the package for
|
||||
$! distribution.
|
||||
$!
|
||||
$ producer = f$trnlnm("GNV_PCSI_PRODUCER")
|
||||
$ if producer .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "The logical name GNV_PCSI_PRODUCER needs to be defined."
|
||||
$ write sys$output "This should be set to the common abbreviation or name of"
|
||||
$ write sys$output "the entity creating this kit. If you are an individual"
|
||||
$ write sys$output "then use your initials."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer_full_name = f$trnlnm("GNV_PCSI_PRODUCER_FULL_NAME")
|
||||
$ if producer_full_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "The logical name GNV_PCSI_PRODUCER_FULL_NAME needs to"
|
||||
$ write sys$output "be defined. This should be set to the full name of"
|
||||
$ write sys$output "the entity creating this kit. If you are an individual"
|
||||
$ write sys$output "then use your name."
|
||||
$ write sys$output "EX: DEFINE GNV_PCSI_PRODUCER_FULL_NAME ""First M. Last"""
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$ write sys$output "*****"
|
||||
$ write sys$output "***** Producer = ''producer'"
|
||||
$ write sys$output "*****"
|
||||
$!
|
||||
$!
|
||||
$! Base is one of 'VMS', 'AXPVMS', 'I64VMS', 'VAXVMS' and indicates what
|
||||
$! binaries are in the kit. A kit with just 'VMS' can be installed on all
|
||||
$! architectures.
|
||||
$!
|
||||
$ base = "VMS"
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ code = f$extract(0, 1, arch_type)
|
||||
$ if (code .eqs. "I") then base = "I64VMS"
|
||||
$ if (code .eqs. "V") then base = "VAXVMS"
|
||||
$ if (code .eqs. "A") then base = "AXPVMS"
|
||||
$!
|
||||
$!
|
||||
$ product = "curl"
|
||||
$!
|
||||
$!
|
||||
$! We need to get the version from curlver_h. It will have a line like
|
||||
$! #define LIBCURL_VERSION "7.31.0"
|
||||
$! or
|
||||
$! #define LIBCURL_VERSION "7.32.0-20130731".
|
||||
$!
|
||||
$! The dash indicates that this is a daily pre-release.
|
||||
$!
|
||||
$!
|
||||
$ open/read/error=version_loop_end vhf [.include.curl]curlver.h
|
||||
$ version_loop:
|
||||
$ read vhf line_in
|
||||
$ if line_in .eqs. "" then goto version_loop
|
||||
$ if f$locate("#define LIBCURL_VERSION ", line_in) .ne. 0
|
||||
$ then
|
||||
$ goto version_loop
|
||||
$ endif
|
||||
$ raw_version = f$element(2," ", line_in) - """" - """"
|
||||
$ version_loop_end:
|
||||
$ close vhf
|
||||
$!
|
||||
$!
|
||||
$ eco_level = ""
|
||||
$ if f$search("''default_dir'vms_eco_level.h") .nes. ""
|
||||
$ then
|
||||
$ open/read ef 'default_dir'vms_eco_level.h
|
||||
$ecolevel_loop:
|
||||
$ read/end=ecolevel_loop_end ef line_in
|
||||
$ prefix = f$element(0, " ", line_in)
|
||||
$ if prefix .nes. "#define" then goto ecolevel_loop
|
||||
$ key = f$element(1, " ", line_in)
|
||||
$ value = f$element(2, " ", line_in) - """" - """"
|
||||
$ if key .eqs. "VMS_ECO_LEVEL"
|
||||
$ then
|
||||
$ eco_level = "''value'"
|
||||
$ if eco_level .eqs. "0"
|
||||
$ then
|
||||
$ eco_level = ""
|
||||
$ else
|
||||
$ eco_level = "E" + eco_level
|
||||
$ endif
|
||||
$ goto ecolevel_loop_end
|
||||
$ endif
|
||||
$ goto ecolevel_loop
|
||||
$ecolevel_loop_end:
|
||||
$ close ef
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! This translates to V0732-0 or D0732-0
|
||||
$! 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
|
||||
$! 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)
|
||||
$ update = f$element(0, "-", raw_update)
|
||||
$ if update .eqs. "0" then update = ""
|
||||
$ daily_tag = f$element(1, "-", raw_update)
|
||||
$ vtype = "V"
|
||||
$ patch = ""
|
||||
$ if daily_tag .nes. "-"
|
||||
$ then
|
||||
$ vtype = "D"
|
||||
$ daily_tag_len = f$length(daily_tag)
|
||||
$ daily_tag = f$extract(4, daily_tag_len - 4, daily_tag)
|
||||
$ patch = vtype + daily_tag
|
||||
$ product = product + "_d"
|
||||
$ else
|
||||
$ daily_tag = ""
|
||||
$ if eco_level .nes. "" then patch = eco_level
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ version_fao = "!2ZB!2ZB"
|
||||
$ mmversion = f$fao(version_fao, 'majorver', 'minorver')
|
||||
$ version = vtype + "''mmversion'"
|
||||
$ if update .nes. "" .or. patch .nes. ""
|
||||
$ then
|
||||
$! The presence of a patch implies an update
|
||||
$ if update .eqs. "" .and. patch .nes. "" then update = "0"
|
||||
$ version = version + "-" + update + patch
|
||||
$ fversion = version
|
||||
$ else
|
||||
$ fversion = version
|
||||
$ version = version + "-"
|
||||
$ endif
|
||||
$!
|
||||
$! Kit type 1 is complete kit, the only type that this procedure will make.
|
||||
$ kittype = 1
|
||||
$!
|
||||
$! Write out a logical name for the resulting base kit name.
|
||||
$ name = "''producer'-''base'-''product'-''version'-''kittype'"
|
||||
$ define GNV_PCSI_KITNAME "''name'"
|
||||
$ fname = "''product'-''fversion'"
|
||||
$ define GNV_PCSI_FILENAME_BASE "''fname'"
|
||||
$ write sys$output "*****"
|
||||
$ write sys$output "***** GNV_PCSI_KITNAME = ''name'."
|
||||
$ write sys$output "***** GNV_PCSI_FILENAME_BASE = ''fname'."
|
||||
$ write sys$output "*****"
|
||||
$!
|
||||
$all_exit:
|
||||
$ set def 'default_dir'
|
||||
$ exit '$status'
|
125
third_party/curl/packages/vms/pcsi_gnv_curl_file_list.txt
vendored
Normal file
125
third_party/curl/packages/vms/pcsi_gnv_curl_file_list.txt
vendored
Normal file
@ -0,0 +1,125 @@
|
||||
! File: PCSI_GNV_CURL_FILE_LIST.TXT
|
||||
!
|
||||
! File list for building a PCSI kit.
|
||||
! Very simple format so that the parsing logic can be simple.
|
||||
! links first, directory second, and files third.
|
||||
!
|
||||
! link -> file tells procedure to create/remove a link on install/uninstall
|
||||
! If more than one link, consider using an alias file.
|
||||
!
|
||||
! [xxx.yyy]foo.dir is a directory file for the rename phase.
|
||||
! [xxx.yyy.foo] is a directory file for the create phase.
|
||||
! Each subdirectory needs to be on its own pair of lines.
|
||||
!
|
||||
! [xxx.yyy]file.ext is a file for the rename and add phases.
|
||||
!
|
||||
! Copyright (C) John Malmberg
|
||||
!
|
||||
! Permission to use, copy, modify, and/or distribute this software for any
|
||||
! purpose with or without fee is hereby granted, provided that the above
|
||||
! copyright notice and this permission notice appear in all copies.
|
||||
!
|
||||
! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
!
|
||||
! SPDX-License-Identifier: ISC
|
||||
!
|
||||
!============================================================================
|
||||
[gnv.usr.bin]curl. -> [gnv.usr.bin]gnv$curl.exe
|
||||
[gnv.usr.bin]curl.exe -> [gnv.usr.bin]gnv$curl.exe
|
||||
[gnv]
|
||||
[000000]gnv.dir
|
||||
[gnv.usr]
|
||||
[gnv]usr.dir
|
||||
[gnv.usr]bin.dir
|
||||
[gnv.usr.bin]
|
||||
[gnv.usr]include.dir
|
||||
[gnv.usr.include]
|
||||
[gnv.usr.include]curl.dir
|
||||
[gnv.usr.include.curl]
|
||||
[gnv.usr]lib.dir
|
||||
[gnv.usr.lib]
|
||||
[gnv.usr.lib]pkgconfig.dir
|
||||
[gnv.usr.lib.pkgconfig]
|
||||
[gnv.usr]share.dir
|
||||
[gnv.usr.share]
|
||||
[gnv.usr.share]man.dir
|
||||
[gnv.usr.share.man]
|
||||
[gnv.usr.share.man]man1.dir
|
||||
[gnv.usr.share.man.man1]
|
||||
[gnv.usr.share.man]man3.dir
|
||||
[gnv.usr.share.man.man3]
|
||||
[gnv.usr.bin]curl-config.
|
||||
[gnv.usr.bin]gnv$curl.exe
|
||||
[gnv.usr.include.curl]curl.h
|
||||
[gnv.usr.include.curl]system.h
|
||||
[gnv.usr.include.curl]curlver.h
|
||||
[gnv.usr.include.curl]easy.h
|
||||
[gnv.usr.include.curl]mprintf.h
|
||||
[gnv.usr.include.curl]multi.h
|
||||
[gnv.usr.include.curl]stdcheaders.h
|
||||
[gnv.usr.include.curl]typecheck-gcc.h
|
||||
[gnv.usr.lib]gnv$libcurl.exe
|
||||
[gnv.usr.lib]gnv$curlmsg.exe
|
||||
[gnv.usr.lib.pkgconfig]libcurl.pc
|
||||
[gnv.usr.share.man.man1]curl-config.1
|
||||
[gnv.usr.share.man.man1]curl.1
|
||||
[gnv.usr.share.man.man3]curl_easy_cleanup.3
|
||||
[gnv.usr.share.man.man3]curl_easy_duphandle.3
|
||||
[gnv.usr.share.man.man3]curl_easy_escape.3
|
||||
[gnv.usr.share.man.man3]curl_easy_getinfo.3
|
||||
[gnv.usr.share.man.man3]curl_easy_init.3
|
||||
[gnv.usr.share.man.man3]curl_easy_pause.3
|
||||
[gnv.usr.share.man.man3]curl_easy_perform.3
|
||||
[gnv.usr.share.man.man3]curl_easy_recv.3
|
||||
[gnv.usr.share.man.man3]curl_easy_reset.3
|
||||
[gnv.usr.share.man.man3]curl_easy_send.3
|
||||
[gnv.usr.share.man.man3]curl_easy_setopt.3
|
||||
[gnv.usr.share.man.man3]curl_easy_strerror.3
|
||||
[gnv.usr.share.man.man3]curl_easy_unescape.3
|
||||
[gnv.usr.share.man.man3]curl_escape.3
|
||||
[gnv.usr.share.man.man3]curl_formadd.3
|
||||
[gnv.usr.share.man.man3]curl_formfree.3
|
||||
[gnv.usr.share.man.man3]curl_formget.3
|
||||
[gnv.usr.share.man.man3]curl_free.3
|
||||
[gnv.usr.share.man.man3]curl_getdate.3
|
||||
[gnv.usr.share.man.man3]curl_getenv.3
|
||||
[gnv.usr.share.man.man3]curl_global_cleanup.3
|
||||
[gnv.usr.share.man.man3]curl_global_init.3
|
||||
[gnv.usr.share.man.man3]curl_global_init_mem.3
|
||||
[gnv.usr.share.man.man3]curl_mprintf.3
|
||||
[gnv.usr.share.man.man3]curl_multi_add_handle.3
|
||||
[gnv.usr.share.man.man3]curl_multi_assign.3
|
||||
[gnv.usr.share.man.man3]curl_multi_cleanup.3
|
||||
[gnv.usr.share.man.man3]curl_multi_fdset.3
|
||||
[gnv.usr.share.man.man3]curl_multi_info_read.3
|
||||
[gnv.usr.share.man.man3]curl_multi_init.3
|
||||
[gnv.usr.share.man.man3]curl_multi_perform.3
|
||||
[gnv.usr.share.man.man3]curl_multi_remove_handle.3
|
||||
[gnv.usr.share.man.man3]curl_multi_setopt.3
|
||||
[gnv.usr.share.man.man3]curl_multi_socket.3
|
||||
[gnv.usr.share.man.man3]curl_multi_socket_action.3
|
||||
[gnv.usr.share.man.man3]curl_multi_strerror.3
|
||||
[gnv.usr.share.man.man3]curl_multi_timeout.3
|
||||
[gnv.usr.share.man.man3]curl_multi_wait.3
|
||||
[gnv.usr.share.man.man3]curl_share_cleanup.3
|
||||
[gnv.usr.share.man.man3]curl_share_init.3
|
||||
[gnv.usr.share.man.man3]curl_share_setopt.3
|
||||
[gnv.usr.share.man.man3]curl_share_strerror.3
|
||||
[gnv.usr.share.man.man3]curl_slist_append.3
|
||||
[gnv.usr.share.man.man3]curl_slist_free_all.3
|
||||
[gnv.usr.share.man.man3]curl_strequal.3
|
||||
[gnv.usr.share.man.man3]curl_unescape.3
|
||||
[gnv.usr.share.man.man3]curl_version.3
|
||||
[gnv.usr.share.man.man3]curl_version_info.3
|
||||
[gnv.usr.share.man.man3]libcurl-easy.3
|
||||
[gnv.usr.share.man.man3]libcurl-errors.3
|
||||
[gnv.usr.share.man.man3]libcurl-multi.3
|
||||
[gnv.usr.share.man.man3]libcurl-share.3
|
||||
[gnv.usr.share.man.man3]libcurl-tutorial.3
|
||||
[gnv.usr.share.man.man3]libcurl.3
|
197
third_party/curl/packages/vms/pcsi_product_gnv_curl.com
vendored
Normal file
197
third_party/curl/packages/vms/pcsi_product_gnv_curl.com
vendored
Normal file
@ -0,0 +1,197 @@
|
||||
$! File: PCSI_PRODUCT_GNV_CURL.COM
|
||||
$!
|
||||
$! This command file packages up the product CURL into a sequential
|
||||
$! format kit
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!=========================================================================
|
||||
$!
|
||||
$! Save default
|
||||
$ default_dir = f$environment("DEFAULT")
|
||||
$!
|
||||
$! Put things back on error.
|
||||
$ on warning then goto all_exit
|
||||
$!
|
||||
$!
|
||||
$ can_build = 1
|
||||
$ producer = f$trnlnm("GNV_PCSI_PRODUCER")
|
||||
$ if producer .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "GNV_PCSI_PRODUCER logical name has not been set."
|
||||
$ can_build = 0
|
||||
$ endif
|
||||
$ producer_full_name = f$trnlnm("GNV_PCSI_PRODUCER_FULL_NAME")
|
||||
$ if producer_full_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output -
|
||||
"GNV_PCSI_PRODUCER_FULL_NAME logical name has not been set."
|
||||
$ can_build = 0
|
||||
$ endif
|
||||
$ stage_root_name = f$trnlnm("STAGE_ROOT")
|
||||
$ if stage_root_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "STAGE_ROOT logical name has not been set."
|
||||
$ can_build = 0
|
||||
$ endif
|
||||
$!
|
||||
$ if (can_build .eq. 0)
|
||||
$ then
|
||||
$ write sys$output "Not able to build a kit."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$!
|
||||
$! Make sure that the kit name is up to date for this build
|
||||
$!----------------------------------------------------------
|
||||
$ @MAKE_PCSI_CURL_KIT_NAME.COM
|
||||
$!
|
||||
$!
|
||||
$! Make sure that the image is built
|
||||
$!----------------------------------
|
||||
$ arch_name = f$edit(f$getsyi("arch_name"),"UPCASE")
|
||||
$ if f$search("[--.src]curl.exe") .eqs. ""
|
||||
$ then
|
||||
$ build_it = 1
|
||||
$ libfile = "[.packages.vms.''arch_name']curllib.olb"
|
||||
$ if f$search(libfile) .nes. ""
|
||||
$ then
|
||||
$ build_it = 0
|
||||
$ else
|
||||
$ ! GNV based build
|
||||
$ libfile = "[.lib.^.libs]libcurl.a"
|
||||
$ if f$search(libfile) .nes. ""
|
||||
$ then
|
||||
$ build_it = 0;
|
||||
$ endif
|
||||
$ endif
|
||||
$ if build_it .eq. 1
|
||||
$ then
|
||||
$ @build_vms list
|
||||
$ endif
|
||||
$ @gnv_link_curl.com
|
||||
$ endif
|
||||
$!
|
||||
$! Make sure that the release note file name is up to date
|
||||
$!---------------------------------------------------------
|
||||
$ @BUILD_GNV_CURL_RELEASE_NOTES.COM
|
||||
$!
|
||||
$!
|
||||
$! Make sure that the source has been backed up.
|
||||
$!----------------------------------------------
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ arch_code = f$extract(0, 1, arch_type)
|
||||
$ @backup_gnv_curl_src.com
|
||||
$!
|
||||
$! Regenerate the PCSI description file.
|
||||
$!--------------------------------------
|
||||
$ @BUILD_GNV_CURL_PCSI_DESC.COM
|
||||
$!
|
||||
$! Regenerate the PCSI Text file.
|
||||
$!---------------------------------
|
||||
$ @BUILD_GNV_CURL_PCSI_TEXT.COM
|
||||
$!
|
||||
$!
|
||||
$! Parse the kit name into components.
|
||||
$!---------------------------------------
|
||||
$ kit_name = f$trnlnm("GNV_PCSI_KITNAME")
|
||||
$ if kit_name .eqs. ""
|
||||
$ then
|
||||
$ write sys$output "@MAKE_PCSI_CURL_KIT_NAME.COM has not been run."
|
||||
$ goto all_exit
|
||||
$ endif
|
||||
$ producer = f$element(0, "-", kit_name)
|
||||
$ base = f$element(1, "-", kit_name)
|
||||
$ product_name = f$element(2, "-", kit_name)
|
||||
$ mmversion = f$element(3, "-", kit_name)
|
||||
$ majorver = f$extract(0, 3, mmversion)
|
||||
$ minorver = f$extract(3, 2, mmversion)
|
||||
$ updatepatch = f$element(4, "-", kit_name)
|
||||
$ if updatepatch .eqs. "" then updatepatch = ""
|
||||
$!
|
||||
$ version_fao = "!AS.!AS"
|
||||
$ mmversion = f$fao(version_fao, "''majorver'", "''minorver'")
|
||||
$ if updatepatch .nes. ""
|
||||
$ then
|
||||
$ version = "''mmversion'" + "-" + updatepatch
|
||||
$ else
|
||||
$ version = "''mmversion'"
|
||||
$ endif
|
||||
$!
|
||||
$ @stage_curl_install remove
|
||||
$ @stage_curl_install
|
||||
$!
|
||||
$! Move to the base directories
|
||||
$ set def [--]
|
||||
$ current_default = f$environment("DEFAULT")
|
||||
$ my_dir = f$parse(current_default,,,"DIRECTORY") - "[" - "<" - ">" - "]"
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$ source = "''default_dir'"
|
||||
$ src1 = "new_gnu:[usr.bin],"
|
||||
$ src2 = "new_gnu:[usr.include.curl],"
|
||||
$ src3 = "new_gnu:[usr.lib],"
|
||||
$ src4 = "new_gnu:[usr.lib.pkgconfig],"
|
||||
$ src5 = "new_gnu:[usr.share.man.man1],"
|
||||
$ src6 = "new_gnu:[usr.share.man.man3],"
|
||||
$ src7 = "new_gnu:[vms_src],"
|
||||
$ src8 = "new_gnu:[common_src],"
|
||||
$ src9 = "prj_root:[''my_dir'],prj_root:[''my_dir'.src]"
|
||||
$ gnu_src = src1 + src2 + src3 + src4 + src5 + src6 + src7 + src8 + src9
|
||||
$!
|
||||
$!
|
||||
$ base = ""
|
||||
$ if arch_name .eqs. "ALPHA" then base = "AXPVMS"
|
||||
$ if arch_name .eqs. "IA64" then base = "I64VMS"
|
||||
$ if arch_name .eqs. "VAX" then base = "VAXVMS"
|
||||
$!
|
||||
$ if base .eqs. "" then exit 44
|
||||
$!
|
||||
$ pcsi_option = "/option=noconfirm"
|
||||
$ if arch_code .eqs. "V"
|
||||
$ then
|
||||
$ pcsi_option = ""
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$product package 'product_name' -
|
||||
/base='base' -
|
||||
/producer='producer' -
|
||||
/source='source' -
|
||||
/destination=STAGE_ROOT:[KIT] -
|
||||
/material=('gnu_src','source') -
|
||||
/format=sequential 'pcsi_option'
|
||||
$!
|
||||
$!
|
||||
$! VAX can not do a compressed kit.
|
||||
$! ZIP -9 "-V" does a better job, so no reason to normally build a compressed
|
||||
$! kit.
|
||||
$!----------------------------------
|
||||
$if p1 .eqs. "COMPRESSED"
|
||||
$then
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ product copy /options=(novalidate, noconfirm) /format=compressed -
|
||||
'product_name' -
|
||||
/source=stage_root:[kit]/dest=stage_root:[kit] -
|
||||
/version='version'/base='base'
|
||||
$ endif
|
||||
$endif
|
||||
$!
|
||||
$all_exit:
|
||||
$ set def 'default_dir'
|
||||
$ exit
|
228
third_party/curl/packages/vms/readme
vendored
Normal file
228
third_party/curl/packages/vms/readme
vendored
Normal file
@ -0,0 +1,228 @@
|
||||
_ _ ____ _
|
||||
___| | | | _ \| |
|
||||
/ __| | | | |_) | |
|
||||
( (__| |_| | _ <| |___
|
||||
\___|\___/|_| \_\_____|
|
||||
for OpenVMS
|
||||
|
||||
History:
|
||||
|
||||
9-MAR-2004, Created this readme. file. Marty Kuhrt (MSK).
|
||||
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:
|
||||
|
||||
OpenVMS V7.0 or later (any platform)
|
||||
DECC V6.5 or later
|
||||
OpenSSL or hp SSL, if you want SSL support
|
||||
|
||||
What is Here:
|
||||
|
||||
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.
|
||||
|
||||
curlmsg.h C header defining curl status code macros.
|
||||
|
||||
curlmsg.msg Error message source for curlmsg.h and curlmsg.sdl.
|
||||
|
||||
curlmsg.sdl SDL source defining curl status code constants.
|
||||
|
||||
curlmsg_vms.h Mapping of curl status codes to VMS-form codes.
|
||||
|
||||
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.in curl kit makefile source for this directory.
|
||||
|
||||
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.
|
||||
|
||||
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:
|
||||
|
||||
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 building using
|
||||
the GNV tool kit, building a shared libcurl, and producing 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:
|
||||
|
||||
@ [.packages.vms]build_vms.com CLEAN
|
||||
@ [.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 instructions in the file
|
||||
curl_gnv_build_steps.txt.
|
||||
|
||||
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 format.
|
||||
|
||||
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 property.
|
||||
|
||||
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.
|
100
third_party/curl/packages/vms/report_openssl_version.c
vendored
Normal file
100
third_party/curl/packages/vms/report_openssl_version.c
vendored
Normal file
@ -0,0 +1,100 @@
|
||||
/* File: report_openssl_version.c
|
||||
*
|
||||
* This file dynamically loads the openssl shared image to report the
|
||||
* version string.
|
||||
*
|
||||
* It will optionally place that version string in a DCL symbol.
|
||||
*
|
||||
* Usage: report_openssl_version <shared_image> [<dcl_symbol>]
|
||||
*
|
||||
* Copyright (C) John Malmberg
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* SPDX-License-Identifier: ISC
|
||||
*
|
||||
*/
|
||||
|
||||
#include <dlfcn.h>
|
||||
#include <openssl/opensslv.h>
|
||||
#include <openssl/crypto.h>
|
||||
|
||||
#include <string.h>
|
||||
#include <descrip.h>
|
||||
#include <libclidef.h>
|
||||
#include <stsdef.h>
|
||||
#include <errno.h>
|
||||
|
||||
unsigned long LIB$SET_SYMBOL(
|
||||
const struct dsc$descriptor_s * symbol,
|
||||
const struct dsc$descriptor_s * value,
|
||||
const unsigned long * table_type);
|
||||
|
||||
int main(int argc, char ** argv) {
|
||||
|
||||
|
||||
void * libptr;
|
||||
const char * (*ssl_version)(int t);
|
||||
const char * version;
|
||||
|
||||
if(argc < 1) {
|
||||
puts("report_openssl_version filename");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
libptr = dlopen(argv[1], 0);
|
||||
|
||||
ssl_version = (const char * (*)(int))dlsym(libptr, "SSLeay_version");
|
||||
if(ssl_version == NULL) {
|
||||
ssl_version = (const char * (*)(int))dlsym(libptr, "ssleay_version");
|
||||
if(ssl_version == NULL) {
|
||||
ssl_version = (const char * (*)(int))dlsym(libptr, "SSLEAY_VERSION");
|
||||
}
|
||||
}
|
||||
|
||||
dlclose(libptr);
|
||||
|
||||
if(ssl_version == NULL) {
|
||||
puts("Unable to lookup version of OpenSSL");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
version = ssl_version(SSLEAY_VERSION);
|
||||
|
||||
puts(version);
|
||||
|
||||
/* Was a symbol argument given? */
|
||||
if(argc > 1) {
|
||||
int status;
|
||||
struct dsc$descriptor_s symbol_dsc;
|
||||
struct dsc$descriptor_s value_dsc;
|
||||
const unsigned long table_type = LIB$K_CLI_LOCAL_SYM;
|
||||
|
||||
symbol_dsc.dsc$a_pointer = argv[2];
|
||||
symbol_dsc.dsc$w_length = strlen(argv[2]);
|
||||
symbol_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
|
||||
symbol_dsc.dsc$b_class = DSC$K_CLASS_S;
|
||||
|
||||
value_dsc.dsc$a_pointer = (char *)version; /* Cast ok */
|
||||
value_dsc.dsc$w_length = strlen(version);
|
||||
value_dsc.dsc$b_dtype = DSC$K_DTYPE_T;
|
||||
value_dsc.dsc$b_class = DSC$K_CLASS_S;
|
||||
|
||||
status = LIB$SET_SYMBOL(&symbol_dsc, &value_dsc, &table_type);
|
||||
if(!$VMS_STATUS_SUCCESS(status)) {
|
||||
exit(status);
|
||||
}
|
||||
}
|
||||
|
||||
exit(0);
|
||||
}
|
286
third_party/curl/packages/vms/setup_gnv_curl_build.com
vendored
Normal file
286
third_party/curl/packages/vms/setup_gnv_curl_build.com
vendored
Normal file
@ -0,0 +1,286 @@
|
||||
$! File: setup_gnv_curl_build.com
|
||||
$!
|
||||
$! Set up build environment for building Curl under GNV on VMS.
|
||||
$!
|
||||
$! GNV needs some files moved into the other directories to help with
|
||||
$! the configure script and the build.
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!=======================================================================
|
||||
$!
|
||||
$! Save this so we can get back.
|
||||
$ default_dir = f$environment("default")
|
||||
$!
|
||||
$! Move to where the Configure script is.
|
||||
$ set def [--]
|
||||
$!
|
||||
$! Get the path to where the Configure script is.
|
||||
$ base_dir = f$environment("default")
|
||||
$!
|
||||
$! Allow arguments to be grouped together with comma or separated by spaces
|
||||
$! Do no know if we will need more than 8.
|
||||
$ args = "," + p1 + "," + p2 + "," + p3 + "," + p4 + ","
|
||||
$ args = args + p5 + "," + p6 + "," + p7 + "," + p8 + ","
|
||||
$!
|
||||
$! Provide lower case version to simplify parsing.
|
||||
$ args_lower = f$edit(args, "LOWERCASE,COLLAPSE")
|
||||
$!
|
||||
$ args_len = f$length(args)
|
||||
$ args_lower_len = f$length(args_lower)
|
||||
$!
|
||||
$ tests = 0
|
||||
$ if f$locate(",test", args_lower) .lt. args_lower_len
|
||||
$ then
|
||||
$ tests = 1
|
||||
$ endif
|
||||
$!
|
||||
$ examples = 0
|
||||
$ if f$locate(",exam", args_lower) .lt. args_lower_len
|
||||
$ then
|
||||
$ examples = 1
|
||||
$ endif
|
||||
$!
|
||||
$! We want detailed build logs.
|
||||
$ clist = "/list/show=(expan,includ)"
|
||||
$!
|
||||
$! We want full symbol names in exact case. Need a common
|
||||
$! repository for all directories.
|
||||
$ cnames = "/names=(shortened,as_is)/repository=''base_dir'"
|
||||
$!
|
||||
$! Set the compiler options for GNV CC wrapper to inherit.
|
||||
$ cc :== cc'clist''cnames'/nested_include_directory=none
|
||||
$ cxx :== cxx'clist''cnames'/nested_include_directory=none
|
||||
$ pointer_size = "32"
|
||||
$! Note 64 bit pointers requires all libraries to either have
|
||||
$! 64 bit pointers or have #pragma directives.
|
||||
$! Currently building curl on VMS with 64 bit pointers does not work.
|
||||
$!
|
||||
$! A logical name to make it easier to find some of the hacks.
|
||||
$ define/job gnv_hacks 'base_dir'
|
||||
$!
|
||||
$! A logical name to find the [.packages.vms] directory where we started.
|
||||
$ define/job gnv_packages_vms 'default_dir'
|
||||
$!
|
||||
$! Kerberos headers:
|
||||
$ if f$trnlnm("gssapi") .eqs. ""
|
||||
$ then
|
||||
$ if f$search("sys$sysroot:[kerberos]include.dir") .nes. ""
|
||||
$ then
|
||||
$ define/job gssapi sys$sysroot:[kerberos.include]
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! OpenSSL headers
|
||||
$ if f$trnlnm("openssl") .eqs. ""
|
||||
$ then
|
||||
$ if f$trnlnm("ssl$include") .nes. ""
|
||||
$ then
|
||||
$ define/job openssl ssl$include:
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! C compiler include path.
|
||||
$ define/job decc$system_include prj_root:[.include.curl],-
|
||||
[-.packages.vms],-
|
||||
ssl$include:,gnv$gnu:[usr.include],-
|
||||
gnv$gnu:[usr.include.libz],gnv$gnu:[include],-
|
||||
gnv$zlib_include:,-
|
||||
sys$sysroot:[kerberos.include]
|
||||
$!
|
||||
$! Set up an include list for the compiler to find all the header files
|
||||
$! that they need.
|
||||
$!
|
||||
$ define/job decc$user_include src_root:[.include.curl]
|
||||
$ define ssl_lib sys$library:
|
||||
$!
|
||||
$! Calculate what is needed in the option files
|
||||
$ libzshr_line = ""
|
||||
$ try_shr = "gnv$libzshr''pointer_size'"
|
||||
$ if f$search(try_shr) .nes. "" then libzshr_line = "''try_shr'/share"
|
||||
$ if (libzshr_line .eqs. "")
|
||||
$ then
|
||||
$ try_shr = "sys$share:" + try_shr
|
||||
$ if f$search("''try_shr'.exe") .nes. ""
|
||||
$ then
|
||||
$ libzshr_line = "''try_shr'/share"
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$! Kerberos
|
||||
$ gssrtlshr_line = ""
|
||||
$ try_shr = "sys$share:gss$rtl"
|
||||
$ if f$search("''try_shr'.exe") .nes. ""
|
||||
$ then
|
||||
$ gssrtlshr_line = "''try_shr'/share"
|
||||
$ endif
|
||||
$!
|
||||
$! HP OpenSSL
|
||||
$ libcryptoshr_line = ""
|
||||
$ try_shr = "sys$share:ssl$libcrypto_shr''pointer_size'"
|
||||
$ if f$search("''try_shr'.exe") .nes. ""
|
||||
$ then
|
||||
$ libcryptoshr_line = "''try_shr'/share"
|
||||
$ endif
|
||||
$!
|
||||
$ libsslshr_line = ""
|
||||
$ try_shr = "sys$share:ssl$libssl_shr''pointer_size'"
|
||||
$ if f$search("''try_shr'.exe") .nes. ""
|
||||
$ then
|
||||
$ libsslshr_line = "''try_shr'/share"
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Copy over the gnv$conftest* files to base directory.
|
||||
$!-----------------------------------------------------
|
||||
$ copy 'default_dir'gnv_conftest.c_first 'base_dir'gnv$conftest.c_first
|
||||
$ create 'base_dir'gnv$conftest.opt
|
||||
$ open/append opt 'base_dir'gnv$conftest.opt
|
||||
$ if libzshr_line .nes. "" then write opt libzshr_line
|
||||
$ if libcryptoshr_line .nes. "" then write opt libcryptoshr_line
|
||||
$ if libsslshr_line .nes. "" then write opt libsslshr_line
|
||||
$ close opt
|
||||
$ purge 'base_dir'gnv$conftest.*
|
||||
$ rename 'base_dir'gnv$conftest.* ;1
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! GNV helper files for building the test curl binary.
|
||||
$!-----------------------------------------------
|
||||
$ create [.src]gnv$curl.opt
|
||||
$ open/append opt [.src]gnv$curl.opt
|
||||
$ write opt "gnv_packages_vms:curlmsg.obj"
|
||||
$ if libzshr_line .nes. "" then write opt libzshr_line
|
||||
$ if gssrtlshr_line .nes. "" then write opt gssrtlshr_line
|
||||
$ if libcryptoshr_line .nes. "" then write opt libcryptoshr_line
|
||||
$ if libsslshr_line .nes. "" then write opt libsslshr_line
|
||||
$ close opt
|
||||
$ purge [.src]gnv$*.*
|
||||
$ rename [.src]gnv$*.* ;1
|
||||
$!
|
||||
$!
|
||||
$! Create the libcurl
|
||||
$!------------------------------------------------------
|
||||
$ create 'default_dir'gnv_libcurl_linker.opt
|
||||
$ open/append opt 'default_dir'gnv_libcurl_linker.opt
|
||||
$ if libzshr_line .nes. "" then write opt libzshr_line
|
||||
$ if gssrtlshr_line .nes. "" then write opt gssrtlshr_line
|
||||
$ if libcryptoshr_line .nes. "" then write opt libcryptoshr_line
|
||||
$ if libsslshr_line .nes. "" then write opt libsslshr_line
|
||||
$ close opt
|
||||
$!
|
||||
$!
|
||||
$! Create the template linker file
|
||||
$!---------------------------------
|
||||
$ create 'default_dir'gnv_template_linker.opt
|
||||
$ open/append opt 'default_dir'gnv_template_linker.opt
|
||||
$ write opt "gnv_vms_common:vms_curl_init_unix.obj"
|
||||
$ if libzshr_line .nes. "" then write opt libzshr_line
|
||||
$ if gssrtlshr_line .nes. "" then write opt gssrtlshr_line
|
||||
$ if libcryptoshr_line .nes. "" then write opt libcryptoshr_line
|
||||
$ if libsslshr_line .nes. "" then write opt libsslshr_line
|
||||
$ close opt
|
||||
$!
|
||||
$! Copy over the gnv$*.opt files for [.docs.examples]
|
||||
$!----------------------------------------------------
|
||||
$ if examples .ne. 0
|
||||
$ then
|
||||
$ example_apps = "10-at-a-time,anyauthput,certinfo,cookie_interface,debug"
|
||||
$ example_apps = example_apps + ",fileupload,fopen,ftpget,ftpgetresp"
|
||||
$ example_apps = example_apps + ",ftpupload,getinfo,getinmemory"
|
||||
$ example_apps = example_apps + ",http-post,httpcustomheader,httpput"
|
||||
$ example_apps = example_apps + ",https,multi-app,multi-debugcallback"
|
||||
$ example_apps = example_apps + ",multi-double,multi-post,multi-single"
|
||||
$ example_apps = example_apps + ",persistent,post-callback,postit2"
|
||||
$ example_apps = example_apps + ",sendrecv,sepheaders,simple,simplepost"
|
||||
$ example_apps = example_apps + ",simplessl"
|
||||
$!
|
||||
$ i = 0
|
||||
$example_loop:
|
||||
$ ap_name = f$element(i, ",", example_apps)
|
||||
$ if ap_name .eqs. "," then goto example_loop_end
|
||||
$ if ap_name .eqs. "" then goto example_loop_end
|
||||
$ copy 'default_dir'gnv_template_linker.opt -
|
||||
[.docs.examples]gnv$'ap_name'.opt
|
||||
$ i = i + 1
|
||||
$ goto example_loop
|
||||
$example_loop_end:
|
||||
$!
|
||||
$! clean up the copy.
|
||||
$ purge [.docs.examples]gnv$*.opt
|
||||
$ rename [.docs.examples]gnv$*.opt ;1
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if tests .ne. 0
|
||||
$ then
|
||||
$ libtest_apps = "lib500,lib501,lib502,lib503,lib504,lib505,lib506,lib507"
|
||||
$ libtest_apps = libtest_apps + ",lib508,lib510,lib511,lib512,lib513,lib514"
|
||||
$ libtest_apps = libtest_apps + ",lib515,lib516,lib517,lib518,lib519,lib520"
|
||||
$ libtest_apps = libtest_apps + ",lib521,lib523,lib524,lib525,lib526,lib527"
|
||||
$ libtest_apps = libtest_apps + ",lib529,lib530,lib532,lib533,lib536,lib537"
|
||||
$ libtest_apps = libtest_apps + ",lib539,lib540,lib541,lib542,lib543,lib544"
|
||||
$ libtest_apps = libtest_apps + ",lib545,lib547,lib548,lib549,lib552,lib553"
|
||||
$ libtest_apps = libtest_apps + ",lib554,lib555,lib556,lib557,lib558,lib559"
|
||||
$ libtest_apps = libtest_apps + ",lib560,lib562,lib564"
|
||||
$ i = 0
|
||||
$libtest_loop:
|
||||
$ ap_name = f$element(i, ",", libtest_apps)
|
||||
$ if ap_name .eqs. "," then goto libtest_loop_end
|
||||
$ if ap_name .eqs. "" then goto libtest_loop_end
|
||||
$ copy 'default_dir'gnv_template_linker.opt -
|
||||
[.tests.libtest]gnv$'ap_name'.opt
|
||||
$ i = i + 1
|
||||
$ goto libtest_loop
|
||||
$libtest_loop_end:
|
||||
$!
|
||||
$! clean up the copy.
|
||||
$ purge [.tests.libtest]gnv$*.opt
|
||||
$ rename [.tests.libtest]gnv$*.opt ;1
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Build the Message file.
|
||||
$!--------------------------
|
||||
$ if f$search("[.packages.vms]curlmsg.obj") .eqs. ""
|
||||
$ then
|
||||
$ message [.packages.vms]curlmsg.msg/object=[.packages.vms]
|
||||
$ endif
|
||||
$ if f$search("gnv$curlmsg.exe") .eqs. ""
|
||||
$ then
|
||||
$ link/share=gnv$curlmsg.exe [.packages.vms]curlmsg.obj
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$!
|
||||
$! Need to build the common init module.
|
||||
$!-------------------------------------------
|
||||
$ init_obj = "[.packages.vms]curl_crtl_init.obj"
|
||||
$ if f$search(init_obj) .eqs. ""
|
||||
$ then
|
||||
$ cc'cflags' 'default_dir'curl_crtl_init.c/obj='init_obj'
|
||||
$ purge 'init_obj'
|
||||
$ rename 'init_obj' ;1
|
||||
$ endif
|
||||
$!
|
||||
$all_exit:
|
||||
$!
|
||||
$ set def 'default_dir'
|
||||
$!
|
||||
$! Verify can break things in bash, especially in Configure scripts.
|
||||
$ set nover
|
||||
$ exit
|
170
third_party/curl/packages/vms/stage_curl_install.com
vendored
Normal file
170
third_party/curl/packages/vms/stage_curl_install.com
vendored
Normal file
@ -0,0 +1,170 @@
|
||||
$! File: stage_curl_install.com
|
||||
$!
|
||||
$! This updates or removes the GNV$CURL.EXE and related files for the
|
||||
$! new_gnu:[*...] directory tree for running the self tests.
|
||||
$!
|
||||
$! The files installed/removed are:
|
||||
$! [usr.bin]gnv$curl.exe
|
||||
$! [usr.bin]curl-config.
|
||||
$! [usr.lib]gnv$libcurl.exe
|
||||
$! [usr.bin]curl. hard link for [usr.bin]gnv$curl.exe
|
||||
$! [usr.include.curl]curl.h
|
||||
$! [usr.include.curl]curlver.h
|
||||
$! [usr.include.curl]easy.h
|
||||
$! [usr.include.curl]mprintf.h
|
||||
$! [usr.include.curl]multi.h
|
||||
$! [usr.include.curl]stdcheaders.h
|
||||
$! [usr.include.curl]typecheck-gcc.h
|
||||
$! [usr.lib.pkgconfig]libcurl.pc
|
||||
$! [usr.share.man.man1]curl-config.1
|
||||
$! [usr.share.man.man1]curl.1
|
||||
$! [usr.share.man.man3]curl*.3
|
||||
$! [usr.share.man.man3]libcurl*.3
|
||||
$! Future: A symbolic link to the release notes?
|
||||
$!
|
||||
$! Copyright (C) John Malmberg
|
||||
$!
|
||||
$! Permission to use, copy, modify, and/or distribute this software for any
|
||||
$! purpose with or without fee is hereby granted, provided that the above
|
||||
$! copyright notice and this permission notice appear in all copies.
|
||||
$!
|
||||
$! THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
$! WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
$! MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
$! ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
$! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
$! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
$! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
$!
|
||||
$! SPDX-License-Identifier: ISC
|
||||
$!
|
||||
$!===========================================================================
|
||||
$!
|
||||
$ arch_type = f$getsyi("ARCH_NAME")
|
||||
$ arch_code = f$extract(0, 1, arch_type)
|
||||
$!
|
||||
$ if arch_code .nes. "V"
|
||||
$ then
|
||||
$ set proc/parse=extended
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! If the first parameter begins with "r" or "R" then this is to
|
||||
$! remove the files instead of installing them.
|
||||
$ remove_filesq = f$edit(p1, "upcase,trim")
|
||||
$ remove_filesq = f$extract(0, 1, remove_filesq)
|
||||
$ remove_files = 0
|
||||
$ if remove_filesq .eqs. "R" then remove_files = 1
|
||||
$!
|
||||
$!
|
||||
$! If we are staging files, make sure that the libcurl.pc and curl-config
|
||||
$! files are present.
|
||||
$ if remove_files .eq. 0
|
||||
$ then
|
||||
$ if f$search("[--]libcurl.pc") .eqs. ""
|
||||
$ then
|
||||
$ @build_libcurl_pc.com
|
||||
$ endif
|
||||
$ if f$search("[--]curl-config") .eqs. ""
|
||||
$ then
|
||||
$ @build_curl-config_script.com
|
||||
$ endif
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$! Dest dirs
|
||||
$!------------------
|
||||
$ dest_dirs1 = "[usr],[usr.bin],[usr.include],[usr.include.curl]"
|
||||
$ dest_dirs2 = ",[usr.bin],[usr.lib.pkgconfig],[usr.share]"
|
||||
$ dest_dirs3 = ",[usr.share.man],[usr.share.man.man1],[usr.share.man.man3]"
|
||||
$ dest_dirs = dest_dirs1 + dest_dirs2 + dest_dirs3
|
||||
$!
|
||||
$!
|
||||
$! Alias links needed.
|
||||
$!-------------------------
|
||||
$ source_curl = "gnv$curl.exe"
|
||||
$ dest_curl = "[bin]gnv$curl.exe"
|
||||
$ curl_links = "[bin]curl."
|
||||
$ new_gnu = "new_gnu:"
|
||||
$!
|
||||
$!
|
||||
$! Create the directories if they do not exist
|
||||
$!---------------------------------------------
|
||||
$ i = 0
|
||||
$curl_dir_loop:
|
||||
$ this_dir = f$element(i, ",", dest_dirs)
|
||||
$ i = i + 1
|
||||
$ if this_dir .eqs. "" then goto curl_dir_loop
|
||||
$ if this_dir .eqs. "," then goto curl_dir_loop_end
|
||||
$! Just create the directories, do not delete them.
|
||||
$! --------------------------------------------------
|
||||
$ if remove_files .eq. 0
|
||||
$ then
|
||||
$ create/dir 'new_gnu''this_dir'/prot=(o:rwed)
|
||||
$ endif
|
||||
$ goto curl_dir_loop
|
||||
$curl_dir_loop_end:
|
||||
$!
|
||||
$!
|
||||
$! Need to add in the executable file
|
||||
$!-----------------------------------
|
||||
$ if remove_files .eq. 0
|
||||
$ then
|
||||
$ copy [--.src]curl.exe 'new_gnu'[usr.bin]gnv$curl.exe/prot=w:re
|
||||
$ copy [--]curl-config. 'new_gnu'[usr.bin]curl-config./prot=w:re
|
||||
$ copy sys$disk:[]gnv$libcurl.exe 'new_gnu'[usr.lib]gnv$libcurl.exe/prot=w:re
|
||||
$ endif
|
||||
$!
|
||||
$ if remove_files .eq. 0
|
||||
$ then
|
||||
$ set file/enter='new_gnu'[bin]curl. 'new_gnu'[usr.bin]gnv$curl.exe
|
||||
$ else
|
||||
$ file = "''new_gnu'[bin]curl."
|
||||
$ if f$search(file) .nes. "" then set file/remove 'file';*
|
||||
$ endif
|
||||
$!
|
||||
$!
|
||||
$ if remove_files .eq. 0
|
||||
$ then
|
||||
$ copy [--.include.curl]curl.h 'new_gnu'[usr.include.curl]curl.h
|
||||
$ copy [--.include.curl]system.h -
|
||||
'new_gnu'[usr.include.curl]system.h
|
||||
$ copy [--.include.curl]curlver.h -
|
||||
'new_gnu'[usr.include.curl]curlver.h
|
||||
$ copy [--.include.curl]easy.h -
|
||||
'new_gnu'[usr.include.curl]easy.h
|
||||
$ copy [--.include.curl]mprintf.h -
|
||||
'new_gnu'[usr.include.curl]mprintf.h
|
||||
$ copy [--.include.curl]multi.h -
|
||||
'new_gnu'[usr.include.curl]multi.h
|
||||
$ copy [--.include.curl]stdcheaders.h -
|
||||
'new_gnu'[usr.include.curl]stdcheaders.h
|
||||
$ copy [--.include.curl]typecheck-gcc.h -
|
||||
'new_gnu'[usr.include.curl]typecheck-gcc.h
|
||||
$ copy [--]libcurl.pc 'new_gnu'[usr.lib.pkgconfig]libcurl.pc
|
||||
$!
|
||||
$ copy [--.docs]curl-config.1 'new_gnu'[usr.share.man.man1]curl-config.1
|
||||
$ copy [--.docs]curl.1 'new_gnu'[usr.share.man.man1]curl.1
|
||||
$!
|
||||
$ copy [--.docs.libcurl]*.3 -
|
||||
'new_gnu'[usr.share.man.man3]*.3
|
||||
$!
|
||||
$ else
|
||||
$ file = "''new_gnu'[usr.bin]curl-config."
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.bin]gnv$curl.exe"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.lib]gnv$libcurl.exe"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.include.curl]*.h"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.share.man.man1]curl-config.1"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.share.man.man1]curl.1"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.share.man.man3]curl*.3"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ file = "''new_gnu'[usr.share.man.man3]libcurl*.3"
|
||||
$ if f$search(file) .nes. "" then delete 'file';*
|
||||
$ endif
|
||||
$!
|
30
third_party/curl/packages/vms/vms_eco_level.h
vendored
Normal file
30
third_party/curl/packages/vms/vms_eco_level.h
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
/* File: vms_eco_level.h
|
||||
*
|
||||
* Copyright (C) John Malmberg
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for any
|
||||
* purpose with or without fee is hereby granted, provided that the above
|
||||
* copyright notice and this permission notice appear in all copies.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
|
||||
* WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
|
||||
* ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
|
||||
* ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT
|
||||
* OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* SPDX-License-Identifier: ISC
|
||||
*
|
||||
*/
|
||||
|
||||
/* This file should be incremented for each ECO that is kit */
|
||||
/* for a specific curl x.y-z release. */
|
||||
/* When any part of x.y-z is incremented, the ECO should be set back to 0 */
|
||||
|
||||
#ifndef _VMS_ECO_LEVEL_H
|
||||
#define _VMS_ECO_LEVEL_H
|
||||
|
||||
#define VMS_ECO_LEVEL "0"
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user