]> sjero.net Git - wget/blobdiff - vms/DESCRIP.MMS
imported patch vms-overlay
[wget] / vms / DESCRIP.MMS
index a746b2f9b15401437b7bbb9a40fbdf56fd760016..11c9fd8a8bf310929f76e98bba1b0943ef72b7a3 100644 (file)
-#                                               29 January 2008.  SMS.
+#                                               23 September 2009.  SMS.
 #
-#    MMS or MMK description file for Wget 1.11.
+#    Wget 1.12 for VMS - MMS (or MMK) Description File.
 #
-# The default target, EXE, builds the architecture-specific Wget
-# executable (and the DECC_VER.EXE diagnostic executable).
+# Usage:
 #
-# Other targets:
+#    SET DEFAULT [.directory]   ! [.VMS] to build all products.
+#    MMS /DESCRIPTION = [-.VMS] [/MACRO = (<see_below>)] target
+#
+# Optional macros:
+#
+#    CCOPTS=xxx     Compile with CC options xxx.  For example:
+#                   "CCOPTS=/ARCH=HOST"
+#
+#    CDEFS_USER=xxx  Compile with C macro definition(s) xxx.
+#
+#    DASHD=1        Compile with "-d" option enabled.
+#
+#    DBG=1          Compile with /DEBUG /NOOPTIMIZE.
+#                   Link with /DEBUG /TRACEBACK.
+#                   (Default is /NOTRACEBACK.)
+#
+#    HPSSL=1        Enable HTTPS (and NTLM) support using HP SSL.
+#
+#    LARGE=1        Enable large-file (>2GB) support.  Non-VAX only.
+#
+#    LINKOPTS=xxx   Link with LINK options xxx.  For example:
+#                   "LINKOPTS=/NOINFO"   
 #
-#    HELP       [.VMS]WGET.HLB help library.
+#    LIST=1         Compile with /LIST /SHOW = (ALL, NOMESSAGES).
+#                   Link with /MAP /CROSS_REFERENCE /FULL.
+#
+#    ODS2DU=1       Look for multi-dot file names (like
+#                   "[.lib]getopt^.in.h") using VMSTAR-compatible,
+#                   dot-under, ODS2-conforming names (like
+#                   "[.lib]getopt.in_h").  See also ODS2Z, below.
+#
+#    ODS2UD=1       Look for multi-dot file names (like
+#                   "[.lib]getopt^.in.h") using [Un]Zip-compatible,
+#                   under-dot ODS2-conforming names (like
+#                    "[.lib]getopt_in.h").  Also use this macro if the
+#                   source kit was extracted using VMSTAR with the
+#                   /UNDERDOT ("-u") option.
+#
+#    OSSL=1         Enable HTTPS (and NTLM) support using OpenSSL.
+#
+#
+# The default target, ALL, builds all the product executables.
+#
+# Other targets:
 #
 #    CLEAN      deletes architecture-specific files, but leaves any
-#               individual source dependency files and the help library.
+#               individual source dependency files.
 #
 #    CLEAN_ALL  deletes all generated files, except the main (collected)
-#               source dependency file.
+#               source dependency files.
+#
+#    CLEAN_EXE  deletes only the architecture-specific executables. 
+#               Handy if all you wish to do is re-link the executables.
 #
-#    CLEAN_EXE  deletes only the architecture-specific executable.
-#               Handy if all you wish to do is re-link the executable.
+#    CLEAN_OLB  deletes only the architecture-specific object libraries. 
 #
+#    HELP       creates the HELP library, [.vms]WGET.HLB.
+#
+# Example commands:
+#
+# To build the conventional small-file product using the DEC/Compaq/HP C
+# compiler (Note: DESCRIP.MMS is the default description file name.):
+#
+#    MMS
+#
+# To get the large-file executables (on a non-VAX system):
+#
+#    MMS /MACRO = (DASHD=1, LARGE=1)
+#
+# To delete the architecture-specific generated files for this system
+# type:
+#
+#    MMS /MACRO = (LARGE=1) CLEAN       ! Large-file.
+# or
+#    MMS CLEAN                          ! Small-file.
+#
+# To build a complete small-file product for debug with compiler
+# listings and link maps:
+#
+#    MMS CLEAN
+#    MMS /MACRO = (DBG=1, LIST=1)
+#
+########################################################################
 
-# Include the source file lists (among other data).
+# Include primary product description file.
 
 INCL_DESCRIP_SRC = 1
-.INCLUDE [-.VMS]descrip_src.mms
+.INCLUDE descrip_src.mms
+
+# Required command procedures.
+
+CONFIG_EXTRACT_COM = [-.$(DIR_VMS)]CONFIG_EXTRACT.COM
+
+# Generated header files.
+
+#    Products.
+
+LIB_GETOPT_H = $(DIR_LIB_DEST)GETOPT.H
+SRC_CONFIG_H = $(DIR_SRC_DEST)CONFIG.H
+
+#    Sources.
+
+LIB_GETOPT_H_SRC_DD = [-.$(DIR_LIB)]getopt^.in.h
+LIB_GETOPT_H_SRC_DU = [-.$(DIR_LIB)]getopt.in_h
+LIB_GETOPT_H_SRC_UD = [-.$(DIR_LIB)]getopt_in.h
 
-# DECC_VER diagnostic program.
-DECC_VER_OBJ = [.$(DEST)]DECC_VER.OBJ
+.IFDEF ODS2DU                   # ODS2DU
+LIB_GETOPT_H_SRC = $(LIB_GETOPT_H_SRC_DU)
+.ELSE                           # ODS2DU
+.IFDEF ODS2UD                       # ODS2UD
+LIB_GETOPT_H_SRC = $(LIB_GETOPT_H_SRC_UD)
+.ELSE                               # ODS2UD
+LIB_GETOPT_H_SRC = $(LIB_GETOPT_H_SRC_DD)
+.ENDIF                              # ODS2UD [else]
+.ENDIF                          # ODS2DU [else]
+SRC_CONFIG_H_SRC = [-.$(DIR_VMS)]CONFIG.H_VMS
 
-# Executables.
 
-WGET_EXE = [.$(DEST)]WGET.EXE
-DECC_VER_EXE = [.$(DEST)]DECC_VER.EXE
+# TARGETS.
 
-EXE = $(WGET_EXE) $(DECC_VER_EXE)
+# Default subsidiary targets.
 
-# HELP library and source file.
+# Build LIB object library (default target).
 
-HLB = [-.VMS]WGET.HLB
-HLP = [-.VMS]WGET.HLP
+.IFDEF TARGET_LIB               # TARGET_LIB
 
-# Link the executables (default target).
+SUBSIDIARY = 1
 
-EXE : $(EXE)
+LIBLIB : $(LIB_LIB)
        @ write sys$output ""
-       @ write sys$output "   ""$<"" is ready."
+       @ write sys$output "   LIBLIB done."
        @ write sys$output ""
 
-$(WGET_EXE) : $(OBJS) $(MAIN_OPT) $(IP_OPT)
-       define /user_mode odir [.$(DEST)]
-       $(LINK) $(LINKFLAGS) $(MAIN_OPT) /options $(IP_LINK_OPT) -
-        $(SSL_LINK_OPT)
+$(LIB_LIB) : $(LIB_LIB)($(MODS_OBJS_LIB_LIB))
+       @ write sys$output "$(MMS$TARGET) updated."
+
+.ENDIF                          # TARGET_LIB
+
+
+# Build MD5 object library (default target).
+
+.IFDEF TARGET_MD5               # TARGET_MD5
+
+SUBSIDIARY = 1
+
+LIBMD5 : $(LIB_MD5)
+       @ write sys$output ""
+       @ write sys$output "   LIBMD5 done."
+       @ write sys$output ""
+
+$(LIB_MD5) : $(LIB_MD5)($(MODS_OBJS_LIB_MD5))
+       @ write sys$output "$(MMS$TARGET) updated."
+
+# Special rules for MD5.C on VAX where Compaq C V6.4-005
+# (like, probably, other versions) loops with /optimize = disjoint.
+
+.IFDEF __VAX__                      # __VAX__
+
+[.$(DEST)]MD5.OBJ : MD5.C
+       @ write sys$output "***************************************"
+       @ write sys$output "* Note: Exceptional rule in use here: *"
+       @ write sys$output "***************************************"
+       $(CC) $(CFLAGS) /optimize = nodisjoint /define = ($(CDEFS)) -
+        $(MMS$SOURCE)
+
+.ENDIF                              # __VAX__
+
+.ENDIF                          # TARGET_MD5
+
 
-$(DECC_VER_OBJ) : [-.VMS]DECC_VER.C
+# Build Wget executable or SRC object library (default target).
+
+.IFDEF TARGET_SRC               # TARGET_SRC
+
+SUBSIDIARY = 1
+
+EXES : $(EXES)
+       @ write sys$output ""
+       @ write sys$output "   Wget done."
+       @ write sys$output ""
+
+$(LIB_SRC) : $(LIB_SRC)($(MODS_OBJS_LIB_SRC))
+       @ write sys$output "$(MMS$TARGET) updated."
+
+$(WGET_EXE) : $(LIB_MD5) $(LIB_LIB) $(LIB_SRC)
+       $(LINK) $(LINKFLAGS) -
+        $(LIB_SRC) /library /include = (main), -
+        $(LIB_LIB) /library, -
+        $(LIB_MD5) /library -
+        $(SSL_LINK_OPT)
+        $(LFLAGS_ARCH)
 
 $(DECC_VER_EXE) : $(DECC_VER_OBJ)
-       $(LINK) $(LINKFLAGS) $(MMS$SOURCE)
+       $(LINK) $(LINKFLAGS) -
+        $(DECC_VER_OBJ) -
+        $(LFLAGS_ARCH)
+
+$(DECC_VER_OBJ) : [-.$(DIR_SRC)]DECC_VER.C
 
-# Create the HELP library (HELP target).
+.ENDIF                          # TARGET_SRC
 
-HELP : $(HLB)
+
+# Default global target.
+
+ALL : $(EXES)
+       @ show time
        @ write sys$output ""
-       @ write sys$output "   ""$<"" is ready."
+       @ write sys$output "   ALL done."
+       @ write sys$output ""
+
+# Global rules for executables and object libraries.
+
+.IFDEF TARGET_LIB               # TARGET_LIB
+.ELSE                           # TARGET_LIB
+
+$(LIB_LIB) :
+       dev_dir = f$environment( "DEFAULT")
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(LIB_LIB)
+       set default 'dev_dir'
+       show default
        @ write sys$output ""
 
-$(HLB) : $(HLP)
-       LIBRARY /CREATE /HELP $@ $<
+.ENDIF                          # TARGET_LIB [else]
+
+.IFDEF TARGET_MD5               # TARGET_MD5
+.ELSE                           # TARGET_MD5
+
+$(LIB_MD5) :
+       dev_dir = f$environment( "DEFAULT")
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(LIB_MD5)
+       set default 'dev_dir'
+       show default
+       @ write sys$output ""
+
+.ENDIF                          # TARGET_MD5 [else]
+
+.IFDEF TARGET_SRC               # TARGET_SRC
+.ELSE                           # TARGET_SRC
+
+$(LIB_SRC) :
+       dev_dir = f$environment( "DEFAULT")
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_SRC)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(LIB_SRC)
+       set default 'dev_dir'
+       show default
+       @ write sys$output ""
+
+$(WGET_EXE) :
+        set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+        set default [-.$(DIR_SRC)]
+        show default
+        @ write sys$output ""
+        $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+         $(WGET_EXE)
+
+$(DECC_VER_EXE) :
+        set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+        set default [-.$(DIR_SRC)]
+        show default
+        @ write sys$output ""
+        $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+         $(DECC_VER_EXE)
+
+.ENDIF                          # TARGET_SRC [else]
+
+
 
 # CLEAN target.  Delete the [.$(DEST)] directory and everything in it.
 
+.IFDEF SUBSIDIARY               # SUBSIDIARY
+
 CLEAN :
        if (f$search( "[.$(DEST)]*.*") .nes. "") then -
         delete [.$(DEST)]*.*;*
-       if (f$search( "$(DEST).dir") .nes. "") then -
+       if (f$search( "$(DEST).dir", 1) .nes. "") then -
         set protection = w:d $(DEST).dir;*
-       if (f$search( "$(DEST).dir") .nes. "") then -
+       if (f$search( "$(DEST).dir", 2) .nes. "") then -
         delete $(DEST).dir;*
 
 # CLEAN_ALL target.  Delete:
-#    The [.$(DEST)] directories and everything in them.
-#    All help-related derived files,
-#    CONFIG.H.
+#    The [...$(DEST)] directories and everything in them.
 #    All individual C dependency files.
 # Also mention:
 #    Comprehensive dependency file.
 
 CLEAN_ALL :
-       if (f$search( "[.ALPHA*]*.*") .nes. "") then -
-        delete [.ALPHA*]*.*;*
-       if (f$search( "ALPHA*.dir", 1) .nes. "") then -
-        set protection = w:d ALPHA*.dir;*
-       if (f$search( "ALPHA*.dir", 2) .nes. "") then -
-        delete ALPHA*.dir;*
-       if (f$search( "[.IA64*]*.*") .nes. "") then -
-        delete [.IA64*]*.*;*
-       if (f$search( "IA64*.dir", 1) .nes. "") then -
-        set protection = w:d IA64*.dir;*
-       if (f$search( "IA64*.dir", 2) .nes. "") then -
-        delete IA64*.dir;*
-       if (f$search( "[.VAX*]*.*") .nes. "") then -
-        delete [.VAX*]*.*;*
-       if (f$search( "VAX*.dir", 1) .nes. "") then -
-        set protection = w:d VAX*.dir;*
-       if (f$search( "VAX*.dir", 2) .nes. "") then -
-        delete VAX*.dir;*
-       if (f$search( "$(CONFIG_H)") .nes. "") then -
-        delete /log /noconfirm $(CONFIG_H);*
-       if (f$search( "$(HLB)") .nes. "") then -
-        delete /log /noconfirm $(HLB);*
-       if (f$search( "*.MMSD") .nes. "") then -
-        delete *.MMSD;*
+       @ write sys$output "   SUBS - CLEAN_ALL"
+       show default
+       @ write sys$output ""
+       if (f$search( "[...ALPHA*]*.*") .nes. "") then -
+        delete [...ALPHA*]*.*;*
+       if (f$search( "[...]ALPHA*.dir", 1) .nes. "") then -
+        set protection = w:d [...]ALPHA*.dir;*
+       if (f$search( "[...]ALPHA*.dir", 2) .nes. "") then -
+        delete [...]ALPHA*.dir;*
+       if (f$search( "[...IA64*]*.*") .nes. "") then -
+        delete [...IA64*]*.*;*
+       if (f$search( "[...]IA64*.dir", 1) .nes. "") then -
+        set protection = w:d [...]IA64*.dir;*
+       if (f$search( "[...]IA64*.dir", 2) .nes. "") then -
+        delete [...]IA64*.dir;*
+       if (f$search( "[...VAX*]*.*") .nes. "") then -
+        delete [...VAX*]*.*;*
+       if (f$search( "[...]VAX*.dir", 1) .nes. "") then -
+        set protection = w:d [...]VAX*.dir;*
+       if (f$search( "[...]VAX*.dir", 2) .nes. "") then -
+        delete [...]VAX*.dir;*
+       if (f$search( "[...]*.MMSD") .nes. "") then -
+        delete [...]*.MMSD;*
        @ write sys$output ""
        @ write sys$output "Note:  This procedure will not"
-       @ write sys$output "   DELETE [.VMS]DESCRIP_DEPS.MMS;*"
+       @ write sys$output "   DELETE DESCRIP_DEPS.MMS;*"
        @ write sys$output -
  "You may choose to, but a recent version of MMS (V3.5 or newer?) is"
        @ write sys$output -
  "needed to regenerate it.  (It may also be recovered from the original"
        @ write sys$output -
- "distribution kit.)  See [.VMS]DESCRIP_MKDEPS.MMS for instructions on"
+ "distribution kit.)  See DESCRIP_MKDEPS.MMS for instructions on"
        @ write sys$output -
- "generating [.VMS]DESCRIP_DEPS.MMS."
+ "generating DESCRIP_DEPS.MMS."
+       @ write sys$output ""
+
+# CLEAN_EXE target.  Delete the executables in [.$(DEST)].
+
+CLEAN_EXE :
+       if (f$search( "[.$(DEST)]*.EXE") .nes. "") then -
+        delete [.$(DEST)]*.EXE;*
+
+# CLEAN_OLB target.  Delete the object libraries in [.$(DEST)].
+
+CLEAN_OLB :
+       if (f$search( "[.$(DEST)]*.OLB") .nes. "") then -
+        delete [.$(DEST)]*.OLB;*
+
+.ELSE                           # SUBSIDIARY
+
+.IFDEF MMSTARGETS                   # MMSTARGETS
+
+#
+# MMS (or MMK) with the MMSTARGETS macro needs only one real CLEAN rule.
+#
+
+CLEAN, CLEAN_ALL, CLEAN_EXE, CLEAN_OLB :
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(MMSTARGETS)
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(MMSTARGETS)
+       set default [-.$(DIR_SRC)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        $(MMSTARGETS)
+
+.ELSE                               # MMSTARGETS
+
+#
+# MMK without the MMSTARGETS macro needs more rules.
+#
+
+CLEAN :
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN
+       set default [-.$(DIR_SRC)]
+       show default
        @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN
 
-# CLEAN_EXE target.  Delete the executable in [.$(DEST)].
+CLEAN_ALL :
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_ALL
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_ALL
+       set default [-.$(DIR_SRC)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_ALL
 
 CLEAN_EXE :
-       if (f$search( "[.$(DEST)]*.exe") .nes. "") then -
-        delete [.$(DEST)]*.exe;*
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_EXE
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_EXE
+       set default [-.$(DIR_SRC)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_EXE
+
+CLEAN_OLB :
+       set default 'f$parse( "$(MMSDESCRIPTION_FILE)", , , "DIRECTORY")'
+       set default [-.$(DIR_LIB)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_OLB
+       set default [-.$(DIR_MD5)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_OLB
+       set default [-.$(DIR_SRC)]
+       show default
+       @ write sys$output ""
+       $(MMS) /description = $(MMSDESCRIPTION_FILE) $(MMSQUALIFIERS) -
+        CLEAN_OLB
+
+.ENDIF                              # MMSTARGETS [else]
 
-# Include CONFIG.H dependency and rule.
+.ENDIF                          # SUBSIDIARY
 
-INCL_CONFIG_SRC = 1
-.INCLUDE [-.VMS]descrip_config.mms
+DEFAULT :
+       @ write sys$output "No target, specified or default."
+
+HELP : $(WGET_HLB)
+       @ write sys$output ""
+       @ write sys$output "   ""$<"" is ready."
+       @ write sys$output ""
+
+$(WGET_HLB) : $(WGET_HLP)
+       LIBRARY /CREATE /HELP $(MMS$TARGET) $(MMS$SOURCE)
+
+# Default C compile rule.
+
+.C.OBJ :
+       $(CC) $(CFLAGS) /define = ($(CDEFS)) $(MMS$SOURCE)
+
+
+# Generated header files.
+
+GENERATED_HEADERS : $(LIB_GETOPT_H) $(SRC_CONFIG_H)
+       @ write sys$output "$(MMS$TARGET) updated."
+
+# Simply copy "lib/getopt.in.h".
+
+$(LIB_GETOPT_H) : $(LIB_GETOPT_H_SRC)
+       copy $(LIB_GETOPT_H_SRC) $(MMS$TARGET)
+
+# Copy "vms/config.h_vms", and append:
+#    Wget version, and other information extracted from "configure.ac",
+#    Current OS ("VMS"), host architecture, and OS version.
+
+$(SRC_CONFIG_H) : $(SRC_CONFIG_H_SRC) $(CONFIG_EXTRACT_COM)
+       @ @$(CONFIG_EXTRACT_COM) [-]CONFIGURE.AC wget_name wget_vers wget_email
+       @ copy $(SRC_CONFIG_H_SRC) $(MMS$TARGET)
+       @ open /append config_h $(MMS$TARGET)
+       @ write config_h ""
+       @ write config_h "/* Data extracted from ""configure.ac"": */"
+       @ write config_h ""
+       @ write config_h "#define PACKAGE "+ -
+        """''f$trnlnm( "wget_name")'"""
+       @ write config_h "#define PACKAGE_BUGREPORT "+ -
+        """''f$trnlnm( "wget_email")'"""
+       @ write config_h "#define PACKAGE_NAME "+ -
+        """''f$trnlnm( "wget_name")'"""
+       @ write config_h "#define PACKAGE_STRING "+ -
+        """''f$trnlnm( "wget_name")' ''f$trnlnm( "wget_vers")'"""
+       @ write config_h "#define PACKAGE_TARNAME "+ -
+        """''f$trnlnm( "wget_name")'"""
+       @ write config_h "#define PACKAGE_VERSION "+ -
+        """''f$trnlnm( "wget_vers")'"""
+       @ write config_h "#define VERSION "+ -
+        """''f$trnlnm( "wget_vers")'"""
+       @ write config_h ""
+       @ write config_h "/* Build-time info: */"
+       @ write config_h ""
+       @ if (f$getsyi( "hw_model") .lt. 1024) then arch_name = "VAX"
+       @ if (f$getsyi( "hw_model") .ge. 1024) then -
+        arch_name = f$getsyi( "arch_name")
+       @ write config_h "#define OS_TYPE "+ -
+        """VMS ''arch_name' ''f$edit( f$getsyi( ""version""), ""trim"")'"""
+       @ write config_h ""
+       @ close config_h
 
 # Include generated source dependencies.
 
+.IFDEF SUBSIDIARY               # SUBSIDIARY
+
 INCL_DESCRIP_DEPS = 1
-.INCLUDE [-.VMS]descrip_deps.mms
+
+.INCLUDE descrip_deps.mms
+
+.ENDIF                          # SUBSIDIARY