X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=configure.com;h=d5ea93253c9e47272bf35e1ea9347c05775a9146;hb=66cad4abfc5d793c52a82bd17877e19bb8276665;hp=52aae858d54f718da01cf391fdff8ff099e5f947;hpb=d83484c23e05e78c2e20b0a32d272cc03ff628bc;p=p5sagit%2Fp5-mst-13.2.git diff --git a/configure.com b/configure.com index 52aae85..d5ea932 100644 --- a/configure.com +++ b/configure.com @@ -61,6 +61,7 @@ $ use_pack_malloc = "N" $ use_debugmalloc = "N" $ ccflags = "" $ static_ext = "" +$ dynamic_ext = "" $ nonxs_ext = "" $ vms_default_directory_name = F$ENVIRONMENT("DEFAULT") $ max_allowed_dir_depth = 3 ! e.g. [A.B.PERLxxx] not [A.B.C.PERLxxx] @@ -368,11 +369,20 @@ $! $Shut_up: $ IF F$Mode() .eqs. "BATCH" $ THEN -$ STDOUT = F$PARSE(F$GETQUI("DISPLAY_ENTRY", "JOB_NAME"), - - F$GETQUI("DISPLAY_ENTRY", "LOG_SPECIFICATION"), ".LOG") -$ WRITE SYS$OUTPUT "Warning: Executing in batch mode. To avoid file locking conflicts," -$ WRITE SYS$OUTPUT "output intended for SYS$OUTPUT will be sent to a new version" +$ x = F$GETQUI("CANCEL_OPERATION") ! clear the deck +$ x = "THIS_JOB" +$ bproc_queue = f$getqui("DISPLAY_QUEUE","QUEUE_NAME","*",x) +$ bproc_entry = f$getqui("DISPLAY_JOB","ENTRY_NUMBER",,x) +$ bproc_name = f$getqui("DISPLAY_JOB","JOB_NAME",,x) +$ bproc_log_spec = f$getqui("DISPLAY_JOB","LOG_SPECIFICATION",,x) +$ STDOUT = F$PARSE(bproc_name, bproc_log_spec, ".LOG") +$ WRITE SYS$OUTPUT "Writing output of entry ''bproc_entry' in queue ''bproc_queue' to a new version of: " $ WRITE SYS$OUTPUT STDOUT +$ DELETE_/SYMBOL x +$ DELETE_/SYMBOL bproc_queue +$ DELETE_/SYMBOL bproc_entry +$ DELETE_/SYMBOL bproc_name +$ DELETE_/SYMBOL bproc_log_spec $ ELSE $ STDOUT = F$TRNLNM("SYS$OUTPUT") $ ENDIF @@ -2717,7 +2727,8 @@ $ 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/" .AND. - - F$EXTRACT(0,8,line) .NES. "vms/ext/" THEN goto ext_loop + 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/" @@ -2725,17 +2736,22 @@ $ THEN $ xxx = F$ELEMENT(1,"/",line) $ IF F$SEARCH("[-.ext]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop $ ENDIF -$ IF F$EXTRACT(0,8,line) .EQS. "vms/ext/" +$ IF F$EXTRACT(0,5,line) .EQS. "dist/" $ THEN -$ xxx = F$ELEMENT(2,"/",line) -$ IF F$SEARCH("[-.vms.ext]''xxx'.DIR;1") .EQS. "" THEN GOTO ext_loop -$ xxx = "VMS/" + xxx +$ 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!-!/! $ extspec = "" $ idx = 0 +$ extension_dir_name = xxx $ replace_dash_with_slash: $ before = F$ELEMENT(idx, "-", xxx) $ IF before .EQS. "-" THEN goto end_replace_dash_with_slash @@ -2750,10 +2766,19 @@ $ $ end_replace_dash_with_slash: $ $ xxx = known_extensions +$ gosub may_already_have_extension +$ IF $STATUS .EQ. 1 +$ THEN +$ xxx = nonxs_ext +$ 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 goto found_new_extension +$ IF idx .EQ. extlen THEN return 1 $! But "Flirble" may just be part of "Acme-Flirble" $ IF idx .GT. 0 .AND. F$EXTRACT(idx - 1, 1, xxx) .NES. " " $ THEN @@ -2764,14 +2789,19 @@ $! But "Foo" may just be part of "Foo-Bar" so check for equality. $ xxx = F$EXTRACT(idx, extlen - idx, xxx) $ IF F$ELEMENT(0, " ", xxx) .EQS. extspec $ THEN -$ GOTO ext_loop +$ RETURN 3 $ ELSE $ xxx = F$EXTRACT(F$LENGTH(extspec) + 1, extlen, xxx) GOTO may_already_have_extension $ ENDIF $! $ found_new_extension: -$ known_extensions = known_extensions + " ''extspec'" +$ 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 +$ nonxs_ext = nonxs_ext + " ''extspec'" +$ ELSE +$ known_extensions = known_extensions + " ''extspec'" +$ ENDIF $ goto ext_loop $end_ext: $ close CONFIG @@ -2779,6 +2809,7 @@ $ DELETE/SYMBOL xxx $ DELETE/SYMBOL idx $ DELETE/SYMBOL extspec $ DELETE/SYMBOL extlen +$ DELETE/SYMBOL extension_dir_name $ known_extensions = F$EDIT(known_extensions,"TRIM,COMPRESS") $ dflt = known_extensions $ IF ccname .NES. "DEC" .AND. ccname .NES. "CXX" @@ -2796,15 +2827,10 @@ $ IF .NOT. Has_socketshr .AND. .NOT. Has_Dec_C_Sockets $ THEN $ dflt = dflt - "Socket" ! optional on VMS $ ENDIF -$ ! Build this one only for threads without ithreads -$ IF F$TYPE(useithreads) .EQS. "" .OR. .NOT. use_threads -$ THEN -$ dflt = dflt - "Thread" -$ ELSE -$ IF useithreads .OR. useithreads .EQS. "define" THEN dflt = dflt - "Thread" -$ ENDIF -$ dflt = dflt - "Win32API/File" - "Win32CORE" - "Win32" ! need Dave Cutler's other project +$ dflt = dflt - "Win32API/File" - "Win32" ! need Dave Cutler's other project +$ nonxs_ext = nonxs_ext - "Win32CORE" $ dflt = F$EDIT(dflt,"TRIM,COMPRESS") +$ nonxs_ext = F$EDIT(nonxs_ext,"TRIM,COMPRESS") $! $! Ask for their default list of extensions to build $ echo "" @@ -2816,7 +2842,7 @@ $ echo "" $ echo "Which modules do you want to build into perl?" $ rp = "[''dflt'] " $ GOSUB myread -$ extensions = F$EDIT(ans,"TRIM,COMPRESS") +$ dynamic_ext = F$EDIT(ans,"TRIM,COMPRESS") $! $! %Config-I-VMS, determine build/make utility here (make gmake mmk mms) $ echo "" @@ -5949,6 +5975,7 @@ $ WC "d_ftello='" + d_ftello + "'" $ WC "d_futimes='undef'" $ WC "d_gdbmndbm_h_uses_prototypes='undef'" $ WC "d_gdbm_ndbm_h_uses_prototypes='undef'" +$ WC "d_getaddrinfo='undef'" $ WC "d_getcwd='define'" $ WC "d_getespwnam='undef'" $ WC "d_getfsstat='undef'" @@ -5963,6 +5990,7 @@ $ WC "d_getitimer='" + d_getitimer + "'" $ WC "d_getlogin='define'" $ WC "d_getmnt='undef'" $ WC "d_getmntent='undef'" +$ WC "d_getnameinfo='undef'" $ WC "d_getnbyaddr='" + d_getnbyaddr + "'" $ WC "d_getnbyname='" + d_getnbyname + "'" $ WC "d_getnent='" + d_getnent + "'" @@ -5994,6 +6022,8 @@ $ WC "d_ilogbl='undef'" $ WC "d_inc_version_list='undef'" $ WC "d_index='" + d_index + "'" $ WC "d_inetaton='undef'" +$ WC "d_inetntop='undef'" +$ WC "d_inetpton='undef'" $ WC "d_int64_t='" + d_int64_t + "'" $ WC "d_isascii='define'" $ WC "d_isfinite='undef'" @@ -6244,9 +6274,9 @@ $ WC "doublesize='" + doublesize + "'" $ WC "drand01='" + drand01 + "'" $ WC "dtrace='" + "'" $! -$! The extensions symbol may be quite long +$! The dynamic_ext symbol may be quite long $! -$ tmp = "dynamic_ext='" + extensions + "'" +$ tmp = "dynamic_ext='" + dynamic_ext + "'" $ WC/symbol tmp $ DELETE/SYMBOL tmp $ WC "eagain=' '" @@ -6255,9 +6285,9 @@ $ WC "embedmymalloc='" + usemymalloc + "'" $ WC "eunicefix=':'" $ WC "exe_ext='" + exe_ext + "'" $! -$! The extensions symbol may be quite long +$! The extensions symbols may be quite long $! -$ tmp = "extensions='" + extensions + "'" +$ tmp = "extensions='" + nonxs_ext + " " + dynamic_ext + "'" $ WC/symbol tmp $ DELETE/SYMBOL tmp $ WC "fflushNULL='define'" @@ -6428,7 +6458,9 @@ $ 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 + "'" -$ WC "nonxs_ext='" + nonxs_ext + "'" +$ tmp = "nonxs_ext='" + nonxs_ext + "'" +$ WC/symbol tmp +$ DELETE/SYMBOL tmp $ WC "nveformat='" + nveformat + "'" $ WC "nvfformat='" + nvfformat + "'" $ WC "nvgformat='" + nvgformat + "'" @@ -7157,7 +7189,7 @@ $ WRITE CONFIG "$ cpan2dist == """ + perl_setup_perl + " ''vms_prefix':[utils]c $! FIXME: "-" is an operator and illegal in a symbol name -- cpanp-run-perl can't work $!$ WRITE CONFIG "$ cpanp-run-perl == """ + perl_setup_perl + " ''vms_prefix':[utils]cpanp-run-perl.com""" $ WRITE CONFIG "$ cpanp == """ + perl_setup_perl + " ''vms_prefix':[utils]cpanp.com""" -$ IF F$LOCATE("Devel::DProf",extensions) .LT. F$LENGTH(extensions) +$ IF F$LOCATE("Devel::DProf",dynamic_ext) .LT. F$LENGTH(dynamic_ext) $ THEN $ WRITE CONFIG "$ dprofpp == """ + perl_setup_perl + " ''vms_prefix':[utils]dprofpp.com""" $ ENDIF