X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=configure.com;h=5addf1a3bb31a362bf85623600bd600ff838f1de;hb=30ef33217aeee51ee47b2433e9384b011646254a;hp=cfa695cac567d677c619cad2b40eee88e3bda8d6;hpb=05c058bc16a76532007427c68eaafb53a23230dc;p=p5sagit%2Fp5-mst-13.2.git diff --git a/configure.com b/configure.com index cfa695c..5addf1a 100644 --- a/configure.com +++ b/configure.com @@ -460,7 +460,7 @@ $ IF ( F$SEARCH("UU.DIR").EQS."" ) $ THEN $ CREATE/DIRECTORY [.UU] $ ELSE -$ IF ( F$SEARCH("[.UU]*.*").NES."" ) THEN DELETE/NOLOG [.UU]*.*;* +$ IF ( F$SEARCH("[.UU]*.*").NES."" ) THEN DELETE/NOLOG/NOCONFIRM [.UU]*.*;* $ ENDIF $!: Configure runs within the UU subdirectory $ SET DEFAULT [.UU] @@ -586,7 +586,7 @@ $ GOTO Clean_up $ ENDIF $ ELSE $ echo4 "Looks good..." -$ DELETE/NOLOG MISSING.; +$ DELETE/NOLOG/NOCONFIRM MISSING.; $ ENDIF ! (miss_list .NES. "") $ ENDIF ! (manifestfound .EQS. "") ELSE $! @@ -878,7 +878,7 @@ $! ...and only accept symbols if they're in the | delimited list below $! $ config_symbols0 ="|archlib|archlibexp|bin|binexp|builddir|cf_email|config_sh|installarchlib|installbin|installman1dir|installman3dir|" $ config_symbols1 ="|installprivlib|installscript|installsitearch|installsitelib|most|oldarchlib|oldarchlibexp|osname|pager|perl_symbol|perl_verb|" -$ config_symbols2 ="|prefix|privlib|privlibexp|scriptdir|sitearch|sitearchexp|sitelib|sitelib_stem|sitelibexp|try_cxx|use64bitall|use64bitint|" +$ config_symbols2 ="|prefix|privlib|privlibexp|scriptdir|sitearch|sitearchexp|sitebin|sitelib|sitelib_stem|sitelibexp|try_cxx|use64bitall|use64bitint|" $ config_symbols3 ="|usecasesensitive|usedefaulttypes|usedevel|useieee|useithreads|usemultiplicity|usemymalloc|usedebugging_perl|useperlio|usesecurelog|" $ config_symbols4 ="|usethreads|usevmsdebug|" $! @@ -1446,6 +1446,16 @@ $ rp = F$FAO("!AS!/!AS",rp,"[ ''dflt' ] ") $ GOSUB myread $ bin = ans $! +$!: determine where add-on public executables go +$ IF F$TYPE(sitebin) .NES. "" +$ THEN dflt = sitebin +$ ELSE dflt = "''vms_prefix':[bin.''archname']" +$ ENDIF +$ rp = "Pathname where the add-on public executables should be installed? " +$ rp = F$FAO("!AS!/!AS",rp,"[ ''dflt' ] ") +$ GOSUB myread +$ sitebin = ans +$! $!: determine where manual pages are on this system $!: What suffix to use on installed man pages $!: see if we can have long filenames @@ -1464,6 +1474,8 @@ $ IF F$TYPE(sitearch) .EQS. "" THEN - sitearch="''vms_prefix':[lib.site_perl.''archname']" $ IF F$TYPE(sitelib) .EQS. "" THEN - sitelib ="''vms_prefix':[lib.site_perl]" +$ IF F$TYPE(sitebin) .EQS. "" THEN - + sitebin="''vms_prefix':[bin.''archname']" $ ENDIF !%Config-I-VMS, skip "where install" questions $! $! These derived locations can be set whether we've opted to @@ -1528,12 +1540,12 @@ $ WRITE CONFIG " exit(0);" $ WRITE CONFIG "}" $ CLOSE CONFIG $! -$! DEFINE SYS$ERROR _NLA0: -$! DEFINE SYS$OUTPUT _NLA0: +$ SET NOON +$ DEFINE/USER_MODE SYS$ERROR _NLA0: +$ DEFINE/USER_MODE SYS$OUTPUT _NLA0: $ cc/NoObj/list=ccvms.lis ccvms.c $ tmp = $status -$! DEASSIGN SYS$OUTPUT -$! DEASSIGN SYS$ERROR +$ SET ON $ IF (silent) THEN GOSUB Shut_up $ IF tmp.NE.%X10B90001 $ THEN @@ -1553,9 +1565,9 @@ $ IF .NOT.silent $ THEN $ echo "Will try cc/decc..." $ ENDIF +$ SET NOON $ DEFINE/USER_MODE SYS$ERROR NL: $ DEFINE/USER_MODE SYS$OUTPUT NL: -$ SET NOON $ cc/decc/NoObj/list=ccvms.lis ccvms.c $ tmp = $status $ SET ON @@ -1579,10 +1591,12 @@ $! $Gcc_initial_check: $ echo "Checking for gcc" $ OPEN/WRITE CONFIG gccvers.lis +$ SET NOON $ DEFINE/USER_MODE SYS$ERROR CONFIG $ DEFINE/USER_MODE SYS$OUTPUT CONFIG $ 'gcc_symbol'/noobj/version _nla0: $ tmp = $status +$ SET ON $ IF (silent) THEN GOSUB Shut_up $ CLOSE CONFIG $ IF (tmp.NE.%X10000001).and.(tmp.ne.%X00030001) @@ -1791,7 +1805,7 @@ $ CLOSE CONFIG $ echo "You are using Dec C ''line'" $ ccversion = line $ Dec_C_Version = F$INTEGER(line) -$ IF Dec_C_Version .GE. 60200000 +$ IF Dec_C_Version .GE. 60200000 .AND. archname .NES. "VMS_VAX" $ THEN $ echo4 "adding /NOANSI_ALIAS qualifier to ccflags." $ ccflags = ccflags + "/NOANSI_ALIAS" @@ -2142,8 +2156,7 @@ $ echo4 "Hmm... Looks like you have SOCKETSHR Berkeley networking support." $ ELSE $ Has_socketshr = "F" $ ENDIF -$ IF (ccname .EQS. "DEC" .AND. Dec_C_Version .GE. 50200000) .OR. - - (ccname .EQS. "CXX") +$ IF (ccname .EQS. "DEC" .AND. Dec_C_Version .GE. 50200000) .OR. (ccname .EQS. "CXX") $ THEN $ Has_Dec_C_Sockets = "T" $ echo "" @@ -2160,9 +2173,9 @@ $ echo "build into Perl?" $ IF Has_Dec_C_Sockets $ THEN $ dflt = "DECC" -$ else +$ ELSE $ dflt = "SOCKETSHR" -$ endif +$ ENDIF $ rp = "Choose socket stack (NONE" $ IF Has_socketshr THEN rp = rp + ",SOCKETSHR" $ IF Has_Dec_C_Sockets THEN rp = rp + ",DECC" @@ -2171,8 +2184,8 @@ $ GOSUB myread $ Has_Dec_C_Sockets = "F" $ Has_socketshr = "F" $ ans = F$EDIT(ans,"TRIM,COMPRESS,LOWERCASE") -$ IF ans.eqs."decc" then Has_Dec_C_Sockets = "T" -$ IF ans.eqs."socketshr" then Has_socketshr = "T" +$ IF ans.eqs."decc" THEN Has_Dec_C_Sockets = "T" +$ IF ans.eqs."socketshr" THEN Has_socketshr = "T" $ ENDIF $! $! @@ -2285,38 +2298,54 @@ $! Ask about threads, if appropriate $ IF ccname .EQS. "DEC" .OR. ccname .EQS. "CXX" $ THEN $ echo "" -$ echo "This version of Perl can be built with threads. While really nifty," -$ echo "they are a beta feature, and there is a speed penalty for perl" -$ echo "programs if you build with threads *even if you do not use them*." +$ echo "Perl can be built to take advantage of threads on some systems." +$ echo "To do so, configure.com can be run with -""Dusethreads""." +$ echo "" +$ echo "Note that Perl built with threading support runs slightly slower" +$ echo "and uses more memory than plain Perl. The current implementation" +$ echo "is believed to be stable, but it is fairly new, and so should be" +$ echo "treated with caution." +$ echo "" $ bool_dflt = "n" $ if f$type(usethreads) .nes. "" $ then $ if usethreads .or. usethreads .eqs. "define" then bool_dflt="y" $ endif -$ rp = "Build with threads? [''bool_dflt'] " +$! Catch cases where user specified ithreads or 5005threads but +$! forgot -Dusethreads +$ if f$type(useithreads) .nes. "" +$ then +$ if useithreads .or. useithreads .eqs. "define" then bool_dflt="y" +$ endif +$ if f$type(use5005threads) .nes. "" +$ then +$ if use5005threads .or. use5005threads .eqs. "define" then bool_dflt="y" +$ endif +$ echo "If this doesn't make any sense to you, just accept the default '" + bool_dflt + "'." +$ rp = "Build a threading Perl? [''bool_dflt'] " $ GOSUB myread $ if ans $ THEN $ use_threads="T" -$ ! Shall we do the 5.005-stype threads, or IThreads? -$ echo "As of 5.5.640, Perl has two different internal threading" -$ echo "implementations, the 5.005 version (5005threads) and an" -$ echo "interpreter-based version (ithreads) that has one" -$ echo "interpreter per thread. Both are very experimental. This" -$ echo "arrangement exists to help developers work out which one" -$ echo "is better." +$ ! Shall we do the 5.005-type threads, or IThreads? +$ echo "Since release 5.6, Perl has had two different threading implementations," +$ echo "the newer interpreter-based version (ithreads) with one interpreter per" +$ echo "thread, and the older 5.005 version (5005threads)." +$ echo "The 5005threads version is effectively unmaintained and will probably be" +$ echo "removed in Perl 5.10, so there should be no need to build a Perl using it" +$ echo "unless needed for backwards compatibility with some existing 5.005threads" +$ echo "code." $ echo "" -$ echo "If you are a casual user, you probably do not want" -$ echo "interpreter-threads at this time. There doesn't yet exist" -$ echo "a way to create threads from within Perl in this model," -$ echo "i.e., ""use Thread;"" will NOT work." -$ echo "" -$ bool_dflt = "n" +$ bool_dflt = "y" $ if f$type(useithreads) .nes. "" $ then -$ if useithreads .eqs. "define" then bool_dflt="y" +$ if useithreads .eqs. "undef" then bool_dflt="n" +$ endif +$ if f$type(use5005threads) .nes. "" +$ then +$ if use5005threads .or. use5005threads .eqs. "define" then bool_dflt="n" $ endif -$ rp = "Build with Interpreter threads? [''bool_dflt'] " +$ rp = "Use the newer intepreter-based ithreads? [''bool_dflt'] " $ GOSUB myread $ use_ithreads=ans $ if use_ithreads @@ -2518,10 +2547,8 @@ $ IF F$EXTRACT(0,4,line) .EQS. "ext/" THEN - $ IF xxx .EQS. "DynaLoader" THEN goto ext_loop ! omit $ IF xxx .EQS. "SDBM_File/sdbm" THEN goto ext_loop ! sub extension - omit $ IF xxx .EQS. "Devel/PPPort/harness" THEN goto ext_loop ! sub extension - omit -$ IF xxx .EQS. "Encode/CN" THEN goto ext_loop ! sub extension - omit -$ IF xxx .EQS. "Encode/JP" THEN goto ext_loop ! sub extension - omit -$ IF xxx .EQS. "Encode/KR" THEN goto ext_loop ! sub extension - omit -$ IF xxx .EQS. "Encode/TW" THEN goto ext_loop ! sub extension - omit +$ IF F$EXTRACT(0,7,xxx) .EQS. "Encode/" THEN goto ext_loop ! sub extension - omit +$ IF xxx .EQS. "B/C" THEN goto ext_loop ! sub extension - omit $ IF F$EXTRACT(0,8,line) .EQS. "vms/ext/" THEN - xxx = "VMS/" + F$EXTRACT(8,line_len - 20,line) $ known_extensions = known_extensions + " ''xxx'" @@ -2548,6 +2575,7 @@ $ dflt = dflt - "Socket" ! optional on VMS $ ENDIF $ IF .NOT. use_ithreads THEN dflt = dflt - "threads/shared" $ IF .NOT. use_ithreads THEN dflt = dflt - "threads" +$ IF .NOT. use_threads THEN dflt = dflt - "Thread" $ dflt = F$EDIT(dflt,"TRIM,COMPRESS") $! $! Ask for their default list of extensions to build @@ -2655,7 +2683,7 @@ $ build = ans $ ENDIF $ ENDIF $! -$ DELETE/NOLOG Makefile.; +$ DELETE/NOLOG/NOCONFIRM Makefile.; $ GOTO Beyond_open $Open_error: $ TYPE SYS$INPUT: @@ -2935,7 +2963,7 @@ $ usedl="define" $ startperl="""$ perl 'f$env(\""procedure\"")' \""'"+"'p1'\"" \""'"+"'p2'\"" \""'"+"'p3'\"" \""'"+"'p4'\"" \""'"+"'p5'\"" \""'"+"'p6'\"" \""'"+"'p7'\"" \""'"+"'p8'\""!\n" $ startperl=startperl + "$ exit++ + ++$status!=0 and $exit=$status=undef; while($#ARGV != -1 and $ARGV[$#ARGV] eq '"+"'){pop @ARGV;}""" $! -$ IF ((Use_Threads) .AND. (vms_ver .LES. "6.2")) +$ IF ((use_threads) .AND. (vms_ver .LES. "6.2")) $ THEN $ libs="SYS$SHARE:CMA$LIB_SHR.EXE/SHARE SYS$SHARE:CMA$RTL.EXE/SHARE SYS$SHARE:CMA$OPEN_LIB_SHR.exe/SHARE SYS$SHARE:CMA$OPEN_RTL.exe/SHARE" $ ELSE @@ -2957,24 +2985,12 @@ $! $ IF use64bitint .OR. use64bitint .EQS. "define" $ THEN $ d_PRId64 = "define" -$ d_PRIEUldbl = "define" -$ d_PRIFUldbl = "define" -$ d_PRIGUldbl = "define" -$ d_PRIeldbl = "define" -$ d_PRIfldbl = "define" -$ d_PRIgldbl = "define" $ d_PRIu64 = "define" $ d_PRIo64 = "define" $ d_PRIx64 = "define" $ d_PRIXU64 = "define" $ sPRId64 = """Ld""" -$ sPRIEUldbl = """LE""" -$ sPRIFUldbl = """LF""" -$ sPRIGUldbl = """LG""" $ sPRIXU64 = """LX""" -$ sPRIeldbl = """Le""" -$ sPRIfldbl = """Lf""" -$ sPRIgldbl = """Lg""" $ sPRIi64 = """Li""" $ sPRIo64 = """Lo""" $ sPRIu64 = """Lu""" @@ -2989,24 +3005,12 @@ $ d_isnanl = "define" $ d_modfl = "define" $ ELSE $ d_PRId64 = "undef" -$ d_PRIEUldbl = "define" -$ d_PRIFUldbl = "define" -$ d_PRIGUldbl = "define" $ d_PRIXU64 = "undef" -$ d_PRIeldbl = "define" -$ d_PRIfldbl = "undef" -$ d_PRIgldbl = "undef" $ d_PRIu64 = "undef" $ d_PRIo64 = "undef" $ d_PRIx64 = "undef" $ sPRId64 = "" -$ sPRIEUldbl = """E""" -$ sPRIFUldbl = """F""" -$ sPRIGUldbl = """G""" $ sPRIXU64 = """lX""" -$ sPRIeldbl = """e""" -$ sPRIfldbl = """f""" -$ sPRIgldbl = """g""" $ sPRIi64 = "" $ sPRIo64 = "" $ sPRIu64 = "" @@ -3020,12 +3024,10 @@ $ d_isnan = "undef" $ d_isnanl = "undef" $ d_modfl = "undef" $ ENDIF -$ d_SCNfldbl = d_PRIfldbl -$ sSCNfldbl = sPRIfldbl ! expect consistency $! $! Now some that we build up $! -$ IF Use_Threads +$ IF use_threads $ THEN $ IF use_5005_threads $ THEN @@ -3230,6 +3232,7 @@ $! Check for long double size $! $ OS $ WS "#if defined(__DECC) || defined(__DECCXX)" +$ WS "#pragma message disable ALL" ! VAX compilers may have distracting informationals $ WS "#include " $ WS "#endif" $ WS "#include " @@ -3255,6 +3258,37 @@ $ d_longdbl = "define" $ echo "Your long doubles are ''longdblsize' bytes long." $ ENDIF $! +$ IF d_longdbl .OR. d_longdbl .EQS. "define" +$ THEN +$ d_PRIEUldbl = "define" +$ d_PRIFUldbl = "define" +$ d_PRIGUldbl = "define" +$ d_PRIeldbl = "define" +$ d_PRIfldbl = "define" +$ d_PRIgldbl = "define" +$ sPRIEUldbl = """LE""" +$ sPRIFUldbl = """LF""" +$ sPRIGUldbl = """LG""" +$ sPRIeldbl = """Le""" +$ sPRIfldbl = """Lf""" +$ sPRIgldbl = """Lg""" +$ ELSE +$ d_PRIEUldbl = "undef" +$ d_PRIFUldbl = "undef" +$ d_PRIGUldbl = "undef" +$ d_PRIeldbl = "undef" +$ d_PRIfldbl = "undef" +$ d_PRIgldbl = "undef" +$ sPRIEUldbl = "" +$ sPRIFUldbl = "" +$ sPRIGUldbl = "" +$ sPRIeldbl = "" +$ sPRIfldbl = "" +$ sPRIgldbl = "" +$ ENDIF +$ d_SCNfldbl = d_PRIfldbl +$ sSCNfldbl = sPRIfldbl ! expect consistency +$! $!: check for long long $ OS $ WS "#if defined(__DECC) || defined(__DECCXX)" @@ -3342,6 +3376,25 @@ $ tmp = "unistd.h" $ GOSUB inhdr $ i_unistd = tmp $! +$! do we have getppid()? +$! +$ IF i_unistd .EQS. "define" +$ THEN +$ OS +$ WS "#include " +$ WS "#include " +$ WS "int main() {" +$ WS "printf(""%d\n"",getppid());" +$ WS "return(0);" +$ WS "}" +$ CS +$ tmp = "getppid" +$ GOSUB inlibc +$ d_getppid = tmp +$ ELSE +$ d_getppid = "undef" +$ ENDIF +$! $!: see if this is a libutil.h system $! $ tmp = "libutil.h" @@ -4712,7 +4765,12 @@ $ d_wctomb="define" $ i_locale="define" $ i_langinfo="define" $ d_locconv="define" -$ d_nl_langinfo="define" +$ IF vms_ver .GES. "6.2" +$ THEN +$ d_nl_langinfo="define" +$ ELSE +$ d_nl_langinfo="undef" +$ ENDIF $ d_setlocale="define" $ vms_cc_type="decc" $ ELSE @@ -5068,6 +5126,9 @@ $ WC "PERL_VERSION='" + patchlevel + "'" $ WC "PERL_SUBVERSION='" + subversion + "'" $ WC "PERL_API_VERSION='" + api_version + "'" $ WC "PERL_API_SUBVERSION='" + api_subversion + "'" +$ WC "_a='" + lib_ext + "'" +$ WC "_exe='" + exe_ext + "'" +$ WC "_o='" + obj_ext + "'" $ WC "alignbytes='" + alignbytes + "'" $ WC "aphostname='write sys$output f$edit(f$getsyi(\""SCSNODE\""),\""TRIM,LOWERCASE\"")'" $ WC "ar='" + "'" @@ -5126,7 +5187,6 @@ $ WC "d_attribut='" + d_attribut + "'" $ WC "d_bcmp='" + d_bcmp + "'" $ WC "d_bcopy='" + d_bcopy + "'" $ WC "d_bincompat3='undef'" -$ WC "d_bincompat5005='undef'" $! WC "d_bsdpgrp='undef'" $ WC "d_bsdgetpgrp='undef'" $ WC "d_bsdsetpgrp='undef'" @@ -5214,7 +5274,7 @@ $ WC "d_getpent='" + d_getpent + "'" $ WC "d_getpgid='undef'" $ WC "d_getpgrp2='undef'" $ WC "d_getpgrp='undef'" -$ WC "d_getppid='undef'" +$ WC "d_getppid='" + d_getppid + "'" $ WC "d_getprior='undef'" $ WC "d_getprotoprotos='" + d_getprotoprotos + "'" $ WC "d_getprpwnam='undef'" @@ -5407,6 +5467,7 @@ $ WC "d_tcgetpgrp='undef'" $ WC "d_tcsetpgrp='undef'" $ WC "d_telldir='define'" $ WC "d_telldirproto='define'" +$ WC "d_time='define'" $ WC "d_times='define'" $ IF ("''F$EXTRACT(1,3, F$GETSYI(""VERSION""))'".GES."7.0") $ THEN @@ -5443,6 +5504,9 @@ $ WC "d_wctomb='" + d_wctomb + "'" $ WC "d_writev='undef'" $ WC "db_hashtype=' '" $ WC "db_prefixtype=' '" +$ WC "db_version_major='" + "'" +$ WC "db_version_minor='" + "'" +$ WC "db_version_patch='" + "'" $ WC "dbgprefix='" + dbgprefix + "'" $ WC "defvoidused='15'" $ WC "devtype='" + devtype + "'" @@ -5493,6 +5557,8 @@ $ WC "i64type='" + i64type + "'" $ WC "i8size='" + i8size + "'" $ WC "i8type='" + i8type + "'" $ WC "i_arpainet='undef'" +$ WC "i_crypt='undef'" +$ WC "i_db='undef'" $ WC "i_dbm='undef'" $ WC "i_dirent='" + i_dirent + "'" $ WC "i_dlfcn='undef'" @@ -5572,9 +5638,12 @@ $ WC "installarchlib='" + installarchlib + "'" $ WC "installbin='" + installbin + "'" $ WC "installman1dir='" + installman1dir + "'" $ WC "installman3dir='" + installman3dir + "'" +$ WC "installprefix='" + vms_prefix + "'" +$ WC "installprefixexp='" + vms_prefix + ":'" $ WC "installprivlib='" + installprivlib + "'" $ WC "installscript='" + installscript + "'" $ WC "installsitearch='" + installsitearch + "'" +$ WC "installsitebin='" + sitebin + "'" $ WC "installsitelib='" + installsitelib + "'" $ WC "installusrbinperl='undef'" $ WC "intsize='" + intsize + "'" @@ -5636,6 +5705,7 @@ $ WC "path_sep='|'" $ WC "perl_root='" + perl_root + "'" ! VMS specific $trnlnm() $ WC "perladmin='" + perladmin + "'" $ WC "perllibs='" + perllibs + "'" +$ WC "perlpath='" + "''vms_prefix':[000000]Perl''ext'" + "'" $ WC "perl_symbol='" + perl_symbol + "'" ! VMS specific $ WC "perl_verb='" + perl_verb + "'" ! VMS specific $ WC "pgflquota='" + pgflquota + "'" @@ -5688,9 +5758,13 @@ $ WC "sig_size='" + sig_size + "'" $ WC "signal_t='" + signal_t + "'" $ WC "sitearch='" + sitearch + "'" $ WC "sitearchexp='" + sitearchexp + "'" +$ WC "sitebin='" + sitebin + "'" +$ WC "sitebinexp='" + sitebin + "'" $ WC "sitelib='" + sitelib + "'" $ WC "sitelib_stem='" + sitelib_stem + "'" $ WC "sitelibexp='" + sitelibexp + "'" +$ WC "siteprefix='" + vms_prefix + "'" +$ WC "siteprefixexp='" + vms_prefix + ":'" $ WC "sizesize='" + sizesize + "'" $ WC "sizetype='size_t'" $ WC "so='" + so + "'" @@ -5742,6 +5816,7 @@ $ WC "usereentrant='undef'" $ WC "usesecurelog='" + usesecurelog + "'" ! VMS-specific $ WC "usesocks='undef'" $ WC "usethreads='" + usethreads + "'" +$ WC "usevendorprefix='" + "'" ! try to say no, though we'll be ignored as of MM 5.90_01 $ WC "usevfork='true'" $ WC "usevmsdebug='" + usevmsdebug + "'" ! VMS-specific $ WC "uvoformat='" + uvoformat + "'" @@ -5750,9 +5825,15 @@ $ WC "uvtype='" + uvtype + "'" $ WC "uvuformat='" + uvuformat + "'" $ WC "uvxformat='" + uvxformat + "'" $ WC "uvXUformat='" + uvXUformat + "'" +$ WC "vendorarch='" + "'" $ WC "vendorarchexp='" + "'" +$ WC "vendorbin='" + "'" +$ WC "vendorbinexp='" + "'" $ WC "vendorlib_stem='" + "'" +$ WC "vendorlib='" + "'" $ WC "vendorlibexp='" + "'" +$ WC "vendorprefix='" + "'" +$ WC "vendorprefixexp='" + "'" $ WC "version='" + version + "'" $ WC "version_patchlevel_string='" + version_patchlevel_string + "'" $ WC "vms_cc_type='" + vms_cc_type + "'" ! VMS specific @@ -5761,19 +5842,33 @@ $ WC "vms_ver='" + vms_ver + "'" ! VMS specific $ WC "voidflags='15'" $ WC "xs_apiversion='" + version + "'" $ WC "PERL_CONFIG_SH='true'" - $! $! ## The UNIXy POSIXy reentrantey thingys ## +$! See "Appendix B, Version-Dependency Tables" in the C RTL +$! manual for when assorted _r functions became available. $! - -$ WC "asctime_r_proto='0'" -$ WC "crypt_r_proto='0'" -$ WC "ctermid_r_proto='0'" -$ WC "ctime_r_proto='0'" -$ WC "d_asctime_r='undef'" +$ IF use_threads .AND. vms_ver .GES. "7.2" +$ THEN +$ WC "asctime_r_proto='REENTRANT_PROTO_B_SB'" +$ WC "d_asctime_r='define'" +$ WC "ctime_r_proto='REENTRANT_PROTO_B_SB'" +$ WC "d_ctime_r='define'" +$ ELSE +$ WC "asctime_r_proto='0'" +$ WC "d_asctime_r='undef'" +$ WC "ctime_r_proto='0'" +$ WC "d_ctime_r='undef'" +$ ENDIF +$ IF use_threads .AND. vms_ver .GES. "7.3-1" +$ THEN +$ WC "readdir_r_proto='REENTRANT_PROTO_I_TSR'" +$ WC "d_readdir_r='define'" +$ ELSE +$ WC "readdir_r_proto='0'" +$ WC "d_readdir_r='undef'" +$ ENDIF $ WC "d_crypt_r='undef'" $ WC "d_ctermid_r='undef'" -$ WC "d_ctime_r='undef'" $ WC "d_drand48_r='undef'" $ WC "d_endgrent_r='undef'" $ WC "d_endhostent_r='undef'" @@ -5801,11 +5896,10 @@ $ WC "d_getservbyname_r='undef'" $ WC "d_getservbyport_r='undef'" $ WC "d_getservent_r='undef'" $ WC "d_getspnam_r='undef'" -$ WC "d_gmtime_r='undef'" -$ WC "d_localtime_r='undef'" +$ WC "d_gmtime_r='undef'" ! leave undef'd; we use my_gmtime +$ WC "d_localtime_r='undef'" ! leave undef'd; we use my_localtime $ WC "d_random_r='undef'" $ WC "d_readdir64_r='undef'" -$ WC "d_readdir_r='undef'" $ WC "d_setgrent_r='undef'" $ WC "d_sethostent_r='undef'" $ WC "d_setlocale_r='undef'" @@ -5818,6 +5912,8 @@ $ WC "d_srandom_r='undef'" $ WC "d_strerror_r='undef'" $ WC "d_tmpnam_r='undef'" $ WC "d_ttyname_r='undef'" +$ WC "ctermid_r_proto='0'" +$ WC "crypt_r_proto='0'" $ WC "drand48_r_proto='0'" $ WC "endgrent_r_proto='0'" $ WC "endhostent_r_proto='0'" @@ -5846,11 +5942,9 @@ $ WC "getservbyport_r_proto='0'" $ WC "getservent_r_proto='0'" $ WC "getspnam_r_proto='0'" $ WC "gmtime_r_proto='0'" -$ WC "i_crypt='undef'" $ WC "localtime_r_proto='0'" $ WC "random_r_proto='0'" $ WC "readdir64_r_proto='0'" -$ WC "readdir_r_proto='0'" $ WC "setgrent_r_proto='0'" $ WC "sethostent_r_proto='0'" $ WC "setlocale_r_proto='0'" @@ -5862,8 +5956,7 @@ $ WC "srand48_r_proto='0'" $ WC "srandom_r_proto='0'" $ WC "strerror_r_proto='0'" $ WC "tmpnam_r_proto='0'" -$ WC "ttyname_r_proto='0' - +$ WC "ttyname_r_proto='0'" $! $! ##END WRITE NEW CONSTANTS HERE## $! @@ -5980,9 +6073,9 @@ $ mcr []munchconfig 'config_sh' [-]config_h.sh $ ! Concatenate them together $ copy [-]config.local,[-]config.main [-]config.h $! Clean up -$ DELETE/NOLOG [-]CONFIG.MAIN;* -$ DELETE/NOLOG [-]CONFIG.LOCAL;* -$ DELETE/NOLOG [-]CONFIG.FDL;* +$ DELETE/NOLOG/NOCONFIRM [-]CONFIG.MAIN;* +$ DELETE/NOLOG/NOCONFIRM [-]CONFIG.LOCAL;* +$ DELETE/NOLOG/NOCONFIRM [-]CONFIG.FDL;* $! $ IF ccname .EQS. "DEC" $ THEN @@ -6013,7 +6106,7 @@ $ ELSE $ SOCKET_REPLACE = "SOCKET=" $ ENDIF $ ENDIF -$ IF Use_Threads +$ IF use_threads $ THEN $ IF (vms_ver .LES. "6.2") $ THEN @@ -6101,7 +6194,7 @@ $ Write Sys$Output "''targ'ing ''ext' . . ." $ On Error Then Continue $ EndIf $ If redesc Then - - miniperl "-I[''up'.lib]" Makefile.PL "INST_LIB=[''up'.lib]" "INST_ARCHLIB=[''up'.lib]" + miniperl "-I[''up'.lib]" Makefile.PL "INST_LIB=[''up'.lib]" "INST_ARCHLIB=[''up'.lib]" "PERL_CORE=1" $ makeutil 'targ' $ i = i + 1 $ Set Def &def @@ -6201,11 +6294,20 @@ $ EXIT $ ENDSUBROUTINE ! Bad_environment $ echo "" $ echo4 "Checking for dangerous pre-existing global symbols and logical names." -$ CALL Bad_environment "TMP" +$ CALL Bad_environment "EXT" +$ CALL Bad_environment "FOO" $ CALL Bad_environment "LIB" +$ CALL Bad_environment "LIST" +$ CALL Bad_environment "MIME" +$ CALL Bad_environment "POSIX" +$ CALL Bad_environment "SYS" $ CALL Bad_environment "T" -$ CALL Bad_environment "FOO" -$ CALL Bad_environment "EXT" +$ CALL Bad_environment "THREAD" +$ CALL Bad_environment "THREADS" +$ CALL Bad_environment "TIME" +$ CALL Bad_environment "TMP" +$ CALL Bad_environment "UNICODE" +$ CALL Bad_environment "UTIL" $ CALL Bad_environment "TEST" "SYMBOL" $ IF f$search("config.msg") .eqs. "" THEN echo "OK." $! @@ -6238,7 +6340,18 @@ $ ENDIF ! (.NOT.perl_symbol) $ echo "" $ echo4 "The perl_setup.com file is now being written..." $ file_2_find = "[-]perl_setup.com" -$ OPEN/WRITE CONFIG 'file_2_find' +$! +$! Folks are likely to want to edit perl_setup.com. +$! STMLF RFM plays nicer with ported editors than does VFC. +$! +$ CREATE [-]CONFIG.FDL +$ DECK +RECORD + FORMAT STREAM_LF +$ EOD +$ CREATE /FDL=[-]CONFIG.FDL 'file_2_find' +$ OPEN/APPEND CONFIG 'file_2_find' +$ DELETE/NOLOG/NOCONFIRM [-]CONFIG.FDL; $ WRITE CONFIG "$!" $ WRITE CONFIG "$! Perl_Setup.com ''cf_time'" $ IF cf_email.NES.perladmin @@ -6391,9 +6504,9 @@ $ echo4 "" $! $ IF ( F$SEARCH("config.msg").NES."" ) $ THEN -$ echo "Hmm. I also noted the following information while running:" -$ echo "" -$ type config.msg +$ echo4 "Hmm. I also noted the following information while running:" +$ echo4 "" +$ TYPE/OUTPUT=SYS$ERROR: config.msg $ SET PROTECTION=(SYSTEM:RWED,OWNER:RWED) config.msg $ DELETE/NOLOG/NOCONFIRM config.msg; $ ENDIF