X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/db76cb3c1e2e7b3cb18b6ea4cef832197fd90c8e..7792a6f57ff2d26f28d2ef67be13cf7f9fd31ef3:/configure.com diff --git a/configure.com b/configure.com index 97c36fc..53fdd6a 100644 --- a/configure.com +++ b/configure.com @@ -118,11 +118,9 @@ $!: Private path used by Configure to find libraries. Its value !sfn $!: is prepended to libpth. This variable takes care of special !sfn $!: machines, like the mips. Usually, it should be empty. !sfn $!plibpth='' !sfn -$!: full support for void wanted by default !sfn -$!defvoidused=15 !sfn $!: List of libraries we want. !sfn $!libswanted='net socket inet nsl nm ndbm gdbm dbm db malloc dl' !sfn -$!libswanted="$libswanted dld ld sun m c cposix posix ndir dir crypt" !sfn +$!libswanted="$libswanted ld sun m c cposix posix ndir dir crypt" !sfn $!libswanted="$libswanted ucb bsd BSD PW x" !sfn $!: We probably want to search /usr/shlib before most other libraries. !sfn $!: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist. !sfn @@ -146,7 +144,7 @@ $ silent="" $ extractsh="" $ override="" $ knowitall="" -$ ccname="VAX" +$ ccname="DECC" $ Dec_C_Version = "" $ cxxversion = "" $ use_threads = "F" @@ -733,7 +731,7 @@ $ WRITE CONFIG - $ CLOSE CONFIG $ ENDIF $! -$ IF F$TYPE(usedevel) .EQS. "" THEN usedevel := n +$ IF F$TYPE(usedevel) .EQS. "" THEN usedevel = "undef" $ patchlevel_h = F$SEARCH("[-]patchlevel.h") $ IF (patchlevel_h.NES."") $ THEN @@ -980,7 +978,6 @@ $! $!First time through, eh? I have some defaults handy for the following systems: $! $! EOD -$! echo " ","VMS_VAX" $! echo " ","VMS_AXP" $! echo " ","VMS_IA64" $! : Now look for a hint file osname_osvers, unless one has been @@ -1163,25 +1160,24 @@ $! appendages later depending on configuration options. But we need the $! base name early because not all questions are worth asking on all $! platforms. $! -$! Please use F$ELEMENT(0,"-",archname) .EQS. "VMS_VAX" (or "VMS_AXP" or +$! Please use F$ELEMENT(0,"-",archname) .EQS. "VMS_AXP" (or $! "VMS_IA64") from here on to allow cross-platform configuration (e.g. -$! configure a VAX build on an Alpha). +$! configure a IA64 build on an Alpha). $! $ IF (F$GETSYI("HW_MODEL") .LT. 1024 .AND. F$GETSYI("HW_MODEL") .GT. 0) $ THEN -$ archname = "VMS_VAX" -$ otherarch = "an Alpha or IA64" -$ alignbytes="8" -$ arch_type = "ARCH-TYPE=__VAX__" +$ echo "Sorry, VAX is no longer supported by this Perl version." +$ echo "Please try Perl 5.22 or earlier" +$ exit 44 $ ELSE $ IF (F$GETSYI("ARCH_TYPE") .EQ. 2) $ THEN $ archname = "VMS_AXP" -$ otherarch = "a VAX or IA64" +$ otherarch = "IA64" $ arch_type = "ARCH-TYPE=__AXP__" $ ELSE $ archname = "VMS_IA64" -$ otherarch = "a VAX or Alpha" +$ otherarch = "Alpha" $ arch_type = "ARCH-TYPE=__IA64__" $ ENDIF $ alignbytes="8" @@ -1585,11 +1581,8 @@ $ CLOSE CONFIG $ echo "You are using Dec C ''line'" $ ccversion = line $ Dec_C_Version = F$INTEGER(line) -$ IF Dec_C_Version .GE. 60200000 .AND. F$ELEMENT(0, "-", archname) .NES. "VMS_VAX" -$ THEN -$ echo4 "adding /NOANSI_ALIAS qualifier to ccflags." -$ ccflags = ccflags + "/NOANSI_ALIAS" -$ ENDIF +$ echo4 "adding /NOANSI_ALIAS qualifier to ccflags." +$ ccflags = ccflags + "/NOANSI_ALIAS" $ DELETE/NOLOG/NOCONFIRM deccvers.*; $ ENDIF $Gcc_check: @@ -1782,17 +1775,11 @@ $! $List_Parse: $ OPEN/READ CONFIG ccvms.lis $ READ CONFIG line -$ IF F$ELEMENT(0, "-", archname) .EQS. "VMS_VAX" +$ IF F$ELEMENT(0, "-", archname) .EQS. "VMS_AXP" $ THEN -$ read CONFIG line -$ archsufx = "VAX" +$ archsufx = "AXP" $ ELSE -$ IF F$ELEMENT(0, "-", archname) .EQS. "VMS_AXP" -$ THEN -$ archsufx = "AXP" -$ ELSE -$ archsufx = "IA64" -$ ENDIF +$ archsufx = "IA64" $ ENDIF $ CLOSE CONFIG $ line = F$EDIT(line,"TRIM,COMPRESS") @@ -2066,7 +2053,7 @@ $ THEN $ thread_upcalls = "MTU=MTU=1" $ usethreadupcalls = "define" $ ! Are they on alpha or itanium? -$ IF (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") .AND. ("''f$extract(1,3, f$getsyi(""version""))'" .GES. "7.2") +$ IF ("''f$extract(1,3, f$getsyi(""version""))'" .GES. "7.2") $ THEN $ echo "" $ echo "Threaded Perl can be linked to use multiple kernel threads on your system." @@ -2119,106 +2106,103 @@ $ ENDIF $ ENDIF $! $! Ask if they want to build with 64-bit support -$ IF (F$ELEMENT(0, "-", archname).NES."VMS_VAX").and.("''f$extract(1,3, f$getsyi(""version""))'".ges."7.1") +$ bool_dflt = "n" +$ IF F$TYPE(use64bitint) .NES. "" $ THEN -$ bool_dflt = "n" -$ IF F$TYPE(use64bitint) .NES. "" -$ THEN -$ IF use64bitint .OR. use64bitint .eqs. "define" THEN bool_dflt = "y" -$ ENDIF -$ echo "" -$ echo "You have natively 64-bit long integers." -$ echo "" -$ echo "Perl can be built to take advantage of 64-bit integer types" -$ echo "on some systems, To do so, Configure can be run with -Duse64bitint." -$ echo "Choosing this option will most probably introduce binary incompatibilities." -$ echo "" -$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." -$ rp = "Try to use 64-bit integers, if available? [''bool_dflt'] " -$ GOSUB myread -$ use64bitint = ans +$ IF use64bitint .OR. use64bitint .eqs. "define" THEN bool_dflt = "y" +$ ENDIF +$ echo "" +$ echo "You have natively 64-bit long integers." +$ echo "" +$ echo "Perl can be built to take advantage of 64-bit integer types" +$ echo "on some systems, To do so, Configure can be run with -Duse64bitint." +$ echo "Choosing this option will most probably introduce binary incompatibilities." +$ echo "" +$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." +$ rp = "Try to use 64-bit integers, if available? [''bool_dflt'] " +$ GOSUB myread +$ use64bitint = ans $! -$ bool_dflt = "n" -$ IF F$TYPE(use64bitall) .NES. "" -$ THEN -$ IF use64bitall .OR. use64bitall .eqs. "define" THEN bool_dflt = "y" -$ ENDIF -$ echo "" -$ echo "You may also choose to try maximal 64-bitness. It means using as much" -$ echo "64-bitness as possible on the platform. This in turn means even more" -$ echo "binary incompatibilities. On the other hand, your platform may not" -$ echo "have any more 64-bitness available than what you already have chosen." +$ bool_dflt = "n" +$ IF F$TYPE(use64bitall) .NES. "" +$ THEN +$ IF use64bitall .OR. use64bitall .eqs. "define" THEN bool_dflt = "y" +$ ENDIF +$ echo "" +$ echo "You may also choose to try maximal 64-bitness. It means using as much" +$ echo "64-bitness as possible on the platform. This in turn means even more" +$ echo "binary incompatibilities. On the other hand, your platform may not" +$ echo "have any more 64-bitness available than what you already have chosen." +$ echo "" +$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." +$ rp = "Try to use maximal 64-bit support, if available? [''bool_dflt'] " +$ GOSUB myread +$ use64bitall=ans +$ IF use64bitall .AND. .NOT. use64bitint +$ THEN $ echo "" -$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." -$ rp = "Try to use maximal 64-bit support, if available? [''bool_dflt'] " -$ GOSUB myread -$ use64bitall=ans -$ IF use64bitall .AND. .NOT. use64bitint -$ THEN -$ echo "" -$ echo "Since you have chosen a maximally 64-bit build, I'm also turning on" -$ echo "the use of 64-bit integers." -$ use64bitint="Y" -$ ENDIF +$ echo "Since you have chosen a maximally 64-bit build, I'm also turning on" +$ echo "the use of 64-bit integers." +$ use64bitint="Y" +$ ENDIF $! -$ bool_dflt = use64bitall -$ IF F$TYPE(uselargefiles) .NES. "" -$ THEN -$ IF uselargefiles .OR. uselargefiles .eqs. "define" THEN bool_dflt = "y" -$ ENDIF -$ echo "" -$ echo "Perl can be built to understand large files (files larger than 2 gigabytes)" -$ echo "on some systems. To do so, Configure can be run with -Duselargefiles." -$ echo "" -$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." -$ rp = "Try to understand large files, if available? [''bool_dflt'] " -$ GOSUB myread -$ uselargefiles=ans +$ bool_dflt = use64bitall +$ IF F$TYPE(uselargefiles) .NES. "" +$ THEN +$ IF uselargefiles .OR. uselargefiles .eqs. "define" THEN bool_dflt = "y" +$ ENDIF +$ echo "" +$ echo "Perl can be built to understand large files (files larger than 2 gigabytes)" +$ echo "on some systems. To do so, Configure can be run with -Duselargefiles." +$ echo "" +$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." +$ rp = "Try to understand large files, if available? [''bool_dflt'] " +$ GOSUB myread +$ uselargefiles=ans $! -$ bool_dflt = "n" -$ IF F$TYPE(uselongdouble) .NES. "" -$ THEN -$ IF uselongdouble .OR. uselongdouble .eqs. "define" THEN bool_dflt = "y" -$ ENDIF -$ echo "" -$ echo "Perl can be built to take advantage of long doubles which" -$ echo "(if available) may give more accuracy and range for floating point numbers." -$ echo "" -$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." -$ rp = "Try to use long doubles, if available? [''bool_dflt'] " -$ GOSUB myread -$ uselongdouble = ans +$ bool_dflt = "n" +$ IF F$TYPE(uselongdouble) .NES. "" +$ THEN +$ IF uselongdouble .OR. uselongdouble .eqs. "define" THEN bool_dflt = "y" +$ ENDIF +$ echo "" +$ echo "Perl can be built to take advantage of long doubles which" +$ echo "(if available) may give more accuracy and range for floating point numbers." +$ echo "" +$ echo "If this does not make any sense to you, just accept the default '" + bool_dflt + "'." +$ rp = "Try to use long doubles, if available? [''bool_dflt'] " +$ GOSUB myread +$ uselongdouble = ans $! -$ ENDIF ! not VAX && >= 7.1 $! $ IF usesitecustomize .OR. usesitecustomize .eqs. "define" $ THEN -$ usesitecustomize = "define" +$ usesitecustomize = "define" $ ELSE -$ usesitecustomize = "undef" +$ usesitecustomize = "undef" $ ENDIF $! $! Case sensitive? -$ echo "" -$ echo "By default, perl (and pretty much everything else on VMS) uses" -$ echo "case-insensitive linker symbols. Which is to say, when the" -$ echo "underlying C code makes a call to a routine called Perl_foo in" -$ echo "the source, the name in the object modules or shareable images" -$ echo "is really PERL_FOO. There are some packages that use an" -$ echo "embedded perl interpreter that instead require case-sensitive" -$ echo "linker symbols." -$ echo "" -$ echo "If you have no idea what this means, and do not have" -$ echo "any program requiring anything, choose the default." -$ bool_dflt = be_case_sensitive -$ if f$type(usecasesensitive) .nes. "" -$ then -$ if usecasesensitive .or. usecasesensitive .eqs. "define" then bool_dflt = "y" -$ if f$extract(0,1,f$edit(usecasesensitive,"collapse,upcase")).eqs."N" .or. usecasesensitive .eqs. "undef" then bool_dflt = "n" -$ endif -$ rp = "Build with case-sensitive symbols? [''bool_dflt'] " -$ GOSUB myread -$ be_case_sensitive = ans +$ echo "" +$ echo "By default, perl (and pretty much everything else on VMS) uses" +$ echo "case-insensitive linker symbols. Which is to say, when the" +$ echo "underlying C code makes a call to a routine called Perl_foo in" +$ echo "the source, the name in the object modules or shareable images" +$ echo "is really PERL_FOO. There are some packages that use an" +$ echo "embedded perl interpreter that instead require case-sensitive" +$ echo "linker symbols." +$ echo "" +$ echo "If you have no idea what this means, and do not have" +$ echo "any program requiring anything, choose the default." +$ bool_dflt = be_case_sensitive +$ if f$type(usecasesensitive) .nes. "" +$ then +$ if usecasesensitive .or. usecasesensitive .eqs. "define" then bool_dflt = "y" +$ if f$extract(0,1,f$edit(usecasesensitive,"collapse,upcase")).eqs."N" .or. usecasesensitive .eqs. "undef" then bool_dflt = "n" +$ endif +$ rp = "Build with case-sensitive symbols? [''bool_dflt'] " +$ GOSUB myread +$ be_case_sensitive = ans $! $! Shortened symbols? $ echo "" @@ -2233,30 +2217,25 @@ $ endif $ rp = "Build with long symbols shortened? [''bool_dflt'] " $ GOSUB myread $ shorten_long_symbols = ans -$ IF F$ELEMENT(0, "-", archname) .NES. "VMS_VAX" -$ THEN $! IEEE math? -$ echo "" -$ echo "Perl normally uses IEEE format (T_FLOAT) floating point numbers on" -$ echo "Alpha and Itanium, 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." -$ bool_dflt = use_ieee_math -$ if f$type(useieee) .nes. "" +$ echo "" +$ echo "Perl normally uses IEEE format (T_FLOAT) floating point numbers on" +$ echo "Alpha and Itanium, 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." +$ bool_dflt = use_ieee_math +$ if f$type(useieee) .nes. "" +$ then +$ if useieee .or. useieee .eqs. "define" $ then -$ if useieee .or. useieee .eqs. "define" -$ then -$ bool_dflt="y" -$ else -$ bool_dflt="n" -$ endif +$ bool_dflt="y" +$ else +$ bool_dflt="n" $ endif -$ rp = "Use IEEE math? [''bool_dflt'] " -$ GOSUB myread -$ use_ieee_math = ans -$ ELSE -$ use_ieee_math = "n" -$ ENDIF +$ endif +$ rp = "Use IEEE math? [''bool_dflt'] " +$ GOSUB myread +$ use_ieee_math = ans $ useieee = "undef" $ usecasesensitive = "undef" $ useshortenedsymbols = "undef" @@ -2456,7 +2435,7 @@ $ ENDIF $ ! more redundant scrubbing of values $ prefix = prefix - "000000." $ IF F$LOCATE(".]",prefix) .EQ. F$LENGTH(prefix) THEN prefix = prefix - "]" + ".]" -$ src = prefix +$ src = prefix - "_ROOT." $!: determine root of directory hierarchy where package will be installed. $ dflt = prefix $ IF .NOT.silent @@ -2827,7 +2806,10 @@ $ idx = idx + 1 $ goto replace_dash_with_slash $ $ end_replace_dash_with_slash: -$ +$! +$ IF extspec .EQS. "Scalar/List/Utils" THEN extspec = "List/Util" +$ IF extspec .EQS. "PathTools" THEN extspec = "Cwd" +$! $ xxx = xs_extensions $ gosub may_already_have_extension $ IF $STATUS .EQ. 1 @@ -2891,10 +2873,6 @@ $ DELETE/SYMBOL extlen $ DELETE/SYMBOL extension_dir_name $ xs_extensions = F$EDIT(xs_extensions,"TRIM,COMPRESS") $ dflt = xs_extensions -$ IF ccname .NES. "DEC" .AND. ccname .NES. "CXX" -$ THEN -$ dflt = dflt - "POSIX" ! not with VAX C or GCC -$ ENDIF $ dflt = dflt - "ByteLoader" ! needs to be ported $ dflt = dflt - "DB_File" ! needs to be ported $ dflt = dflt - "GDBM_File" ! needs porting/special library @@ -2907,6 +2885,7 @@ $ THEN $ dflt = dflt - "Socket" ! optional on VMS $ ENDIF $ dflt = dflt - "Win32API/File" - "Win32" ! need Dave Cutler's other project +$ dflt = dflt - "Amiga/ARexx" - "Amiga/Exec" ! this is not AmigaOS $ nonxs_ext = nonxs_ext - "Win32CORE" $ nonxs_ext2 = nonxs_ext2 - "Win32CORE" $ dflt = F$EDIT(dflt,"TRIM,COMPRESS") @@ -3316,76 +3295,117 @@ $ THEN d_mymalloc="define" $ ELSE d_mymalloc="undef" $ ENDIF $! -$ usedevel="undef" $ 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;}""" $! $ libs=" " -$ IF ccname .EQS. "DEC" .OR. ccname .EQS. "CXX" -$ THEN -$ libc="(DECCRTL)" -$ ELSE -$ libc=" " -$ ENDIF +$ libc="(DECCRTL)" $! $! perllibs should be libs with all non-core libs (such as gdbm) removed. $! $ perllibs=libs $! $! -$ IF F$ELEMENT(0, "-", archname) .NES. "VMS_VAX" -$ THEN -$ d_PRId64 = "define" -$ d_PRIi64 = "define" -$ d_PRIu64 = "define" -$ d_PRIo64 = "define" -$ d_PRIx64 = "define" -$ d_PRIXU64 = "define" -$ sPRId64 = """Ld""" -$ sPRIXU64 = """LX""" -$ sPRIi64 = """Li""" -$ sPRIo64 = """Lo""" -$ sPRIu64 = """Lu""" -$ sPRIx64 = """Lx""" -$ d_quad = "define" -$ quadtype = "long long" -$ uquadtype = "unsigned long long" -$ quadkind = "3" -$! -$ d_frexpl = "define" -$ d_modfl = "define" -$ d_modflproto = "define" -$ ELSE -$ d_PRId64 = "undef" -$ d_PRIi64 = "undef" -$ d_PRIXU64 = "undef" -$ d_PRIu64 = "undef" -$ d_PRIo64 = "undef" -$ d_PRIx64 = "undef" -$ sPRId64 = "" -$ sPRIXU64 = """lX""" -$ sPRIi64 = "" -$ sPRIo64 = "" -$ sPRIu64 = "" -$ sPRIx64 = "" -$ d_quad = "undef" -$ quadtype = "undef" -$ uquadtype = "undef" -$ quadkind = "undef" -$! -$ d_frexpl = "undef" -$ d_modfl = "undef" -$ d_modflproto = "undef" -$ ENDIF +$ d_PRId64 = "define" +$ d_PRIi64 = "define" +$ d_PRIu64 = "define" +$ d_PRIo64 = "define" +$ d_PRIx64 = "define" +$ d_PRIXU64 = "define" +$ sPRId64 = """Ld""" +$ sPRIXU64 = """LX""" +$ sPRIi64 = """Li""" +$ sPRIo64 = """Lo""" +$ sPRIu64 = """Lu""" +$ sPRIx64 = """Lx""" +$ d_quad = "define" +$ quadtype = "long long" +$ uquadtype = "unsigned long long" +$ quadkind = "3" +$! +$ d_frexpl = "define" +$ d_ldexpl = "define" +$ d_modfl = "define" +$ d_modflproto = "define" $! $ IF useieee .OR. useieee .EQS. "define" $ THEN +$ d_acosh = "define" +$ d_asinh = "define" +$ d_atanh = "define" +$ d_cbrt = "define" +$ d_copysign = "define" +$ d_erf = "define" +$ d_erfc = "define" +$ d_exp2 = "define" +$ d_expm1 = "define" +$ d_fdim = "define" +$ d_fma = "define" +$ d_fmax = "define" +$ d_fmin = "define" +$ d_fp_classify = "define" +$ d_hypot = "define" +$ d_ilogb = "define" $ d_isnan = "define" $ d_isnanl = "define" +$ d_isnormal = "define" +$ d_j0 = "define" +$ d_lgamma = "define" +$ d_log1p = "define" +$ d_log2 = "define" +$ d_logb = "define" +$ d_lrint = "define" +$ d_lrintl = "define" +$ d_lround = "define" +$ d_lroundl = "define" +$ d_nearbyint = "define" +$ d_nextafter = "define" +$ d_nexttoward = "define" +$ d_remainder = "define" +$ d_remquo = "define" +$ d_rint = "define" +$ d_tgamma = "define" +$ d_trunc = "define" +$ d_truncl = "define" $ ELSE +$ d_acosh = "undef" +$ d_asinh = "undef" +$ d_atanh = "undef" +$ d_cbrt = "undef" +$ d_copysign = "undef" +$ d_erf = "undef" +$ d_erfc = "undef" +$ d_exp2 = "undef" +$ d_expm1 = "undef" +$ d_fdim = "undef" +$ d_fma = "undef" +$ d_fmax = "undef" +$ d_fmin = "undef" +$ d_fp_classify = "undef" +$ d_hypot = "undef" +$ d_ilogb = "undef" $ d_isnan = "undef" $ d_isnanl = "undef" +$ d_isnormal = "undef" +$ d_j0 = "undef" +$ d_lgamma = "undef" +$ d_log1p = "undef" +$ d_log2 = "undef" +$ d_logb = "undef" +$ d_lrint = "undef" +$ d_lrintl = "undef" +$ d_lround = "undef" +$ d_lroundl = "undef" +$ d_nearbyint = "undef" +$ d_nextafter = "undef" +$ d_nexttoward = "undef" +$ d_remainder = "undef" +$ d_remquo = "undef" +$ d_rint = "undef" +$ d_tgamma = "undef" +$ d_trunc = "undef" +$ d_truncl = "undef" $ ENDIF $! $! Now some that we build up @@ -3597,6 +3617,10 @@ $ GOSUB link_ok $ IF link_status .NE. good_link $ THEN $ longdblsize="0" +$ longdblkind="0" +$ longdblinfbytes="undef" +$ longdblnanbytes="undef" +$ longdblmantbits="undef" $ d_longdbl="undef" $ echo "You do not have long double." $ ELSE @@ -3604,6 +3628,10 @@ $ echo "You have long double." $ echo4 "Checking to see how big your long doubles are..." $ GOSUB just_mcr_it $ longdblsize = tmp +$ longdblkind = "1" +$ longdblinfbytes="0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f" +$ longdblnanbytes="0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff" +$ longdblmantbits="112" $ d_longdbl = "define" $ echo "Your long doubles are ''longdblsize' bytes long." $ ENDIF @@ -4456,38 +4484,6 @@ $ tmp = "setvbuf" $ GOSUB inlibc $ d_setvbuf = tmp $! -$! see if sfio.h is available -$! see if sfio library is available -$! Ok, but do we want to use it. -$! IF F$TYPE(usesfio) .EQS. "" THEN usesfio = "undef" -$! IF val .EQS. "define" -$! THEN -$! IF usesfio .EQS. "define" -$! THEN dflt = "y" -$! ELSE dflt = "n" -$! ENDIF -$! echo "''package' can use the sfio library, but it is experimental." -$! rp="You seem to have sfio available, do you want to try using it? [''dflt'] " -$! GOSUB myread -$! IF ans .EQS. "" THEN ans = dflt -$! IF ans -$! THEN -$! echo "Ok, turning on sfio then." -$! val="define" -$! ELSE -$! echo "Ok, avoiding sfio this time. I'll use stdio instead." -$! val="undef" -$! ENDIF -$! ELSE -$! IF usesfio .EQS. "define" -$! THEN -$! echo4 "Sorry, cannot find sfio on this machine." -$! echo4 "Ignoring your setting of usesfio=''usesfio'." -$! val="undef" -$! ENDIF -$! ENDIF -$! -$! $! Check for the shm* routines. $! $ OS @@ -4571,6 +4567,29 @@ $ ELSE $ i_niin="undef" $ ENDIF $! +$! Check for +$! +$ IF Has_Dec_C_Sockets +$ THEN +$ tmp = "arpa/inet.h" +$ GOSUB inhdr +$ i_arpainet = tmp +$ ELSE +$ i_arpainet="undef" +$ ENDIF +$! +$! Check for +$! +$ IF Has_Dec_C_Sockets +$ THEN +$ tmp = "sys/un.h" +$ GOSUB inhdr +$ i_sysun = tmp +$ ELSE +$ i_sysun="undef" +$ ENDIF +$! +$! $! Check for $! $ IF Has_Dec_C_Sockets @@ -5122,7 +5141,7 @@ $! easy to use DCL test to see if hardlinks are enabled on the build $! disk. That would require more work to test, and I am only testing $! this on 8.2, so that is why the 8.2 test. $! -$ IF (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$ IF (vms_ver .GES. "8.2") $ THEN $ IF f$getdvi("SYS$DISK","HARDLINKS_SUPPORTED") $ THEN @@ -5140,7 +5159,7 @@ $ ENDIF $! $ IF uselargefiles .OR. uselargefiles .eqs. "define" $ THEN -$ IF (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$ IF (vms_ver .GES. "8.2") $ THEN $ echo4 "Largefile support enabled, so enabling standard stat support too." $ usestdstat = "y" @@ -5181,7 +5200,7 @@ $ echo4 "Your system does not support symbolic links." $ echo4 "I am disabling symbolic link support." $ ENDIF $ ELSE -$ IF (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$ IF (vms_ver .GES. "8.2") $ THEN $ echo4 "-Duselargefiles is required for symbolic link support." $ echo4 "You did not specify that, so I am disabling symbolic link support." @@ -5215,25 +5234,22 @@ $ d_ttyname_r = "undef" $ ttyname_r_proto = "0" $ d_snprintf = "undef" $ d_vsnprintf = "undef" -$ if (vms_ver .GES. "7.3-2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$ echo "Asumming 64-bit OpenVMS ''vms_ver' -- will build with V7.3-2 routines" +$ d_getgrgid_r = "define" +$ getgrgid_r_proto = "1" +$ d_getgrnam_r = "define" +$ getgrnam_r_proto = "1" +$ if d_symlink .or. d_symlink .EQS. "define" $ then -$ echo "Found 64 bit OpenVMS ''vms_ver' -- will build with V7.3-2 routines" -$ d_getgrgid_r = "define" -$ getgrgid_r_proto = "1" -$ d_getgrnam_r = "define" -$ getgrnam_r_proto = "1" -$ if d_symlink .or. d_symlink .EQS. "define" -$ then $! FIXME: Need to find how to activate this. $! d_getpgid = "define" $! d_getpgrp = "define" -$ endif -$ d_setgrent = "define" -$ d_ttyname_r = "define" -$ ttyname_r_proto = "1" -$ d_snprintf = "define" -$ d_vsnprintf = "define" $ endif +$ d_setgrent = "define" +$ d_ttyname_r = "define" +$ ttyname_r_proto = "1" +$ d_snprintf = "define" +$ d_vsnprintf = "define" $! $! VMS V7.3-2 powered options $! We know that it is only available for V7.3-2 and later on 64 bit platforms. @@ -5249,7 +5265,7 @@ $ d_setregid = "undef" $ d_setreuid = "undef" $ d_setsid = "undef" $ ! Disable this section for now. -$!$ if (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$!$ if (vms_ver .GES. "8.2") $ if .NOT. 1 $ then $ echo "Found 64 bit OpenVMS ''vms_ver' -- will build with V7.3-2 UID setting routines" @@ -5261,74 +5277,17 @@ $ d_setreuid = "define" $ d_setsid = "define" $ endif $! -$! VMS V8 powered options -$! We know that it is only available for 8.2 and later on 64 bit platforms. +$! Check rand48 and its ilk $! -$ d_fstatvfs = "undef" -$ d_statvfs = "undef" -$ i_sysstatvfs = "undef" -$ if (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") -$ then -$ echo "Found 64 bit OpenVMS ''vms_ver' -- will build with 8.2 routines" -$ d_fstatvfs = "define" -$ d_statvfs = "define" -$ i_sysstatvfs = "define" -$ endif +$ echo4 "Using our internal random number implementation..." $! -$! Check rand48 and its ilk +$ randfunc = "Perl_drand48" +$ drand01 = "Perl_drand48()" +$ seedfunc = "Perl_drand48_init" +$ randbits = "48" +$ randseedtype = "U32" +$ d_drand48proto = "define" $! -$ echo4 "Looking for a random number function..." -$ OS -$ WS "#if defined(__DECC) || defined(__DECCXX)" -$ WS "#include " -$ WS "#endif" -$ WS "#include " -$ WS "int main()" -$ WS "{" -$ WS "srand48(12L);" -$ WS "exit(0);" -$ WS "}" -$ CS -$ GOSUB link_ok -$ IF compile_status .EQ. good_compile .AND. link_status .EQ. good_link -$ THEN -$ drand01 = "drand48()" -$ randbits = "48" -$ randfunc = "drand48" -$ randseedtype = "long int" -$ seedfunc = "srand48" -$ echo4 "Good, found drand48()." -$ d_drand48proto = "define" -$ ELSE -$ d_drand48proto = "undef" -$ drand01="random()" -$ randbits = "31" -$ randfunc = "random" -$ randseedtype = "unsigned" -$ seedfunc = "srandom" -$ OS -$ WS "#if defined(__DECC) || defined(__DECCXX)" -$ WS "#include " -$ WS "#endif" -$ WS "#include " -$ WS "int main()" -$ WS "{" -$ WS "srandom(12);" -$ WS "exit(0);" -$ WS "}" -$ CS -$ GOSUB link_ok -$ IF compile_status .EQ. good_compile .AND. link_status .EQ. good_link -$ THEN -$ echo4 "OK, found random()." -$ ELSE -$ drand01="(((float)rand())*MY_INV_RAND_MAX)" -$ randfunc = "rand" -$ randseedtype = "unsigned" -$ seedfunc = "srand" -$ echo4 "Yick, looks like I have to use rand()." -$ ENDIF -$ ENDIF $! Done with compiler checks. Clean up. $ IF F$SEARCH("try.c") .NES."" THEN DELETE/NOLOG/NOCONFIRM try.c;* $ IF F$SEARCH("try.obj").NES."" THEN DELETE/NOLOG/NOCONFIRM try.obj;* @@ -5379,10 +5338,7 @@ $ d_index="define" $ pidtype="pid_t" $ sig_name1="ZERO HUP INT QUIT ILL TRAP ABRT EMT FPE KILL BUS SEGV SYS PIPE" $ sig_name2=" ALRM TERM USR1 USR2 NUM18 NUM19 CHLD CONT STOP TSTP TTIN TTOU DEBUG" -$ IF (vms_ver .GES. "7.3") -$ THEN -$ sig_name2 = sig_name2 + " NUM27 WINCH" -$ ENDIF +$ sig_name2 = sig_name2 + " NUM27 WINCH" $!* signal.h defines SIGRTMIN as 33 and SIGRTMAX as 64, but there is no $!* sigqueue function or other apparent means to do realtime signalling, $!* so let's not try to include the realtime range for now. @@ -5445,45 +5401,24 @@ $! $! Dec C alone $ IF ccname .EQS. "DEC" .OR. ccname .EQS. "CXX" $ THEN -$ d_mbstowcs="define" -$ d_mbtowc="define" -$ d_stdiobase="define" -$ d_stdio_cnt_lval="define" -$ d_stdio_ptr_lval="define" -$ d_stdstdio="define" -$ d_faststdio="define" -$ d_wcstombs="define" -$ d_mblen="define" -$ d_mktime="define" -$ d_strcoll="define" -$ d_strxfrm="define" -$ d_wctomb="define" -$ i_locale="define" -$ i_langinfo="define" -$ d_locconv="define" -$ d_nl_langinfo="define" -$ d_setlocale="define" $ vms_cc_type="decc" -$ ELSE -$ d_mbstowcs="undef" -$ d_mbtowc="undef" -$ d_stdiobase="undef" -$ d_stdio_cnt_lval="undef" -$ d_stdio_ptr_lval="undef" -$ d_stdstdio="undef" -$ d_faststdio="undef" -$ d_wcstombs="undef" -$ d_mblen="undef" -$ d_mktime="undef" -$ d_strcoll="undef" -$ d_strxfrm="undef" -$ d_wctomb="undef" -$ i_locale="undef" -$ i_langinfo="undef" -$ d_locconv="undef" -$ d_nl_langinfo="undef" -$ d_setlocale="undef" $ ENDIF +$ d_faststdio="define" +$ d_locconv="define" +$ d_mblen="define" +$ d_mbstowcs="define" +$ d_mbtowc="define" +$ d_mktime="define" +$ d_nl_langinfo="define" +$ d_setlocale="define" +$ d_stdiobase="define" +$ d_stdio_cnt_lval="define" +$ d_stdio_ptr_lval="define" +$ d_stdstdio="define" +$ d_strcoll="define" +$ d_strxfrm="define" +$ i_langinfo="define" +$ i_locale="define" $ d_stdio_ptr_lval_sets_cnt="undef" $ d_stdio_ptr_lval_nochange_cnt="define" $ usefaststdio="undef" @@ -5495,7 +5430,7 @@ $ d_vms_do_sockets="define" $ d_htonl="define" $ d_socket="define" $ d_sockpair = "undef" -$ if (vms_ver .GES. "8.2") .AND. (F$ELEMENT(0, "-", archname) .NES. "VMS_VAX") +$ if (vms_ver .GES. "8.2") $ then $ echo "Found 64 bit OpenVMS 8.2, will build with socketpair support" $ d_sockpair = "define" @@ -5517,12 +5452,7 @@ $ d_gethostprotos="define" $ d_getnetprotos="define" $ d_getprotoprotos="define" $ d_getservprotos="define" -$ IF ccname .EQS. "DEC" .OR. ccname .EQS. "CXX" -$ THEN -$ socksizetype="unsigned int" -$ ELSE -$ socksizetype="int *" -$ ENDIF +$ socksizetype="size_t" $ ELSE $ d_vms_do_sockets="undef" $ d_htonl="undef" @@ -5582,9 +5512,13 @@ $ i64size="undef" $ u64size="undef" $ ENDIF $! +$ doublemantbits = "52" $ IF uselongdouble .OR. uselongdouble .EQS. "define" $ THEN $ nvtype="long double" +$ nvmantbits = longdblmantbits +$ ELSE +$ nvmantbits = doublemantbits $ ENDIF $! $ tmp = "''ivtype'" @@ -5970,10 +5904,13 @@ $ WC "d_SCNfldbl='" + d_SCNfldbl + "'" $ WC "d__fwalk='undef'" $ WC "d_access='" + d_access + "'" $ WC "d_accessx='undef'" +$ WC "d_acosh='" + d_acosh + "'" $ WC "d_aintl='undef'" $ WC "d_alarm='define'" $ WC "d_archlib='define'" $ WC "d_asctime64='undef'" +$ WC "d_asinh='" + d_asinh + "'" +$ WC "d_atanh='" + d_atanh + "'" $ WC "d_atolf='" + d_atolf + "'" $ WC "d_atoll='" + d_atoll + "'" $ WC "d_attribute_format='" + d_attribut + "'" @@ -5998,6 +5935,7 @@ $ WC "d_builtin_expect='undef'" ! GCC only $ WC "d_bzero='" + d_bzero + "'" $ WC "d_casti32='define'" $ WC "d_castneg='define'" +$ WC "d_cbrt='" + d_cbrt + "'" $ WC "d_charvspr='undef'" $ WC "d_chown='define'" $ WC "d_chroot='undef'" @@ -6006,6 +5944,7 @@ $ WC "d_class='undef'" $ WC "d_closedir='define'" $ WC "d_cmsghdr_s='undef'" $ WC "d_const='define'" +$ WC "d_copysign='" + d_copysign + "'" $ WC "d_copysignl='define'" $ WC "d_cplusplus='" + d_cplusplus + "'" $ WC "d_crypt='define'" @@ -6021,6 +5960,7 @@ $ WC "d_difftime64='undef'" $ WC "d_dir_dd_fd='undef'" $ WC "d_dirfd='undef'" $ WC "d_dirnamlen='define'" +$ WC "d_dladdr='undef'" $ IF ("''F$EXTRACT(1,3, F$GETSYI(""VERSION""))'".GES."7.2") $ THEN $ WC "d_dlerror='define'" @@ -6030,6 +5970,7 @@ $ WC "d_dlerror='undef'" $ WC "d_dlopen='undef'" $ ENDIF $ WC "d_dlsymun='undef'" +$ WC "d_backtrace='undef'" $ WC "d_dosuid='undef'" $ WC "d_drand48proto='" + d_drand48proto + "'" $ WC "d_dup2='define'" @@ -6041,7 +5982,11 @@ $ WC "d_endpent='" + d_endpent + "'" $ WC "d_endpwent='define'" $ WC "d_endsent='" + d_endsent + "'" $ WC "d_eofnblk='undef'" +$ WC "d_erf='" + d_erf + "'" +$ WC "d_erfc='" + d_erfc + "'" $ WC "d_eunice='undef'" +$ WC "d_exp2='" + d_exp2 + "'" +$ WC "d_expm1='" + d_expm1 + "'" $ WC "d_fchmod='undef'" $ WC "d_fchdir='undef'" $ WC "d_fchown='undef'" @@ -6049,36 +5994,47 @@ $ WC "d_fcntl='" + d_fcntl + "'" $ WC "d_fcntl_can_lock='" + d_fcntl_can_lock + "'" $ WC "d_fd_set='" + d_fd_set + "'" $ WC "d_fd_macros='define'" +$ WC "d_fdim='" + d_fdim + "'" $ WC "d_fds_bits='define'" +$ WC "d_fegetround='undef'" $ WC "d_fgetpos='define'" -$ WC "d_finite='undef'" -$ WC "d_finitel='undef'" +$ IF use_ieee_math +$ THEN +$ WC "d_finite='define'" +$ WC "d_finitel='define'" +$ ELSE +$ WC "d_finite='undef'" +$ WC "d_finitel='undef'" +$ ENDIF $ WC "d_flexfnam='define'" $ WC "d_flock='undef'" $ WC "d_flockproto='undef'" +$ WC "d_fma='" + d_fma + "'" +$ WC "d_fmax='" + d_fmax + "'" +$ WC "d_fmin='" + d_fmin + "'" $ WC "d_fork='undef'" $ WC "d_fp_class='undef'" +$ WC "d_fp_classify='" + d_fp_classify + "'" +$ WC "d_fp_classify='undef'" +$ WC "d_fp_classl='undef'" $ WC "d_fpathconf='" + d_fpathconf + "'" $ WC "d_fpclass='undef'" $ WC "d_fpclassify='undef'" $ WC "d_fpclassl='undef'" +$ WC "d_fpgetround='undef'" $ WC "d_fpos64_t='" + d_fpos64_t + "'" $ WC "d_frexpl='" + d_frexpl + "'" -$ WC "d_fs_data_s='undef'" $ WC "d_fseeko='" + d_fseeko + "'" $ WC "d_fsetpos='define'" -$ WC "d_fstatfs='undef'" -$ WC "d_fstatvfs='" + d_fstatvfs + "'" -$ WC "d_fsync='undef'" +$ WC "d_fsync='define'" $ WC "d_ftello='" + d_ftello + "'" $ WC "d_ftime='define'" $ 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_getaddrinfo='define'" $ WC "d_getcwd='define'" $ WC "d_getespwnam='undef'" -$ WC "d_getfsstat='undef'" $ WC "d_getgrent='define'" $ WC "d_getgrps='undef'" $ WC "d_gethbyaddr='" + d_gethbyaddr + "'" @@ -6088,9 +6044,7 @@ $ WC "d_gethname='" + d_gethname + "'" $ WC "d_gethostprotos='" + d_gethostprotos + "'" $ WC "d_getitimer='" + d_getitimer + "'" $ WC "d_getlogin='define'" -$ WC "d_getmnt='undef'" -$ WC "d_getmntent='undef'" -$ WC "d_getnameinfo='undef'" +$ WC "d_getnameinfo='define'" $ WC "d_getnbyaddr='" + d_getnbyaddr + "'" $ WC "d_getnbyname='" + d_getnbyname + "'" $ WC "d_getnent='" + d_getnent + "'" @@ -6116,14 +6070,15 @@ $ WC "d_gettimeod='" + d_gettimeod + "'" $ WC "d_gmtime64='undef'" $ WC "d_gnulibc='undef'" $ WC "d_grpasswd='undef'" -$ WC "d_hasmntopt='undef'" $ WC "d_htonl='" + d_htonl + "'" +$ WC "d_hypot='" + d_hypot + "'" +$ WC "d_ilogb='" + d_ilogb + "'" $ 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_inetaton='define'" +$ WC "d_inetntop='define'" +$ WC "d_inetpton='define'" $ WC "d_int64_t='" + d_int64_t + "'" $ WC "d_ip_mreq='define'" $ WC "d_ip_mreq_source='undef'" @@ -6132,20 +6087,40 @@ $ WC "d_ipv6_mreq_source='undef'" $ WC "d_isascii='define'" $ WC "d_isblank='undef'" $ WC "d_isfinite='undef'" +$ WC "d_isfinitel='undef'" $ WC "d_isinf='undef'" +$ WC "d_isinfl='undef'" +$ WC "d_isless='undef'" $ WC "d_isnan='" + d_isnan + "'" $ WC "d_isnanl='" + d_isnanl + "'" -$ WC "d_killpg='undef'" +$ WC "d_isnormal='" + d_isnormal + "'" +$ WC "d_j0='" + d_j0 + "'" +$ WC "d_j0l='undef'" +$ WC "d_killpg='define'" $ WC "d_lchown='" + d_lchown + "'" $ WC "d_ldbl_dig='define'" +$ WC "d_ldexpl='" + d_ldexpl + "'" +$ WC "d_lgamma='" + d_lgamma + "'" $ WC "d_libm_lib_version='undef'" $ WC "d_link='" + d_link + "'" +$ WC "d_llrint='undef'" +$ WC "d_llrintl='undef'" +$ WC "d_llround='undef'" +$ WC "d_llroundl='undef'" $ WC "d_llseek='undef'" $ WC "d_localtime64='undef'" $ WC "d_locconv='" + d_locconv + "'" +$ WC "d_lc_monetary_2008='undef'" $ WC "d_lockf='undef'" +$ WC "d_log1p='" + d_log1p + "'" +$ WC "d_log2='" + d_log2 + "'" +$ WC "d_logb='" + d_logb + "'" $ WC "d_longdbl='" + d_longdbl + "'" $ WC "d_longlong='" + d_longlong + "'" +$ WC "d_lrint='" + d_lrint + "'" +$ WC "d_lrintl='" + d_lrintl + "'" +$ WC "d_lround='" + d_lround + "'" +$ WC "d_lroundl='" + d_lroundl + "'" $ WC "d_lseekproto='define'" $ WC "d_lstat='" + d_lstat + "'" $ WC "d_madvise='undef'" @@ -6186,9 +6161,13 @@ $ WC "d_msghdr_s='undef'" $ WC "d_msync='" + d_msync + "'" $ WC "d_munmap='" + d_munmap + "'" $ WC "d_mymalloc='" + d_mymalloc + "'" +$ WC "d_nan='undef'" $ WC "d_nanosleep='" + d_nanosleep + "'" $ WC "d_ndbm='undef'" $ WC "d_ndbm_h_uses_prototypes='undef'" +$ WC "d_nearbyint='undef'" +$ WC "d_nextafter='" + d_nextafter + "'" +$ WC "d_nexttoward='" + d_nexttoward + "'" $ WC "d_nice='define'" $ WC "d_nl_langinfo='" + d_nl_langinfo + "'" $ WC "d_nv_preserves_uv='" + d_nv_preserves_uv + "'" @@ -6214,6 +6193,7 @@ $ WC "d_pthread_atfork='undef'" $ WC "d_pthread_attr_setscope='" + d_pthread_attr_setscope + "'" $ WC "d_pthread_yield='" + d_pthread_yield + "'" $ WC "d_pthreads_created_joinable='" + d_pthreads_created_joinable + "'" +$ WC "d_ptrdiff_t='define'" $ WC "d_pwage='undef'" $ WC "d_pwchange='undef'" $ WC "d_pwclass='undef'" @@ -6229,13 +6209,19 @@ $ WC "d_readlink='" + d_readlink + "'" $ WC "d_readv='undef'" $ WC "d_realpath='" + d_realpath + "'" $ WC "d_recvmsg='undef'" +$ WC "d_regcomp='undef'" +$ WC "d_remainder='" + d_remainder + "'" +$ WC "d_remquo='" + d_remquo + "'" $ WC "d_rename='define'" $ WC "d_rewinddir='define'" +$ WC "d_rint='" + d_rint + "'" $ WC "d_rmdir='define'" +$ WC "d_round='undef'" $ WC "d_safebcpy='undef'" $ WC "d_safemcpy='define'" $ WC "d_sanemcmp='define'" $ WC "d_sbrkproto='define'" +$ WC "d_scalbn='undef'" $ WC "d_scalbnl='undef'" $ WC "d_sched_yield='" + d_sched_yield + "'" $ WC "d_scm_rights='undef'" @@ -6284,7 +6270,6 @@ $ WC "d_setruid='undef'" $ WC "d_setsent='" + d_setsent + "'" $ WC "d_setsid='" + d_setsid + "'" $ WC "d_setvbuf='" + d_setvbuf + "'" -$ WC "d_sfio='undef'" $ WC "d_shm='" + d_shm + "'" $ WC "d_shmat='" + d_shmat + "'" $ WC "d_shmatprototype='" + d_shmatprototype + "'" @@ -6311,10 +6296,8 @@ $ WC "d_sresgproto='undef'" $ WC "d_sresgproto='undef'" $ WC "d_sresproto='undef'" $ WC "d_sresuproto='undef'" +$ WC "d_stat='define'" $ WC "d_statblks='undef'" -$ WC "d_statfs_f_flags='undef'" -$ WC "d_statfs_s='undef'" -$ WC "d_statfsflags='undef'" $ WC "d_static_inline='define'" $ WC "d_stdio_cnt_lval='" + d_stdio_cnt_lval + "'" $ WC "d_stdio_ptr_lval='" + d_stdio_ptr_lval + "'" @@ -6324,7 +6307,6 @@ $ WC "d_stdio_stream_array='undef'" $ WC "d_stdiobase='" + d_stdiobase + "'" $ WC "d_stdstdio='" + d_stdstdio + "'" $ WC "d_faststdio='" + d_faststdio + "'" -$ WC "d_statvfs='" + d_statvfs + "'" $ WC "d_strchr='define'" $ WC "d_strcoll='" + d_strcoll + "'" $ WC "d_strctcpy='define'" @@ -6354,6 +6336,7 @@ $ WC "d_tcgetpgrp='undef'" $ WC "d_tcsetpgrp='undef'" $ WC "d_telldir='define'" $ WC "d_telldirproto='define'" +$ WC "d_tgamma='" + d_tgamma + "'" $ WC "d_time='define'" $ WC "d_timegm='undef'" $ WC "d_times='define'" @@ -6366,6 +6349,8 @@ $ WC "d_tm_tm_gmtoff='undef'" $ WC "d_tm_tm_zone='undef'" $ ENDIF $ WC "d_truncate='" + d_truncate + "'" +$ WC "d_trunc='" + d_trunc + "'" +$ WC "d_truncl='" + d_truncl + "'" $ WC "d_tzname='" + d_tzname + "'" $ WC "d_u32align='define'" $ WC "d_ualarm='" + d_ualarm + "'" @@ -6378,7 +6363,6 @@ $ WC "d_unsetenv='" + d_unsetenv + "'" $ WC "d_clearenv='" + d_clearenv + "'" $ WC "d_usleep='" + d_usleep + "'" $ WC "d_usleepproto='" + d_usleep + "'" -$ WC "d_ustat='undef'" $ WC "d_vendorarch='undef'" $ WC "d_vendorbin='undef'" $ WC "d_vendorlib='undef'" @@ -6395,8 +6379,10 @@ $ WC "d_vprintf='define'" $ WC "d_vsnprintf='" + d_vsnprintf + "'" $ WC "d_wait4='" + d_wait4 + "'" $ WC "d_waitpid='define'" -$ WC "d_wcstombs='" + d_wcstombs + "'" -$ WC "d_wctomb='" + d_wctomb + "'" +$ WC "d_wcscmp='define'" +$ WC "d_wcstombs='define'" +$ WC "d_wcsxfrm='define'" +$ WC "d_wctomb='define'" $ WC "d_writev='undef'" $ WC "d_xenix='undef'" $ WC "db_hashtype=' '" @@ -6405,12 +6391,15 @@ $ WC "db_version_major='" + "'" $ WC "db_version_minor='" + "'" $ WC "db_version_patch='" + "'" $ WC "dbgprefix='" + dbgprefix + "'" -$ WC "defvoidused='15'" $ WC "devtype='" + devtype + "'" $ WC "direntrytype='struct dirent'" $ WC "dlext='" + dlext + "'" $ WC "dlobj='" + dlobj + "'" $ WC "dlsrc='dl_vms.xs'" +$ WC "doublekind='3'" +$ WC "doubleinfbytes='0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x7f'" +$ WC "doublenanbytes='0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7f'" +$ WC "doublemantbits='" + doublemantbits + "'" $ WC "doublesize='" + doublesize + "'" $ WC "drand01='" + drand01 + "'" $ WC "dtrace='" + "'" @@ -6454,16 +6443,18 @@ $ WC "i64size='" + i64size + "'" $ WC "i64type='" + i64type + "'" $ WC "i8size='" + i8size + "'" $ WC "i8type='" + i8type + "'" -$ WC "i_arpainet='undef'" +$ WC "i_arpainet='" + i_arpainet + "'" $ WC "i_assert='define'" +$ WC "i_bfd='undef'" $ WC "i_bsdioctl='undef'" $ WC "i_crypt='undef'" $ WC "i_db='undef'" $ WC "i_dbm='undef'" $ WC "i_dirent='undef'" ! we roll our own -$ WC "i_dld='undef'" $ WC "i_dlfcn='undef'" +$ WC "i_execinfo='undef'" $ WC "i_fcntl='" + i_fcntl + "'" +$ WC "i_fenv='undef'" $ WC "i_float='define'" $ WC "i_fp='undef'" $ WC "i_fp_class='undef'" @@ -6483,7 +6474,6 @@ $ WC "i_malloc='undef'" $ WC "i_mallocmalloc='undef'" $ WC "i_math='define'" $ WC "i_memory='undef'" -$ WC "i_mntent='undef'" $ WC "i_ndbm='undef'" $ WC "i_netdb='" + i_netdb + "'" $ WC "i_neterrno='define'" @@ -6493,8 +6483,8 @@ $ WC "i_poll='" + i_poll + "'" $ WC "i_prot='undef'" $ WC "i_pthread='define'" $ WC "i_pwd='undef'" +$ WC "i_quadmath='undef'" $ WC "i_rpcsvcdbm='undef'" -$ WC "i_sfio='undef'" $ WC "i_sgtty='undef'" $ WC "i_shadow='" + i_shadow + "'" $ WC "i_socks='" + i_socks + "'" @@ -6506,6 +6496,7 @@ $ ELSE $ WC "i_stdbool='undef'" $ ENDIF $ WC "i_stddef='define'" +$ WC "i_stdint='undef'" $ WC "i_stdlib='define'" $ WC "i_string='define'" $ WC "i_sunmath='undef'" @@ -6518,7 +6509,6 @@ $ WC "i_sysioctl='" + i_sysioctl + "'" $ WC "i_syslog='" + i_syslog + "'" $ WC "i_sysmman='undef'" $ WC "i_sysmode='" + i_sysmode + "'" -$ WC "i_sysmount='undef'" $ WC "i_sysndir='undef'" $ WC "i_sysparam='undef'" $ WC "i_syspoll='" + i_syspoll + "'" @@ -6527,22 +6517,18 @@ $ WC "i_syssecrt='" + i_syssecrt + "'" $ WC "i_sysselct='undef'" $ WC "i_syssockio='undef'" $ WC "i_sysstat='define'" -$ WC "i_sysstatfs='undef'" -$ WC "i_sysstatvfs='" + i_sysstatvfs + "'" $ WC "i_systime='undef'" $ WC "i_systimek='undef'" $ WC "i_systimes='undef'" $ WC "i_systypes='define'" $ WC "i_sysuio='" + i_sysuio + "'" -$ WC "i_sysun='undef'" +$ WC "i_sysun='" + i_sysun + "'" $ WC "i_sysutsname='" + i_sysutsname + "'" -$ WC "i_sysvfs='undef'" $ WC "i_syswait='undef'" $ WC "i_termio='undef'" $ WC "i_termios='undef'" $ WC "i_time='define'" $ WC "i_unistd='" + i_unistd + "'" -$ WC "i_ustat='undef'" $ WC "i_utime='" + i_utime + "'" $ WC "i_values='undef'" $ WC "i_varargs='undef'" @@ -6583,6 +6569,10 @@ $ WC "libs='" + libs + "'" $ WC "libswanted='" + "'" $ WC "libswanted_uselargefiles='" + "'" $ WC "longdblsize='" + longdblsize + "'" +$ WC "longdblkind='" + longdblkind + "'" +$ WC "longdblinfbytes='" + longdblinfbytes + "'" +$ WC "longdblnanbytes='" + longdblnanbytes + "'" +$ WC "longdblmantbits='" + longdblmantbits + "'" $ WC "longlongsize='" + longlongsize + "'" $ WC "longsize='" + longsize + "'" $ IF uselargefiles .OR. uselargefiles .EQS. "define" @@ -6618,6 +6608,7 @@ $ WC "nvfformat='" + nvfformat + "'" $ WC "nvFUformat='" + nvFUformat + "'" $ WC "nvgformat='" + nvgformat + "'" $ WC "nvGUformat='" + nvGUformat + "'" +$ WC "nvmantbits='" + nvmantbits + "'" $ WC "nvsize='" + nvsize + "'" $ WC "nvtype='" + nvtype + "'" $ WC "o_nonblock=' '" @@ -6733,6 +6724,7 @@ $ WC "stdio_ptr='((*fp)->_ptr)'" $ WC "stdio_stream_array=' " + "'" $ WC "subversion='" + subversion + "'" $ WC "targetarch='" + "'" +$ WC "targetsh='MCR'" $ WC "timetype='" + timetype + "'" $ WC "u16size='" + u16size + "'" $ WC "u16type='" + u16type + "'" @@ -6753,6 +6745,7 @@ $ WC "use64bitint='" + use64bitint + "'" $ WC "usecasesensitive='" + be_case_sensitive + "'" ! VMS-specific $ WC "usedebugging_perl='"+use_debugging_perl+"'" $ WC "usedefaulttypes='" + usedefaulttypes + "'" ! VMS-specific +$ WC "usecbacktrace='undef'" $ WC "usecrosscompile='undef'" $ WC "usedevel='" + usedevel + "'" $ WC "usedl='" + usedl + "'" @@ -6770,6 +6763,7 @@ $ WC "usemultiplicity='" + usemultiplicity + "'" $ WC "usemymalloc='" + usemymalloc + "'" $ WC "useperlio='define'" $ WC "useposix='false'" +$ WC "usequadmath='undef'" $ WC "usereentrant='undef'" $ WC "userelocatableinc='undef'" $ WC "usesecurelog='" + usesecurelog + "'" ! VMS-specific @@ -6804,13 +6798,12 @@ $ WC "version_patchlevel_string='" + version_patchlevel_string + "'" $ 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'" $! $! ## The UNIXy POSIXy reentrantey thingys ## $! See "Appendix B, Version-Dependency Tables" in the C RTL $! manual for when assorted _r functions became available. $! -$ IF use_threads .AND. vms_ver .GES. "7.2" +$ IF use_threads $ THEN $ WC "asctime_r_proto='REENTRANT_PROTO_B_SB'" $ WC "d_asctime_r='define'" @@ -6837,7 +6830,7 @@ $ WC "d_getgrnam_r='" + d_getgrnam_r + "'" $ WC "d_gethostbyaddr_r='undef'" $ WC "d_gethostbyname_r='undef'" $ WC "d_gethostent_r='undef'" -$ WC "d_getlogin_r='undef'" +$ WC "d_getlogin_r='define'" $ WC "d_getnetbyaddr_r='undef'" $ WC "d_getnetbyname_r='undef'" $ WC "d_getnetent_r='undef'" @@ -6852,6 +6845,7 @@ $ WC "d_getservbyport_r='undef'" $ WC "d_getservent_r='undef'" $ WC "d_getspnam_r='undef'" $ WC "d_gmtime_r='undef'" ! leave undef'd; we use my_gmtime +$ WC "d_lgamma_r='undef'" $ WC "d_localtime_r='undef'" ! leave undef'd; we use my_localtime $ WC "d_localtime_r_needs_tzset='undef'" $ WC "d_random_r='undef'" @@ -6885,7 +6879,12 @@ $ WC "getgrnam_r_proto='" + getgrnam_r_proto + "'" $ WC "gethostbyaddr_r_proto='0'" $ WC "gethostbyname_r_proto='0'" $ WC "gethostent_r_proto='0'" -$ WC "getlogin_r_proto='0'" +$ IF use_threads +$ THEN +$ WC "getlogin_r_proto='REENTRANT_PROTO_I_BW'" +$ ELSE +$ WC "getlogin_r_proto='0'" +$ ENDIF $ WC "getnetbyaddr_r_proto='0'" $ WC "getnetbyname_r_proto='0'" $ WC "getnetent_r_proto='0'" @@ -6934,12 +6933,12 @@ $ WRITE CONFIG "Gnu_CC:[000000]gcclib.olb/library" $ ENDIF $ WRITE CONFIG "Sys$Share:VAXCRTL/Share" $ CLOSE CONFIG -$ 'ld' munchconfig.obj,munchconfig.opt/opt +$ 'ld'/EXE='exe_ext' munchconfig'obj_ext',munchconfig.opt/opt $ DELETE/NOLOG/NOCONFIRM munchconfig.opt; $ ELSE -$ 'ld' munchconfig.obj +$ 'ld'/EXE='exe_ext' munchconfig'obj_ext' $ ENDIF -$ IF F$SEARCH("munchconfig.obj") .NES. "" THEN DELETE/NOLOG/NOCONFIRM munchconfig.obj; +$ IF F$SEARCH("munchconfig''obj_ext'") .NES. "" THEN DELETE/NOLOG/NOCONFIRM munchconfig'obj_ext'; $ IF F$SEARCH("munchconfig.c") .NES. "" THEN DELETE/NOLOG/NOCONFIRM munchconfig.c; $ IF ccname .EQS. "CXX" $ THEN @@ -7029,7 +7028,7 @@ $ echo4 "Extracting config.h (with variable substitutions)" $! $! Now build the normal config.h $ DEFINE/USER_MODE sys$output [-]config.main -$ mcr []munchconfig 'config_sh' [-]config_h.sh +$ mcr []munchconfig'exe_ext' 'config_sh' [-]config_h.sh $ ! Concatenate them together $ copy [-]config.local,[-]config.main [-]config.h $! Clean up @@ -7090,6 +7089,7 @@ $ DEBUG_REPLACE = "USEVMSDEBUG=__DEBUG__=1" $ ELSE $ DEBUG_REPLACE = "USEVMSDEBUG=" $ ENDIF +$ PREFIX_REPLACE = "PREFIX=PREFIX=''prefix'" $! $! In order not to stress the tiny command buffer on pre-7.3-2 systems, $! we put the following substitutions in a file and pass the file to @@ -7112,13 +7112,14 @@ $ WC "FLAGS=FLAGS=''extra_flags'" $ WC "''LARGEFILE_REPLACE'" $ WC "ARCHNAME=ARCHNAME=''archname'" $ WC "''DEBUG_REPLACE'" +$ WC "''PREFIX_REPLACE'" $ close CONFIG $! $ echo4 "Extracting ''defmakefile' (with variable substitutions)" $ DEFINE/USER_MODE sys$output 'UUmakefile' -$ mcr []munchconfig 'config_sh' 'Makefile_SH' -f extra_subs.txt +$ mcr []munchconfig'exe_ext' 'config_sh' 'Makefile_SH' -f extra_subs.txt $! Clean up after ourselves -$ DELETE/NOLOG/NOCONFIRM []munchconfig.exe; +$ DELETE/NOLOG/NOCONFIRM []munchconfig'exe_ext'; $ DELETE/NOLOG/NOCONFIRM []extra_subs.txt; $! $! Note that the /key qualifier to search, as in: @@ -7133,6 +7134,7 @@ $! NOTE: This file is extracted as part of the VMS configuration process. $! Any changes made to it directly will be lost. If you need to make any $! changes, please edit the template in Configure.Com instead. $! Use FORCE if you've just podified a README.* file on VMS. +$ miniperl = f$search("sys$disk:[]miniperl.%xe;") ! could have alternate extension $ if f$search("extra.pods") .eqs. "" .or. P1 .eqs. "FORCE" then - search README.* "=head"/window=0/output=extra.pods $ open/read/error=extra_close EXTRA extra.pods @@ -7155,7 +7157,7 @@ $ pod_file_rdt = f$cvtime(f$file_attributes(pod_file,"RDT")) $ if file_rdt .GTS. pod_file_rdt then do_copy := true $ endif $ ! wacky method to preserve case on ODS-5 even when parse style is traditional -$ if do_copy then mcr sys$disk:[]miniperl.exe -e "exit 0+$^E unless File::Copy::rmscopy(q{''file'}, q{''pod_file'});" +$ if do_copy then mcr 'miniperl' -e "exit 0+$^E unless File::Copy::rmscopy(q{''file'}, q{''pod_file'});" $ endif $ endif $ goto extra_loop @@ -7279,25 +7281,20 @@ $ ELSE $ WRITE CONFIG "$! This perl configured & administered by ''perladmin'" $ ENDIF $ WRITE CONFIG "$!" -$! HP hack to make distributing binaries easier -$!---------------------------------------------- -$ pcsi_producer = f$trnlnm("PCSI_PRODUCER") -$ if pcsi_producer .eqs. "" -$ then -$ WRITE CONFIG "$ define/translation=concealed ''vms_prefix' ''prefix'" -$ else -$ WRITE CONFIG "$ myproc = f$environment(""PROCEDURE"")" -$ WRITE CONFIG "$ myroot_dev = f$parse(myproc,,,""DEVICE"",""NO_CONCEAL"")" -$ WRITE CONFIG "$ myroot_dir = f$parse(myproc,,,""DIRECTORY"",""NO_CONCEAL"")" -$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""][000000."" - ""><000000.""" -$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""][000000]"" - ""><000000>""" -$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""]["" - ""><""" -$ WRITE CONFIG "$ myroot_dir = myroot_dir - "".]"" - "".>"" - ""["" - ""]"" - ""<"" - "">""" -$ WRITE CONFIG "$ if f$trnlnm(""HP_BUILD_PERL_BIN_KIT"",""LNM$PROCESS_TABLE"") .EQS. """"" -$ WRITE CONFIG "$ then" -$ WRITE CONFIG "$ define/translation=concealed ''vms_prefix' 'myroot_dev'['myroot_dir'.]" -$ WRITE CONFIG "$ endif" -$ endif +$ WRITE CONFIG "$ if P1 .EQS. """"" +$ WRITE CONFIG "$ then" +$ WRITE CONFIG "$ myproc = f$environment(""PROCEDURE"")" +$ WRITE CONFIG "$ myroot_dev = f$parse(myproc,,,""DEVICE"",""NO_CONCEAL"")" +$ WRITE CONFIG "$ myroot_dir = f$parse(myproc,,,""DIRECTORY"",""NO_CONCEAL"")" +$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""][000000."" - ""><000000.""" +$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""][000000]"" - ""><000000>""" +$ WRITE CONFIG "$ myroot_dir = myroot_dir - ""]["" - ""><""" +$ WRITE CONFIG "$ myroot_dir = myroot_dir - "".]"" - "".>"" - ""["" - ""]"" - ""<"" - "">""" +$ WRITE CONFIG "$ root_spec = myroot_dev + ""["" + myroot_dir + "".]""" +$ WRITE CONFIG "$ else" +$ WRITE CONFIG "$ root_spec = P1" +$ WRITE CONFIG "$ endif" +$ WRITE CONFIG "$ define/translation=concealed ''vms_prefix' 'root_spec'" $ WRITE CONFIG "$ ext = "".exe""" $ IF sharedperl $ THEN @@ -7340,11 +7337,10 @@ $ WRITE CONFIG "$!" $ WRITE CONFIG "$! Symbols for Perl-based utility programs:" $ WRITE CONFIG "$!" $ WRITE CONFIG "$ c2ph == """ + perl_setup_perl + " ''vms_prefix':[utils]c2ph.com""" -$ WRITE CONFIG "$ config_data== """ + perl_setup_perl + " ''vms_prefix':[utils]config_data.com""" $ WRITE CONFIG "$ corelist == """ + perl_setup_perl + " ''vms_prefix':[utils]corelist.com""" $ WRITE CONFIG "$ cpan == """ + perl_setup_perl + " ''vms_prefix':[utils]cpan.com""" $ WRITE CONFIG "$ enc2xs == """ + perl_setup_perl + " ''vms_prefix':[utils]enc2xs.com""" -$ WRITE CONFIG "$ find2perl == """ + perl_setup_perl + " ''vms_prefix':[utils]find2perl.com""" +$ WRITE CONFIG "$ encguess == """ + perl_setup_perl + " ''vms_prefix':[utils]encguess.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""" @@ -7363,7 +7359,6 @@ $ WRITE CONFIG "$ podselect == """ + perl_setup_perl + " ''vms_prefix':[utils]p $ WRITE CONFIG "$ prove == """ + perl_setup_perl + " ''vms_prefix':[utils]prove.com""" $ WRITE CONFIG "$ psed == """ + perl_setup_perl + " ''vms_prefix':[utils]psed.com""" $ WRITE CONFIG "$ pstruct == """ + perl_setup_perl + " ''vms_prefix':[utils]pstruct.com""" -$ WRITE CONFIG "$ s2p == """ + perl_setup_perl + " ''vms_prefix':[utils]s2p.com""" $ WRITE CONFIG "$ ptar == """ + perl_setup_perl + " ''vms_prefix':[utils]ptar.com""" $ WRITE CONFIG "$ ptardiff == """ + perl_setup_perl + " ''vms_prefix':[utils]ptardiff.com""" $ WRITE CONFIG "$ ptargrep == """ + perl_setup_perl + " ''vms_prefix':[utils]ptargrep.com"""