cURL / Mailing Lists / curl-library / Single Mail

curl-library

cURL 7.20.0 v. VMS

From: Steven M. Schweda <sms_at_antinode.info>
Date: Wed, 10 Feb 2010 21:46:26 -0600 (CST)

   Not many complaints remain (at least from me).

   Patches:

   The builder had some bad behavior when used in a batch job. Various
".LIS" and ".MAP" files were created without being requested by a "LIST"
command-line option (and in the wrong place, too). (And some minor
typographical changes.)

--- packages/vms/build_vms.com_orig 2010-01-01 08:17:52 -0600
+++ packages/vms/build_vms.com 2010-02-10 17:01:52 -0600
@@ -137,6 +137,7 @@
 $!
 $ hpssl = 0
 $ ldap = 0
+$ list = 0
 $ nohpssl = 0
 $ nossl = 0
 $ openssl = 0
@@ -150,6 +151,7 @@
 $ cc_defs = cc_defs+ ", "+ CURL_CCDEFS
 $ endif
 $ link_qual = ""
+$ msg_qual = "/object = ''objdir'"
 $ ssl_opt = ""
 $!
 $ arg = 1
@@ -187,7 +189,7 @@
 $!
 $ if (arg_val .eqs. "64")
 $ then
-$ cc_qual1 = cc_qual1 + " /POINTER = 64"
+$ cc_qual1 = cc_qual1+ " /POINTER = 64"
 $ goto arg_loop_end
 $ endif
 $!
@@ -201,15 +203,14 @@
 $!
 $ if (arg_val .eqs. "DEBUG")
 $ then
-$ cc_qual1 = cc_qual1 + -
- " /debug /nooptimize"
-$ link_qual = link_qual+ " /debug /map = ''lisdir'"
+$ cc_qual1 = cc_qual1+ " /debug /nooptimize"
+$ link_qual = link_qual+ " /debug"
 $ goto arg_loop_end
 $ endif
 $!
 $ if (arg_val .eqs. "IEEE")
 $ then
-$ cc_qual1 = cc_qual1 + " /FLOAT = IEEE_FLOAT"
+$ cc_qual1 = cc_qual1+ " /FLOAT = IEEE_FLOAT"
 $ goto arg_loop_end
 $ endif
 $!
@@ -232,7 +233,10 @@
 $!
 $ if (f$extract( 0, 4, arg_val) .eqs. "LIST")
 $ then
-$ cc_qual1 = cc_qual1 + " /list = ''lisdir' /show = (all, nomessages)"
+$ list = 1
+$ cc_qual1 = cc_qual1+ " /list = ''lisdir' /show = (all, nomessages)"
+$ link_qual = link_qual+ " /map = ''lisdir'"
+$ msg_qual = msg_qual+ " /list = ''lisdir'"
 $ goto arg_loop_end
 $ endif
 $!
@@ -262,6 +266,16 @@
 $ goto arg_loop
 $arg_loop_out:
 $!
+$! CC /LIST, LINK /MAP, and MESSAGE /LIST are defaults in batch mode,
+$! so be explicit when they're not desired.
+$!
+$ if (list .eq. 0)
+$ then
+$ cc_qual1 = cc_qual1+ " /nolist"
+$ link_qual = link_qual+ " /nomap"
+$ msg_qual = msg_qual+ " /nolist"
+$ endif
+$!
 $! Create product directory, if needed.
 $!
 $ if (f$search( proc_dev_dir+ arch_name+ ".DIR;1") .eqs. "")
@@ -281,7 +295,7 @@
 $! Use HP SSL.
 $ hpssl = 1
 $ ssl_opt = ", ''proc_dev_dir'hpssl_"+ -
- f$getsyi("ARCH_NAME") + ".opt /options"
+ f$getsyi("ARCH_NAME")+ ".opt /options"
 $ else
 $! Use OpenSSL. Assume object libraries, unless shared images
 $! are found (and not prohibited).
@@ -296,7 +310,7 @@
 $! OpenSSL shared images with "SSL_xxx.EXE names.
 $ openssl = 2
 $ ssl_opt = ", ''proc_dev_dir'openssl_ssl_"+ -
- f$getsyi("ARCH_NAME") + ".opt /options"
+ f$getsyi("ARCH_NAME")+ ".opt /options"
 $ else
 $ if ((f$search( "ssllib:libcrypto.exe") .nes. "") .and. -
                   (f$search( "ssllib:libssl.exe") .nes. ""))
@@ -304,7 +318,7 @@
 $! OpenSSL shared images with "xxx.EXE names.
 $ openssl = 3
 $ ssl_opt = ", ''proc_dev_dir'openssl_"+ -
- f$getsyi("ARCH_NAME") + ".opt /options"
+ f$getsyi("ARCH_NAME")+ ".opt /options"
 $ endif
 $ endif
 $ endif
@@ -331,8 +345,6 @@
   " ''cc_qual1'", -
   " ''cc_qual2'"
 $!
-$ msg_qual = "/object = ''objdir'"
-$!
 $! Inform the victim of our plans.
 $!
 $ if (hpssl)

   Files (obsolete) to delete from the kit:

      packages/vms/batch_compile.com
      packages/vms/defines.com

--- packages/vms/Makefile.am_orig 2010-01-01 08:17:52 -0600
+++ packages/vms/Makefile.am 2010-02-10 16:49:19 -0600
@@ -1,5 +1,7 @@
-EXTRA_DIST = batch_compile.com build_vms.com config-vms.h defines.com \
- hpssl_alpha.opt hpssl_ia64.opt hpssl_vax.opt readme curlmsg.msg \
- curlmsg_vms.h curlmsg.h curlmsg.sdl openssl_alpha.opt openssl_ia64.opt \
- openssl_vax.opt openssl_ssl_alpha.opt openssl_ssl_ia64.opt ldap.opt \
- openssl_ssl_vax.opt
+EXTRA_DIST = build_vms.com config-vms.h \
+ curlmsg.h curlmsg.msg curlmsg.sdl curlmsg_vms.h \
+ hpssl_alpha.opt hpssl_ia64.opt hpssl_vax.opt \
+ ldap.opt \
+ openssl_alpha.opt openssl_ia64.opt openssl_vax.opt \
+ openssl_ssl_alpha.opt openssl_ssl_ia64.opt openssl_ssl_vax.opt \
+ readme

   The "readme" was well out of date. I assume that
      packages/vms/Makefile.am
      packages/vms/Makefile.in
are supposed to be in the kit, because they are, but I don't know why.
If they're not, then the references to them should be removed from the
revised "readme". (And/or changed to be accurate.)

--- packages/vms/readme._orig 2009-10-28 15:21:58 -0500
+++ packages/vms/readme. 2010-02-10 16:33:01 -0600
@@ -11,7 +11,7 @@
  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.
 
 Prerequisites:
 
@@ -23,45 +23,49 @@
 
 This directory contains the following files:
 
-AXP.DIR - Target directory for Alpha builds.
-BATCH_COMPILE.COM - Quick and dirty batch build procedure.
-BUILD_VMS.COM - The brute force build procedure that sets
- up the config files, and builds all the C
- and MSG files in the lib and src
- subdirectories.
-CONFIG-VMS.H - The config file used for all builds.
-CURLMSG.H - Created with SDL/ALPHA/LANGUAGE=CC CURLMSG.SDL
- (Needs freeware SDL tool)
-CURLMSG.MSG - Source for .SDL and .H as well as the
- .OBJ used to link against for error messages.
-CURLMSG.SDL - Created with MESSAGE/SDL CURLMSG.MSG.
-CURLMSG_VMS.H - Maps curl error codes to VMS error numbers.
-DEFINES.COM - Some handy logicals needed for the build.
- You may need to update this for your setup.
-HPSSL_ALPHA.OPT - Option file for hp SSL link on Alpha.
-HPSSL_IA64.OPT - Option file for hp SSL link on IA64.
-HPSSL_VAX.OPT - Option file for hp SSL link on VAX.
-IA64.DIR - Target directory for IA64 builds.
-README. - This file.
-VAX.DIR - Target directory for VAX builds.
+build_vms.com Build procedure.
+config-vms.h VMS-specific config.h.
+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.
+hpssl_alpha.opt LINK options file for HP SSL on Alpha.
+hpssl_ia64.opt LINK options file for HP SSL on IA64.
+hpssl_vax.opt LINK options file for HP SSL on VAX.
+ldap.opt LINK options file for LDAP.
+Makefile.am cURL kit file list for this directory.
+Makefile.in cURL kit makefile source for this directory.
+openssl_alpha.opt LINK options file for OpenSSL on Alpha.
+openssl_ia64.opt LINK options file for OpenSSL on IA64.
+openssl_ssl_alpha.opt LINK options file for OpenSSL (SSL_ prefix) on Alpha.
+openssl_ssl_ia64.opt LINK options file for OpenSSL (SSL_ prefix) on IA64.
+openssl_ssl_vax.opt LINK options file for OpenSSL (SSL_ prefix) on VAX.
+openssl_vax.opt LINK options file for OpenSSL on VAX.
+readme. This file.
 
 
 How to Build:
 
-In theory you should be able to do an @defines followed by an
-_at_build_vms from this directory and it will create brand new .olbs and
-an .exe. I say in theory because every release of cURL tosses in a
-new twist that has to be addressed by updating the config-vms.h*
-files, or other files. I'm working on keeping all the OpenVMS
-dependent stuff in this config file to keep from having to wade
-through gobs of #ifdefs and such.
+The (brute-force) builder is [.packages.vms]build_vms.com. Comments in
+this procedure describe various optional parameters which enable or
+disable optional program features, or which control the build in other
+ways. Product files (.EXE, .H, .LIS, .MAP, .OBJ, .OLB, ...) should be
+produced in an architecture-specific subdirectory under this directory
+([.ALPHA], [.IA64], [.VAX]).
+
+ 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)
+
 
 Other Notes:
 
 The test suites are not supported as of 7.11.0.
 
-The CURLMSG.SDL and CURLMSG.H files are generated from CURLMSG.MSG.
+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 CD.
+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.
 

------------------------------------------------------------------------

   Steven M. Schweda sms_at_antinode-info
   382 South Warwick Street (+1) 651-699-9818
   Saint Paul MN 55105-2547
-------------------------------------------------------------------
List admin: http://cool.haxx.se/list/listinfo/curl-library
Etiquette: http://curl.haxx.se/mail/etiquette.html
Received on 2010-02-11