X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/972e9305c0a0aa1fd93bbafc5c7ef4fd5f2686ac..8ac28360b8ecd8e80ea061435399e96607e3a844:/configure.com?ds=sidebyside diff --git a/configure.com b/configure.com index 60fc9e8..844ba77 100644 --- a/configure.com +++ b/configure.com @@ -880,7 +880,7 @@ $ config_symbols0 ="|archlib|archlibexp|bin|binexp|builddir|cf_email|config_sh $ config_symbols1 ="|installprivlib|installscript|installsitearch|installsitelib|most|oldarchlib|oldarchlibexp|osname|pager|perl_symbol|perl_verb|" $ 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|usefaststdio|" +$ config_symbols4 ="|usethreads|usevmsdebug|usefaststdio|usemallocwrap|" $! $ open/read CONFIG 'config_sh' $ rd_conf_loop: @@ -932,6 +932,7 @@ $! $! EOD $! echo " ","VMS_VAX" $! echo " ","VMS_AXP" +$! echo " ","VMS_IA64" $! : Now look for a hint file osname_osvers, unless one has been $! : specified already. $! TYPE SYS$INPUT: @@ -1105,17 +1106,24 @@ $! Please try to use either archname .EQS. "VMS_VAX" or archname .EQS. $! "VMS_AXP" from here on to allow cross-platform configuration (e.g. $! configure a VAX build on an Alpha). $! -$ IF (F$GETSYI("HW_MODEL") .LT. 1024) +$ IF (F$GETSYI("HW_MODEL") .LT. 1024 .AND. F$GETSYI("HW_MODEL") .GT. 0) $ THEN $ archname = "VMS_VAX" -$ otherarch = "an Alpha" +$ otherarch = "an Alpha or IA64" $ alignbytes="8" $ arch_type = "ARCH-TYPE=__VAX__" $ ELSE -$ archname = "VMS_AXP" -$ otherarch = "a VAX" +$ IF (F$GETSYI("ARCH_TYPE") .EQ. 2) +$ THEN +$ archname = "VMS_AXP" +$ otherarch = "a VAX or IA64" +$ arch_type = "ARCH-TYPE=__AXP__" +$ ELSE +$ archname = "VMS_IA64" +$ otherarch = "a VAX or Alpha" +$ arch_type = "ARCH-TYPE=__IA64__" +$ ENDIF $ alignbytes="8" -$ arch_type = "ARCH-TYPE=__AXP__" $ ENDIF $ dflt = archname $ rp = "What is your architecture name? [''archname'] " @@ -1142,6 +1150,10 @@ $ IF (archname.EQS."VMS_AXP") $ THEN $ macros = macros + """AXE=1""," $ ENDIF +$ IF (archname.EQS."VMS_IA64") +$ THEN +$ macros = macros + """IXE=1""," +$ ENDIF $ ENDIF $! $!: is AFS running? !sfn @@ -1581,7 +1593,8 @@ $ echo "You also have: ''line' ''archsufx' ''F$GETSYI("VERSION")'" $ vms_cc_available = vms_cc_available + "cc/decc " $ ENDIF $ ELSE -$ IF (F$LOCATE("DEC",line).NE.F$LENGTH(line)).or.(F$LOCATE("Compaq",line).NE.F$LENGTH(line)) +$ IF (F$LOCATE("DEC",line).NE.F$LENGTH(line)).or.(F$LOCATE("Compaq",line).NE.F$LENGTH(line)) - + .or.(F$LOCATE("hp",line).NE.F$LENGTH(line)) $ THEN $ vms_cc_dflt = "/decc" $ vms_cc_available = vms_cc_available + "cc/decc " @@ -1715,7 +1728,8 @@ $ IF ans.NES."" $ THEN $ ans = F$EDIT(ans,"TRIM, COMPRESS, LOWERCASE") $ Mcc = ans -$ IF (F$LOCATE("dec",ans).NE.F$LENGTH(ans)).or.(F$LOCATE("compaq",ans).NE.F$LENGTH(ans)) +$ IF (F$LOCATE("dec",ans).NE.F$LENGTH(ans)).or.(F$LOCATE("compaq",ans).NE.F$LENGTH(ans)) - + .or.(F$LOCATE("hp",ans).NE.F$LENGTH(ans)) $ THEN $ Mcc = "cc/decc" $! CPQ ? @@ -2002,7 +2016,12 @@ $ THEN $ read CONFIG line $ archsufx = "VAX" $ ELSE -$ archsufx = "AXP" +$ IF archname .EQS. "VMS_AXP" +$ THEN +$ archsufx = "AXP" +$ ELSE +$ archsufx = "IA64" +$ ENDIF $ ENDIF $ CLOSE CONFIG $ line = F$EDIT(line,"TRIM,COMPRESS") @@ -2249,7 +2268,7 @@ $ usemultiplicity="undef" $ ENDIF $! $! Ask if they want to build with 64-bit support -$ IF (archname.eqs."VMS_AXP").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1") +$ IF (archname.NES."VMS_VAX").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1") $ THEN $ bool_dflt = "n" $ IF F$TYPE(use64bitint) .NES. "" @@ -2354,8 +2373,8 @@ $ use_5005_threads="N" $ ELSE $ use_5005_threads="Y" $ ENDIF -$ ! Are they on VMS 7.1 on an alpha? -$ if (archname.eqs."VMS_AXP").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1") +$ ! Are they on VMS 7.1 on an alpha or itanium? +$ if (archname.nes."VMS_VAX").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1") $ THEN $ echo "" $ echo "Threaded perl can be linked to use multiple kernel threads" @@ -2376,7 +2395,7 @@ $ ENDIF $ ENDIF $ ENDIF $ ENDIF -$ IF archname .EQS. "VMS_AXP" +$ IF archname .NES. "VMS_VAX" $ THEN $! Case sensitive? $ echo "" @@ -2488,6 +2507,20 @@ $ d_alwdeftype = ans $ usedefaulttypes = "undef" $ if (d_alwdeftype) then usedefaulttypes = "define" $! +$! determine whether to use malloc wrapping +$ echo "" +$ bool_dflt = "y" +$ IF F$TYPE(usemallocwrap) .nes. "" +$ then +$ if .NOT. usemallocwrap .or. usemallocwrap .eqs. "undef" then bool_dflt = "n" +$ endif +$ rp = "Do you wish to wrap malloc calls to protect against potential overflows? [''bool_dflt'] " +$ GOSUB myread +$ IF ans +$ THEN usemallocwrap = "define" +$ ELSE usemallocwrap = "undef" +$ ENDIF +$! $! Ask if they want to use perl's memory allocator $ echo "" $ echo "Perl has a built-in memory allocator that is tuned for normal" @@ -2940,11 +2973,20 @@ $ dlext="axe" $ exe_ext=".axe" $ lib_ext=".alb" $ ELSE -$ obj_ext=".obj" -$ so="exe" -$ dlext="exe" -$ exe_ext=".exe" -$ lib_ext=".olb" +$ IF (sharedperl .AND. archname .EQS. "VMS_IA64") +$ THEN +$ obj_ext=".ibj" +$ so="ixe" +$ dlext="ixe" +$ exe_ext=".ixe" +$ lib_ext=".ilb" +$ ELSE +$ obj_ext=".obj" +$ so="exe" +$ dlext="exe" +$ exe_ext=".exe" +$ lib_ext=".olb" +$ ENDIF $ ENDIF $ dlobj="dl_vms''obj_ext'" $! @@ -3668,6 +3710,13 @@ $ tmp = "sys/file.h" $ GOSUB inhdr $ i_sysfile = tmp $! +$! +$! Check for sys/ioctl.h +$! +$ tmp = "sys/ioctl.h" +$ GOSUB inhdr +$ i_sysioctl = tmp +$! $! Check for sys/utsname.h $! $ tmp = "sys/utsname.h" @@ -4498,6 +4547,23 @@ $ ELSE $ d_getsent="undef" $ ENDIF $! +$! Check for nanosleep +$! +$ OS +$ WS "#if defined(__DECC) || defined(__DECCXX)" +$ WS "#include " +$ WS "#endif" +$ WS "#include " +$ WS "int main()" +$ WS "{" +$ WS "int asleep = nanosleep(NULL,NULL);" +$ WS "exit(0);" +$ WS "}" +$ CS +$ tmp = "nanosleep" +$ GOSUB inlibc +$ d_nanosleep = tmp +$! $! Check for socklen_t $! $ IF Has_Dec_C_Sockets .OR. Has_Socketshr @@ -5074,6 +5140,7 @@ $ WS " iss = ((iss&1)==1 && code == 0x1234);" $ WS " printf(""%d\n"",iss);" $ WS "}" $ CS +$ ON ERROR THEN CONTINUE $ GOSUB compile $ IF tmp .EQS. "1" $ THEN @@ -5158,6 +5225,7 @@ $ WC "Mcc='" + Mcc + "'" $ WC "PERL_REVISION='" + revision + "'" $ WC "PERL_VERSION='" + patchlevel + "'" $ WC "PERL_SUBVERSION='" + subversion + "'" +$ WC "PERL_API_REVISION='" + api_revision + "'" $ WC "PERL_API_VERSION='" + api_version + "'" $ WC "PERL_API_SUBVERSION='" + api_subversion + "'" $ WC "_a='" + lib_ext + "'" @@ -5376,6 +5444,7 @@ $ WC "d_msghdr_s='undef'" $ WC "d_msync='" + d_msync + "'" $ WC "d_munmap='" + d_munmap + "'" $ WC "d_mymalloc='" + d_mymalloc + "'" +$ WC "d_nanosleep='" + d_nanosleep + "'" $ WC "d_nice='define'" $ WC "d_nl_langinfo='" + d_nl_langinfo + "'" $ WC "d_nv_preserves_uv='" + d_nv_preserves_uv + "'" @@ -5529,7 +5598,6 @@ $ WC "d_unlink_all_versions='undef'" $ WC "d_unordered='undef'" $ WC "d_usleep='" + d_usleep + "'" $ WC "d_usleepproto='" + d_usleep + "'" -$ WC "d_nanosleep='undef'" $ WC "d_ustat='undef'" $ WC "d_vendorarch='undef'" $ WC "d_vendorlib='undef'" @@ -5642,7 +5710,7 @@ $ WC "i_sunmath='undef'" $ WC "i_sysaccess='" + i_sysaccess + "'" $ WC "i_sysdir='undef'" $ WC "i_sysfile='" + i_sysfile + "'" -$ WC "i_sysioctl='undef'" +$ WC "i_sysioctl='" + i_sysioctl + "'" $ WC "i_syslog='" + i_syslog + "'" $ WC "i_sysmman='undef'" $ WC "i_sysmode='" + i_sysmode + "'" @@ -5713,6 +5781,7 @@ $ WC "lseektype='int'" $ WC "mab='" + "'" $ WC "make='" + make + "'" $ WC "malloctype='void *'" +$ WC "usemallocwrap='" + usemallocwrap + "'" $ WC "man1ext='rno'" $ WC "man3ext='rno'" $ WC "mmaptype='void *'" @@ -5752,7 +5821,6 @@ $ WC "perl_symbol='" + perl_symbol + "'" ! VMS specific $ WC "perl_verb='" + perl_verb + "'" ! VMS specific $ WC "pgflquota='" + pgflquota + "'" $ WC "pidtype='" + pidtype + "'" -$ WC "pm_apiversion='" + version + "'" $ WC "prefix='" + vms_prefix + "'" $ WC "prefixexp='" + vms_prefix + ":'" $ WC "privlib='" + privlib + "'" @@ -5883,7 +5951,6 @@ $ WC "vms_cc_type='" + vms_cc_type + "'" ! VMS specific $ WC "vms_prefix='" + vms_prefix + "'" ! VMS specific $ WC "vms_ver='" + vms_ver + "'" ! VMS specific $ WC "voidflags='15'" -$ WC "xs_apiversion='" + version + "'" $ WC "PERL_CONFIG_SH='true'" $! $! ## The UNIXy POSIXy reentrantey thingys ## @@ -6359,7 +6426,8 @@ $ echo "" $ echo4 "The perl.cld file is now being written..." $ OPEN/WRITE CONFIG 'file_2_find' $ ext = ".exe" -$ IF (sharedperl .AND. archname .EQS. "VMS_AXP") THEN ext := .AXE +$ IF (sharedperl .AND. F$EXTRACT(0,7,archname) .EQS. "VMS_AXP") THEN ext := .AXE +$ IF (sharedperl .AND. F$EXTRACT(0,8,archname) .EQS. "VMS_IA64") THEN ext := .IXE $ IF (use_vmsdebug_perl) $ THEN $ WRITE CONFIG "define verb dbgperl" @@ -6406,7 +6474,8 @@ $ WRITE CONFIG "$ define/translation=concealed ''vms_prefix' ''prefix'" $ WRITE CONFIG "$ ext = "".exe""" $ IF sharedperl $ THEN -$ WRITE CONFIG "$ if f$getsyi(""HW_MODEL"") .ge. 1024 then ext = "".AXE""" +$ WRITE CONFIG "$ if f$getsyi(""ARCH_TYPE"") .eq. 2 then ext = "".AXE""" +$ WRITE CONFIG "$ if f$getsyi(""ARCH_TYPE"") .eq. 3 then ext = "".IXE""" $ ENDIF $ IF (perl_symbol) $ THEN @@ -6453,20 +6522,21 @@ $ THEN $ WRITE CONFIG "$ dprofpp == """ + perl_setup_perl + " ''vms_prefix':[utils]dprofpp.com""" $ ENDIF $ WRITE CONFIG "$ enc2xs == """ + perl_setup_perl + " ''vms_prefix':[utils]enc2xs.com""" -$ WRITE CONFIG "$!find2perl == """ + perl_setup_perl + " ''vms_prefix':[utils]find2perl.com""" +$ WRITE CONFIG "$ find2perl == """ + perl_setup_perl + " ''vms_prefix':[utils]find2perl.com""" $ WRITE CONFIG "$ h2ph == """ + perl_setup_perl + " ''vms_prefix':[utils]h2ph.com""" $ WRITE CONFIG "$ h2xs == """ + perl_setup_perl + " ''vms_prefix':[utils]h2xs.com""" +$ WRITE CONFIG "$ instmodsh == """ + perl_setup_perl + " ''vms_prefix':[utils]instmodsh.com""" $ WRITE CONFIG "$ libnetcfg == """ + perl_setup_perl + " ''vms_prefix':[utils]libnetcfg.com""" -$ WRITE CONFIG "$!perlbug == """ + perl_setup_perl + " ''vms_prefix':[lib]perlbug.com""" +$ WRITE CONFIG "$ perlbug == """ + perl_setup_perl + " ''vms_prefix':[lib]perlbug.com""" $ WRITE CONFIG "$!perlcc == """ + perl_setup_perl + " ''vms_prefix':[utils]perlcc.com""" $ WRITE CONFIG "$ perldoc == """ + perl_setup_perl + " ''vms_prefix':[lib.pod]perldoc.com -t""" $ WRITE CONFIG "$ perlivp == """ + perl_setup_perl + " ''vms_prefix':[utils]perlivp.com""" $ WRITE CONFIG "$ piconv == """ + perl_setup_perl + " ''vms_prefix':[utils]piconv.com""" $ WRITE CONFIG "$ pl2pm == """ + perl_setup_perl + " ''vms_prefix':[utils]pl2pm.com""" -$ WRITE CONFIG "$ pod2html == """ + perl_setup_perl + " pod2html""" +$ WRITE CONFIG "$ pod2html == """ + perl_setup_perl + " ''vms_prefix':[utils]pod2html""" $ WRITE CONFIG "$ pod2latex == """ + perl_setup_perl + " ''vms_prefix':[lib.pod]pod2latex.com""" -$ WRITE CONFIG "$ pod2text == """ + perl_setup_perl + " pod2text""" -$ WRITE CONFIG "$!pod2man == """ + perl_setup_perl + " pod2man""" +$ WRITE CONFIG "$ pod2text == """ + perl_setup_perl + " ''vms_prefix':[utils]pod2text""" +$ WRITE CONFIG "$!pod2man == """ + perl_setup_perl + " ''vms_prefix':[utils]pod2man""" $ WRITE CONFIG "$ pod2usage == """ + perl_setup_perl + " ''vms_prefix':[utils]pod2usage.com""" $ WRITE CONFIG "$ podchecker == """ + perl_setup_perl + " ''vms_prefix':[utils]podchecker.com""" $ WRITE CONFIG "$ podselect == """ + perl_setup_perl + " ''vms_prefix':[utils]podselect.com"""