X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=configure.com;h=721b889e678555fa99b0956ecb91e5450ba5f3f7;hb=c2dc4c7d5e51c6211637044820c7a560da7e6268;hp=3a6456b23ee81d6054c5171e7968279fde39e0ba;hpb=63d52911fe68ef7d7ec09a7689281bfa19834d78;p=p5sagit%2Fp5-mst-13.2.git diff --git a/configure.com b/configure.com index 3a6456b..721b889 100644 --- a/configure.com +++ b/configure.com @@ -63,6 +63,7 @@ $ ccflags = "" $ static_ext = "" $ dynamic_ext = "" $ nonxs_ext = "" +$ nonxs_ext2 = "" $ vms_default_directory_name = F$ENVIRONMENT("DEFAULT") $ max_allowed_dir_depth = 3 ! e.g. [A.B.PERLxxx] not [A.B.C.PERLxxx] $! max_allowed_dir_depth = 2 ! e.g. [A.PERLxxx] not [A.B.PERLxxx] @@ -959,7 +960,7 @@ $ delete/symbol val $ delete/symbol dsym $ if f$type(usedebugging_perl) .nes. "" $ then -$ useperldebug = usedebugging_perl +$ DEBUGGING = usedebugging_perl $ delete/symbol usedebugging_perl $ endif $! @@ -2312,10 +2313,10 @@ $ echo "enables the -D switch, at the cost of some performance. It" $ echo "was mandatory on perl 5.005 and before on VMS, but is now" $ echo "optional. If you do not generally use it you should probably" $ echo "leave this off and gain a bit of extra speed." -$ bool_dflt = "y" -$ if f$type(useperldebug) .nes. "" +$ bool_dflt = "n" +$ if f$type(DEBUGGING) .nes. "" $ then -$ if f$extract(0,1,f$edit(useperldebug,"collapse,upcase")).eqs."N" .or. useperldebug .eqs. "undef" then bool_dflt="n" +$ if f$extract(0,1,f$edit(DEBUGGING,"collapse,upcase")).eqs."Y" .or. DEBUGGING .eqs. "define" then bool_dflt="y" $ endif $ rp = "Build a DEBUGGING version of Perl? [''bool_dflt'] " $ GOSUB myread @@ -2726,7 +2727,9 @@ $ xxx = "" $ OPEN/READ CONFIG 'manifestfound' $ext_loop: $ READ/END_OF_FILE=end_ext/ERROR=end_ext CONFIG line -$ IF F$EXTRACT(0,4,line) .NES. "ext/" THEN goto ext_loop +$ IF F$EXTRACT(0,4,line) .NES. "ext/" .AND. - + F$EXTRACT(0,5,line) .NES. "dist/".AND. - + F$EXTRACT(0,5,line) .NES. "cpan/" THEN goto ext_loop $ line = F$EDIT(line,"COMPRESS") $ line = F$ELEMENT(0," ",line) $ IF F$EXTRACT(0,4,line) .EQS. "ext/" @@ -2734,6 +2737,16 @@ $ THEN $ xxx = F$ELEMENT(1,"/",line) $ IF F$SEARCH("[-.ext]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop $ ENDIF +$ IF F$EXTRACT(0,5,line) .EQS. "dist/" +$ THEN +$ xxx = F$ELEMENT(1,"/",line) +$ IF F$SEARCH("[-.dist]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop +$ ENDIF +$ IF F$EXTRACT(0,5,line) .EQS. "cpan/" +$ THEN +$ xxx = F$ELEMENT(1,"/",line) +$ IF F$SEARCH("[-.cpan]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop +$ ENDIF $ IF xxx .EQS. "DynaLoader" THEN goto ext_loop ! omit $! $! (extspec = xxx) =~ tr!-!/! @@ -2760,14 +2773,21 @@ $ THEN $ xxx = nonxs_ext $ gosub may_already_have_extension $ ENDIF +$ IF $STATUS .EQ. 1 +$ THEN +$ xxx = nonxs_ext2 +$ gosub may_already_have_extension +$ ENDIF $ IF $STATUS .NE. 1 THEN goto ext_loop $ goto found_new_extension $! $ may_already_have_extension: $ idx = F$LOCATE(extspec, xxx) $ extlen = F$LENGTH(xxx) -$ IF idx .EQ. extlen THEN return 1 -$! But "Flirble" may just be part of "Acme-Flirble" +$ IF idx .EQ. extlen THEN return 1 ! didn't find it +$! But "Flirble" may just be part of "Acme-Flirble". This is not +$! bullet-proof because we may only be looking at one chunk of the +$! existing extension list. $ IF idx .GT. 0 .AND. F$EXTRACT(idx - 1, 1, xxx) .NES. " " $ THEN $ xxx = F$EXTRACT(idx + F$LENGTH(extspec) + 1, extlen, xxx) @@ -2784,11 +2804,17 @@ $ xxx = F$EXTRACT(F$LENGTH(extspec) + 1, extlen, xxx) $ ENDIF $! $ found_new_extension: -$ IF F$SEARCH("[-.ext.''extension_dir_name']*.xs") .NES. "" +$ IF F$SEARCH("[-.ext.''extension_dir_name']*.xs") .EQS. "" .AND. F$SEARCH("[-.dist.''extension_dir_name']*.xs") .EQS. "" .AND. F$SEARCH("[-.cpan.''extension_dir_name']*.xs") .EQS. "" $ THEN -$ known_extensions = known_extensions + " ''extspec'" +$! Bit if a hack to get around the 1K buffer on older systems. +$ IF F$LENGTH(nonxs_ext) .GT. 950 +$ THEN +$ nonxs_ext2 = nonxs_ext2 + " ''extspec'" +$ ELSE +$ nonxs_ext = nonxs_ext + " ''extspec'" +$ ENDIF $ ELSE -$ nonxs_ext = nonxs_ext + " ''extspec'" +$ known_extensions = known_extensions + " ''extspec'" $ ENDIF $ goto ext_loop $end_ext: @@ -2817,8 +2843,10 @@ $ dflt = dflt - "Socket" ! optional on VMS $ ENDIF $ dflt = dflt - "Win32API/File" - "Win32" ! need Dave Cutler's other project $ nonxs_ext = nonxs_ext - "Win32CORE" +$ nonxs_ext2 = nonxs_ext2 - "Win32CORE" $ dflt = F$EDIT(dflt,"TRIM,COMPRESS") $ nonxs_ext = F$EDIT(nonxs_ext,"TRIM,COMPRESS") +$ nonxs_ext2 = F$EDIT(nonxs_ext2,"TRIM,COMPRESS") $! $! Ask for their default list of extensions to build $ echo "" @@ -3025,7 +3053,7 @@ $! $ bool_dflt = "y" $ IF F$TYPE(useperlio) .NES. "" $ then -$ if f$extract(0,1,f$edit(useperlio,"collapse,upcase")) .eqs. "N" .or. useperlio .eqs. "undef" then bool_dflt = "n" +$ if .not. useperlio .or. useperlio .eqs. "undef" then bool_dflt = "n" $ endif $ IF .NOT. silent $ THEN @@ -5842,6 +5870,7 @@ $ WC "ccversion='" + ccversion + "'" $ WC "cf_by='" + cf_by + "'" $ WC "cf_email='" + cf_email + "'" $ WC "cf_time='" + cf_time + "'" +$ WC "charbits='8'" $ WC "config_args='" + config_args + "'" $ WC "config_sh='" + config_sh + "'" $ WC "cpp_stuff='" + cpp_stuff + "'" @@ -5885,6 +5914,8 @@ $ WC "d_attribute_noreturn='undef'" $ WC "d_attribute_pure='undef'" $ WC "d_attribute_unused='undef'" $ WC "d_attribute_warn_unused_result='undef'" +$ WC "d_prctl='undef'" +$ WC "d_prctl_set_name='undef'" $ WC "d_printf_format_null='undef'" $ WC "d_bcmp='" + d_bcmp + "'" $ WC "d_bcopy='" + d_bcopy + "'" @@ -6275,9 +6306,7 @@ $ WC "exe_ext='" + exe_ext + "'" $! $! The extensions symbols may be quite long $! -$ tmp = "extensions='" + nonxs_ext + " " + dynamic_ext + "'" -$ WC/symbol tmp -$ DELETE/SYMBOL tmp +$ WC/symbol "extensions='", nonxs_ext, " ", nonxs_ext2, " ", dynamic_ext, "'" $ WC "fflushNULL='define'" $ WC "fflushall='undef'" $ WC "fpostype='fpos_t'" @@ -6446,9 +6475,7 @@ $ WC "netdb_hlen_type='" + netdb_hlen_type + "'" $ WC "netdb_host_type='" + netdb_host_type + "'" $ WC "netdb_name_type='" + netdb_name_type + "'" $ WC "netdb_net_type='" + netdb_net_type + "'" -$ tmp = "nonxs_ext='" + nonxs_ext + "'" -$ WC/symbol tmp -$ DELETE/SYMBOL tmp +$ WC/symbol "nonxs_ext='", nonxs_ext, " ", nonxs_ext2, "'" $ WC "nveformat='" + nveformat + "'" $ WC "nvfformat='" + nvfformat + "'" $ WC "nvgformat='" + nvgformat + "'" @@ -6617,6 +6644,7 @@ $ WC "uvuformat='" + uvuformat + "'" $ WC "uvxformat='" + uvxformat + "'" $ WC "uvXUformat='" + uvXUformat + "'" $ WC "vendorarch='" + "'" +$ WC "vaproto='define'" $ WC "vendorarchexp='" + "'" $ WC "vendorbin='" + "'" $ WC "vendorbinexp='" + "'"