1 # 26 September 2009. SMS.
3 # Wget 1.12 for VMS - MMS (or MMK) Common Source Description File.
6 # This description file is included by other description files. It is
7 # not intended to be used alone. Verify proper inclusion.
9 .IFDEF INCL_DESCRIP_SRC
11 $$$$ THIS DESCRIPTION FILE IS NOT INTENDED TO BE USED THIS WAY.
12 .ENDIF # INCL_DESCRIP_SRC
15 # Define MMK architecture macros when using MMS.
17 .IFDEF __MMK__ # __MMK__
22 .IFDEF $(MMS$ARCH_NAME)_X_ALPHA # $(MMS$ARCH_NAME)_X_ALPHA
24 .ENDIF # $(MMS$ARCH_NAME)_X_ALPHA
25 .IFDEF $(MMS$ARCH_NAME)_X_IA64 # $(MMS$ARCH_NAME)_X_IA64
27 .ENDIF # $(MMS$ARCH_NAME)_X_IA64
28 .IFDEF $(MMS$ARCH_NAME)_X_VAX # $(MMS$ARCH_NAME)_X_VAX
30 .ENDIF # $(MMS$ARCH_NAME)_X_VAX
31 .ENDIF # __MMK__ [else]
33 # Analyze architecture-related and option macros.
35 .IFDEF __ALPHA__ # __ALPHA__
38 .IFDEF __IA64__ # __IA64__
41 .IFDEF __VAX__ # __VAX__
46 .ENDIF # __VAX__ [else]
47 .ENDIF # __IA64__ [else]
48 .ENDIF # __ALPHA__ [else]
51 .IFDEF __VAX__ # __VAX__
56 .ENDIF # __VAX__ [else]
61 DEST = $(DESTM)$(DESTL)
66 CDEFS_DASHD = , "ENABLE_DEBUG"
74 CFLAGS_DBG = /debug /nooptimize
75 LINKFLAGS_DBG = /debug /traceback
78 LINKFLAGS_DBG = /notraceback
84 CDEFS_LARGE = , "_LARGEFILE"
90 CDEFS_SSL = , "HAVE_SSL", "ENABLE_NTLM"
91 SSL_LINK_OPT = , [-.VMS]WGET_SSL_HP.OPT /OPTIONS
97 CDEFS_SSL = , "HAVE_LIBSSL", "ENABLE_NTLM"
98 SSL_LINK_OPT = , [-.VMS]WGET_SSL_O.OPT /OPTIONS
103 .ENDIF # HPSSL [else]
105 # User-specified options.
107 .IFDEF CDEFS_USER # CDEFS_USER
108 CDEFS_USR = , $(CDEFS_USER)
111 .ENDIF # CDEFS_USER [else]
114 # Specific DESCRIP_SRC.MMS defines:
119 CDEFS_CMN = VMS $(CDEFS_DASHD) $(CDEFS_LARGE) $(CDEFS_SSL) $(CDEFS_USR)
122 # Absence of MMSDESCRIPTION_FILE.
123 .IFDEF MMSDESCRIPTION_FILE # MMSDESCRIPTION_FILE
124 .ELSE # MMSDESCRIPTION_FILE
125 NO_MMSDESCRIPTION_FILE = 1
126 .ENDIF # MMSDESCRIPTION_FILE [else]
129 # Subsidiary directory names. (Note: DEST must be defined first.)
132 DIR_LIB_DEST = [-.$(DIR_LIB).$(DEST)]
133 DIR_LIB_DEST_FILE = [-.$(DIR_LIB)]$(DEST).DIR;1
136 DIR_MD5_DEST = [-.$(DIR_MD5).$(DEST)]
137 DIR_MD5_DEST_FILE = [-.$(DIR_MD5)]$(DEST).DIR;1
140 DIR_SRC_DEST = [-.$(DIR_SRC).$(DEST)]
141 DIR_SRC_DEST_FILE = [-.$(DIR_SRC)]$(DEST).DIR;1
145 # Object library names.
147 LIB_LIB = $(DIR_LIB_DEST)LIBLIB.OLB
148 LIB_MD5 = $(DIR_MD5_DEST)LIBMD5.OLB
149 LIB_SRC = $(DIR_SRC_DEST)LIBSRC.OLB
151 # DECC_VER object name.
153 DECC_VER_OBJ = $(DIR_SRC_DEST)DECC_VER.OBJ
157 WGET_EXE = $(DIR_SRC_DEST)WGET.EXE
158 DECC_VER_EXE = $(DIR_SRC_DEST)DECC_VER.EXE
165 WGET_HLB = [-.$(DIR_VMS)]WGET.HLB
166 WGET_HLP = [-.$(DIR_VMS)]WGET.HLP
169 # Complain if warranted. Otherwise, show destination directory.
170 # Make the destination directories, if necessary.
172 .IFDEF UNK_DEST # UNK_DEST
175 " Unknown system architecture."
176 .IFDEF __MMK__ # __MMK__
178 " MMK on IA64? Try adding ""/MACRO = __IA64__""."
181 " MMS too old? Try adding ""/MACRO = MMS$ARCH_NAME=ALPHA"","
183 " or ""/MACRO = MMS$ARCH_NAME=IA64"", or ""/MACRO = MMS$ARCH_NAME=VAX"","
185 " as appropriate. (Or try a newer version of MMS.)"
186 .ENDIF # __MMK__ [else]
187 @ write sys$output ""
188 I_WILL_DIE_NOW. /$$$$INVALID$$$$
190 .IFDEF LARGE_VAX # LARGE_VAX
193 " Macro ""LARGE"" is invalid on VAX."
194 @ write sys$output ""
195 I_WILL_DIE_NOW. /$$$$INVALID$$$$
197 .IFDEF HPSSL_OSSL # HPSSL_OSSL
200 " Macro ""HPSSL"" is incompatible with macro ""OSSL""."
201 @ write sys$output ""
202 I_WILL_DIE_NOW. /$$$$INVALID$$$$
204 .IFDEF NO_MMSDESCRIPTION_FILE # NO_MMSDESCRIPTION_FILE
207 " Macro ""MMSDESCRIPTION_FILE"" is not defined as required."
209 " MMK, or MMS too old? Try adding:"
211 " ""/MACRO = MMSDESCRIPTION_FILE=dev:[dir]description_file"","
213 " as appropriate, where ""dev:[dir]description_file"" is the full path"
215 " to the MMS/MMK description file being used (typically ""DESCRIP.MMS"")."
216 @ write sys$output ""
217 I_WILL_DIE_NOW. /$$$$INVALID$$$$
218 .ELSE # NO_MMSDESCRIPTION_FILE
221 @ write sys$output " Destination: [.$(DEST)]"
222 @ write sys$output ""
223 @ ! Define ODS2 symbols (close enough to MMS macros) according
224 @ ! to the actual "getopt.in.h" name.
225 @ if (f$search( "$(LIB_GETOPT_H_SRC_DU)") .nes. "") then -
227 @ if (f$search( "$(LIB_GETOPT_H_SRC_UD)") .nes. "") then -
229 @ if (f$type( ODS2DU) .nes. "") then -
231 " (Expecting ODS2 dot-under names for multi-dot file names.)"
232 @ if (f$type( ODS2UD).nes. "") then -
234 " (Expecting ODS2 under-dot names for multi-dot file names.)"
235 @ if ((f$type( ODS2DU) .nes. "") .or. -
236 (f$type( ODS2UD) .nes. "")) then -
238 .IFDEF ALL_DEST_DIRS_NEEDED # ALL_DEST_DIRS_NEEDED
239 @ ! Create all destination directories first.
240 if (f$search( "[-.$(DIR_LIB)]$(DEST).DIR;1") .eqs. "") then -
241 create /directory [-.$(DIR_LIB).$(DEST)]
242 if (f$search( "[-.$(DIR_MD5)]$(DEST).DIR;1") .eqs. "") then -
243 create /directory [-.$(DIR_MD5).$(DEST)]
244 if (f$search( "[-.$(DIR_SRC)]$(DEST).DIR;1") .eqs. "") then -
245 create /directory [-.$(DIR_SRC).$(DEST)]
246 .ELSE # ALL_DEST_DIRS_NEEDED
247 @ ! Create this specific destination directory first.
248 if (f$search( "$(DEST).DIR;1") .eqs. "") then -
249 create /directory [.$(DEST)]
250 .ENDIF # ALL_DEST_DIRS_NEEDED [else]
251 .ENDIF # NO_MMSDESCRIPTION_FILE [else]
252 .ENDIF # HPSSL_OSSL [else]
253 .ENDIF # LARGE_VAX [else]
254 .ENDIF # UNK_DEST [else]
256 # UTIME prefix quirk.
266 # Architecture-specific CC and LINK flags.
268 .IFDEF __VAX__ # __VAX__
271 CFLAGS_ARCH = /float = ieee_float
272 .ENDIF # __VAX__ [else]
279 # Note: Before DEC C V6.0, "/show = [no]messages" will cause trouble.
280 CFLAGS_LIST = /list = $*.LIS /show = (all, nomessages)
281 LINKFLAGS_LIST = /map = $*.MAP /cross_reference /full