$ GOTO Beyond_manifest
$ ENDIF
$ ELSE
-$! MANIFEST. has been found and we have set def'ed there -
-$! time to bail out before it's too late.
-$ tmp = f$extract(1,3,f$edit(f$getsyi("VERSION"),"TRIM,COLLAPSE"))
-$ IF (tmp .GES. "7.2") .AND. (F$GETSYI("HW_MODEL") .GE. 1024) THEN GOTO Beyond_depth_check
-$ IF (F$ELEMENT(max_allowed_dir_depth,".",F$ENVIRONMENT("Default")).nes.".")
+$! MANIFEST. has been found and we have set def'ed there.
+$! Time to bail out before it's too late, i.e. too deep.
+$! Depth check is unnecessary on Alpha VMS V7.2++ (even for ODS-2).
+$ tmp = f$extract(1,3,f$edit(f$getsyi("VERSION"),"TRIM,COLLAPSE"))
+$ IF (tmp .GES. "7.2") .AND. (F$GETSYI("HW_MODEL") .GE. 1024) THEN GOTO Beyond_depth_check
+$! Depth check also unnecessary on ODS 5 (or later) file systems.
+$ tmp = F$INTEGER(F$GETDVI(F$ENVIRONMENT("DEFAULT"),"ACPTYPE") - "F11V")
+$ IF (tmp .GE. 5) THEN GOTO Beyond_depth_check
+$ IF (F$ELEMENT(max_allowed_dir_depth,".",F$ENVIRONMENT("DEFAULT")).nes.".")
$ THEN
$ TYPE SYS$INPUT:
$ DECK
$ prefix = F$ENVIRONMENT("DEFAULT") - ".UU]" + "]"
$ prefix = F$PARSE(prefix,,,,"NO_CONCEAL") - "][" - ".;"
$ prefixbase = prefix - "]"
-$ prefix = prefixbase + ".]"
+$! Add _ROOT to make install PERL_ROOT differ from build directory.
+$ prefix = prefixbase + "_ROOT.]"
$ ENDIF
$ src = prefix
$!: determine root of directory hierarchy where package will be installed.
$! Check here for writability of requested PERL_ROOT if it is not the default (cwd).
$! -> recommend letting PERL_ROOT be PERL_SRC if requested PERL_ROOT is not writable.
$!
+$ IF .NOT. F$GETDVI(perl_root,"MNT")
+$ THEN
+$ tmp = F$PARSE(perl_root,,,"DEVICE",)
+$ echo4 "''tmp' is not mounted."
+$ ELSE
+$ tmp = perl_root - ".]" + "]"
+$ dflt = F$PARSE(tmp,,,,)
+$ IF dflt .eqs. ""
+$ THEN
+$ echo4 "''tmp' does not yet exist."
+$! create/directory 'tmp'
+$ ELSE
+$ echo4 "''tmp' already exists."
+$ ENDIF
+$ ENDIF
+$!
$ vms_skip_install = "true"
$ dflt = "y"
$! echo ""
oldarchlibexp="''vms_prefix':[lib.''archname']"
$ IF F$TYPE(privlibexp) .EQS. "" THEN -
privlibexp ="''vms_prefix':[lib]"
+$ IF F$TYPE(scriptdir) .EQS. "" THEN -
+ scriptdir ="''vms_prefix':[utils]"
$ IF F$TYPE(sitearchexp) .EQS. "" THEN -
sitearchexp ="''vms_prefix':[lib.site_perl.''archname']"
$ IF F$TYPE(sitelib_stem) .EQS. "" THEN -
$ be_case_sensitive = "''ans'"
$! IEEE math?
$ echo ""
-$ echo "Perl normally uses G_FLOAT format floating point numbers"
-$ echo "internally, as do most things on VMS. You can, however, build"
-$ echo "with IEEE floating point numbers instead if you need to."
+$ echo "Perl normally uses IEEE format (T_FLOAT) floating point numbers"
+$ echo "internally on Alpha, but if you need G_FLOAT for binary compatibility"
+$ echo "with an external library or existing data, you may wish to disable"
+$ echo "the IEEE math option."
$ dflt = use_ieee_math
$ rp = "Use IEEE math? [''dflt'] "
$ GOSUB myread
$ dflt = dflt - "IPC/SysV" ! needs to be ported
$ dflt = dflt - "NDBM_File" ! needs porting/special library
$ dflt = dflt - "ODBM_File" ! needs porting/special library
+$ dflt = dflt - "Sys/Syslog" ! needs porting/special library "GDBM_File macro LOG_DEBUG"
$ IF .NOT. Has_socketshr .AND. .NOT. Has_Dec_C_Sockets
$ THEN
$ dflt = dflt - "Socket" ! optional on VMS
$ ENDIF
+$ IF .NOT. use_ithreads THEN dflt = dflt - "threads"
$ dflt = F$EDIT(dflt,"TRIM,COMPRESS")
$!
$! Ask for their default list of extensions to build
$ GOSUB inlibc
$ d_mkstemps = tmp
$!
-$! Check for iconv
-$!
-$ OS
-$ WS "#if defined(__DECC) || defined(__DECCXX)"
-$ WS "#include <stdlib.h>"
-$ WS "#endif"
-$ WS "#include <stdio.h>"
-$ WS "#include <iconv.h>"
-$ WS "int main()"
-$ WS "{"
-$ WS " iconv_t cd = (iconv_t)0;"
-$ WS " char *inbuf, *outbuf;"
-$ WS " size_t inleft, outleft;"
-$ WS " iconv(cd, &inbuf, &inleft, &outbuf, &outleft);"
-$ WS " exit(0);"
-$ WS "}"
-$ CS
-$ GOSUB link_ok
-$ IF compile_status .ne. good_compile
-$ THEN
-$ d_iconv="undef"
-$ i_iconv="undef"
-$ ELSE
-$ IF link_status .ne. good_link
-$ THEN
-$ d_iconv="undef"
-$ i_iconv="undef"
-$ ELSE
-$ d_iconv="define"
-$ i_iconv="define"
-$ ENDIF
-$ ENDIF
-$ IF i_iconv .eqs. "define"
-$ THEN echo4 "<iconv.h> found."
-$ ELSE echo4 "<iconv.h> NOT found."
-$ ENDIF
-$!
$! Check for mkdtemp
$!
$ OS
$ WC "d_grpasswd='undef'"
$ WC "d_hasmntopt='undef'"
$ WC "d_htonl='" + d_htonl + "'"
-$ WC "d_iconv='" + d_iconv +"'"
$ WC "d_index='" + d_index + "'"
$ WC "d_inetaton='undef'"
$ WC "d_int64_t='" + d_int64_t + "'"
$ WC "i_fp='undef'"
$ WC "i_fp_class='undef'"
$ WC "i_grp='undef'"
-$ WC "i_iconv='" + i_iconv +"'"
$ WC "i_ieeefp='undef'"
$ WC "i_inttypes='" + i_inttypes + "'"
$ WC "i_langinfo='" + i_langinfo + "'"
$ WC "sPRIx64='" + sPRIx64 + "'"
$ WC "sSCNfldbl='" + sSCNfldbl + "'"
$ WC "sched_yield='" + sched_yield + "'"
+$ WC "scriptdir='" + scriptdir + "'"
$ WC "seedfunc='" + seedfunc + "'"
$ WC "selectminbits='32'"
$ WC "selecttype='" + selecttype + "'"
$ WRITE CONFIG "$! define SYS$TIMEZONE_DIFFERENTIAL ''tzd'"
$ ENDIF
$ WRITE CONFIG "$!"
-$ WRITE CONFIG "$! Symbols for commonly used scripts:"
+$ WRITE CONFIG "$! Symbols for commonly used programs:"
$ WRITE CONFIG "$!"
$ IF (perl_symbol)
$ THEN
$ WRITE CONFIG "$ h2ph == ""'"+"'Perl' ''vms_prefix':[utils]h2ph.com"""
$ WRITE CONFIG "$ h2xs == ""'"+"'Perl' ''vms_prefix':[utils]h2xs.com"""
$ WRITE CONFIG "$!perlcc == ""'"+"'Perl' ''vms_prefix':[utils]perlcc.com"""
+$ WRITE CONFIG "$ perlivp == ""'"+"'Perl' ''vms_prefix':[utils]perlivp.com"""
$ WRITE CONFIG "$ splain == ""'"+"'Perl' ''vms_prefix':[utils]splain.com"""
$ ELSE
$ WRITE CONFIG "$ Perldoc == ""Perl ''vms_prefix':[lib.pod]Perldoc.com -t"""
$ WRITE CONFIG "$ h2ph == ""Perl ''vms_prefix':[utils]h2ph.com"""
$ WRITE CONFIG "$ h2xs == ""Perl ''vms_prefix':[utils]h2xs.com"""
$ WRITE CONFIG "$!perlcc == ""Perl ''vms_prefix':[utils]perlcc.com"""
+$ WRITE CONFIG "$ perlivp == ""Perl ''vms_prefix':[utils]perlivp.com"""
$ WRITE CONFIG "$ splain == ""Perl ''vms_prefix':[utils]splain.com"""
$ ENDIF
$ CLOSE CONFIG