diff options
author | Todd C. Miller <millert@cvs.openbsd.org> | 2001-05-24 18:36:42 +0000 |
---|---|---|
committer | Todd C. Miller <millert@cvs.openbsd.org> | 2001-05-24 18:36:42 +0000 |
commit | 8bab8b19946f98d4be49345ca9c42e56674b65fb (patch) | |
tree | bd62d7b5d463fab205d08914b30ba647eb3c8bc8 /gnu/usr.bin/perl/Porting | |
parent | 483d4e680bd2a6db14835b1b4d65be33488d532b (diff) |
merge in perl 5.6.1 with our local changes
Diffstat (limited to 'gnu/usr.bin/perl/Porting')
-rw-r--r-- | gnu/usr.bin/perl/Porting/Glossary | 299 | ||||
-rw-r--r-- | gnu/usr.bin/perl/Porting/config_H | 299 | ||||
-rw-r--r-- | gnu/usr.bin/perl/Porting/makerel | 43 | ||||
-rw-r--r-- | gnu/usr.bin/perl/Porting/pumpkin.pod | 69 |
4 files changed, 539 insertions, 171 deletions
diff --git a/gnu/usr.bin/perl/Porting/Glossary b/gnu/usr.bin/perl/Porting/Glossary index cc66d7041bd..d32c0a67895 100644 --- a/gnu/usr.bin/perl/Porting/Glossary +++ b/gnu/usr.bin/perl/Porting/Glossary @@ -174,7 +174,8 @@ cat (Loc.U): cc (cc.U): This variable holds the name of a command to execute a C compiler which can resolve multiple global references that happen to have the same - name. Usual values are 'cc', 'Mcc', 'cc -M', and 'gcc'. + name. Usual values are 'cc' and 'gcc'. + Fervent ANSI compilers may be called 'c89'. AIX has xlc. cccdlflags (dlsrc.U): This variable contains any special flags that might need to be @@ -192,12 +193,28 @@ ccflags (ccflags.U): This variable contains any additional C compiler flags desired by the user. It is up to the Makefile to use this. +ccflags_uselargefiles (uselfs.U): + This variable contains the compiler flags needed by large file builds + and added to ccflags by hints files. + +ccname (Checkcc.U): + This can set either by hints files or by Configure. If using + gcc, this is gcc, and if not, usually equal to cc, unimpressive, no? + Some platforms, however, make good use of this by storing the + flavor of the C compiler being used here. For example if using + the Sun WorkShop suite, ccname will be 'workshop'. + ccsymbols (Cppsym.U): The variable contains the symbols defined by the C compiler alone. The symbols defined by cpp or by cc when it calls cpp are not in this list, see cppsymbols and cppccsymbols. The list is a space-separated list of symbol=value tokens. +ccversion (Checkcc.U): + This can set either by hints files or by Configure. If using + a (non-gcc) vendor cc, this variable may contain a version for + the compiler. + cf_by (cf_who.U): Login name of the person who ran the Configure script and answered the questions. This is used to tag both config.sh and config_h.SH. @@ -323,6 +340,10 @@ csh (Loc.U): full pathname (if any) of the csh program. After Configure runs, the value is reset to a plain "csh" and is not useful. +d__fwalk (d__fwalk.U): + This variable conditionally defines HAS__FWALK if _fwalk() is + available to apply a function to all the file handles. + d_access (d_access.U): This variable conditionally defines HAS_ACCESS if the access() system call is available to check for access permissions using real IDs. @@ -506,10 +527,6 @@ d_endsent (d_endsent.U): This variable conditionally defines HAS_ENDSERVENT if endservent() is available to close whatever was being used for service queries. -d_endspent (d_endspent.U): - This variable conditionally defines HAS_ENDSPENT if endspent() is - available to finalize the scan of SysV shadow password entries. - d_eofnblk (nblock_io.U): This variable conditionally defines EOF_NONBLOCK if EOF can be seen when reading from a non-blocking I/O source. @@ -532,6 +549,10 @@ d_fcntl (d_fcntl.U): This variable conditionally defines the HAS_FCNTL symbol, and indicates whether the fcntl() function exists +d_fcntl_can_lock (d_fcntl_can_lock.U): + This variable conditionally defines the FCNTL_CAN_LOCK symbol + and indicates whether file locking with fcntl() works. + d_fd_macros (d_fd_set.U): This variable contains the eventual value of the HAS_FD_MACROS symbol, which indicates if your C compiler knows about the macros which @@ -573,6 +594,10 @@ d_fpathconf (d_pathconf.U): d_fpos64_t (d_fpos64_t.U): This symbol will be defined if the C compiler supports fpos64_t. +d_frexpl (d_frexpl.U): + This variable conditionally defines the HAS_FREXPL symbol, which + indicates to the C program that the frexpl() routine is available. + d_fs_data_s (d_fs_data_s.U): This variable conditionally defines the HAS_STRUCT_FS_DATA symbol, which indicates that the struct fs_data is supported. @@ -593,6 +618,10 @@ d_fstatvfs (d_statvfs.U): This variable conditionally defines the HAS_FSTATVFS symbol, which indicates to the C program that the fstatvfs() routine is available. +d_fsync (d_fsync.U): + This variable conditionally defines the HAS_FSYNC symbol, which + indicates to the C program that the fsync() routine is available. + d_ftello (d_ftello.U): This variable conditionally defines the HAS_FTELLO symbol, which indicates to the C program that the ftello() routine is available. @@ -616,6 +645,10 @@ d_getcwd (d_getcwd.U): indicates to the C program that the getcwd() routine is available to get the current working directory. +d_getespwnam (d_getespwnam.U): + This variable conditionally defines HAS_GETESPWNAM if getespwnam() is + available to retrieve enchanced (shadow) password entries by name. + d_getfsstat (d_getfsstat.U): This variable conditionally defines the HAS_GETFSSTAT symbol, which indicates to the C program that the getfsstat() routine is available. @@ -690,6 +723,10 @@ d_getnetprotos (d_getnetprotos.U): prototypes for the various getnet*() functions. See also netdbtype.U for probing for various netdb types. +d_getpagsz (d_getpagsz.U): + This variable conditionally defines HAS_GETPAGESIZE if getpagesize() + is available to get the system page size. + d_getpbyname (d_getprotby.U): This variable conditionally defines the HAS_GETPROTOBYNAME symbol, which indicates to the C program that the @@ -735,6 +772,10 @@ d_getprotoprotos (d_getprotoprotos.U): prototypes for the various getproto*() functions. See also netdbtype.U for probing for various netdb types. +d_getprpwnam (d_getprpwnam.U): + This variable conditionally defines HAS_GETPRPWNAM if getprpwnam() is + available to retrieve protected (shadow) password entries by name. + d_getpwent (d_getpwent.U): This variable conditionally defines the HAS_GETPWENT symbol, which indicates to the C program that the getpwent() routine is available @@ -762,10 +803,6 @@ d_getservprotos (d_getservprotos.U): prototypes for the various getserv*() functions. See also netdbtype.U for probing for various netdb types. -d_getspent (d_getspent.U): - This variable conditionally defines HAS_GETSPENT if getspent() is - available to retrieve SysV shadow password entries sequentially. - d_getspnam (d_getspnam.U): This variable conditionally defines HAS_GETSPNAM if getspnam() is available to retrieve SysV shadow password entries by name. @@ -811,6 +848,14 @@ d_isascii (d_isascii.U): This variable conditionally defines the HAS_ISASCII constant, which indicates to the C program that isascii() is available. +d_isnan (d_isnan.U): + This variable conditionally defines the HAS_ISNAN symbol, which + indicates to the C program that the isnan() routine is available. + +d_isnanl (d_isnanl.U): + This variable conditionally defines the HAS_ISNANL symbol, which + indicates to the C program that the isnanl() routine is available. + d_killpg (d_killpg.U): This variable conditionally defines the HAS_KILLPG symbol, which indicates to the C program that the killpg() routine is available @@ -933,6 +978,10 @@ d_mmap (d_mmap.U): This variable conditionally defines HAS_MMAP if mmap() is available to map a file into memory. +d_modfl (d_modfl.U): + This variable conditionally defines the HAS_MODFL symbol, which + indicates to the C program that the modfl() routine is available. + d_mprotect (d_mprotect.U): This variable conditionally defines HAS_MPROTECT if mprotect() is available to modify the access protection of a memory mapped file. @@ -1003,6 +1052,10 @@ d_nv_preserves_uv (perlxv.U): This variable indicates whether a variable of type nvtype can preserve all the bits a variable of type uvtype. +d_nv_preserves_uv_bits (perlxv.U): + This variable indicates how many of bits type uvtype + a variable nvtype can preserve. + d_off64_t (d_off64_t.U): This symbol will be defined if the C compiler supports off64_t. @@ -1036,6 +1089,11 @@ d_pause (d_pause.U): indicates to the C program that the pause() routine is available to suspend a process until a signal is received. +d_perl_otherlibdirs (otherlibdirs.U): + This variable conditionally defines PERL_OTHERLIBDIRS, which + contains a colon-separated set of paths for the perl binary to + include in @INC. See also otherlibdirs. + d_phostname (d_gethname.U): This variable conditionally defines the HAS_PHOSTNAME symbol, which contains the shell command which, when fed to popen(), may be @@ -1061,28 +1119,34 @@ d_PRId64 (quadfio.U): indiciates that stdio has a symbol to print 64-bit decimal numbers. d_PRIeldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. -d_PRIEldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which +d_PRIEUldbl (longdblfio.U): + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIeldbl so that even + case-blind systems can see the difference. d_PRIfldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. -d_PRIFldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which +d_PRIFUldbl (longdblfio.U): + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIfldbl so that even + case-blind systems can see the difference. d_PRIgldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. -d_PRIGldbl (longdblfio.U): - This variable conditionally defines the PERL_PRIfldlbl symbol, which +d_PRIGUldbl (longdblfio.U): + This variable conditionally defines the PERL_PRIfldbl symbol, which indiciates that stdio has a symbol to print long doubles. + The 'U' in the name is to separate this from d_PRIgldbl so that even + case-blind systems can see the difference. d_PRIi64 (quadfio.U): This variable conditionally defines the PERL_PRIi64 symbol, which @@ -1101,9 +1165,11 @@ d_PRIx64 (quadfio.U): This variable conditionally defines the PERL_PRIx64 symbol, which indiciates that stdio has a symbol to print 64-bit hexadecimal numbers. -d_PRIX64 (quadfio.U): - This variable conditionally defines the PERL_PRIX64 symbol, which +d_PRIXU64 (quadfio.U): + This variable conditionally defines the PERL_PRIXU64 symbol, which indiciates that stdio has a symbol to print 64-bit hExADECimAl numbers. + The 'U' in the name is to separate this from d_PRIx64 so that even + case-blind systems can see the difference. d_pthread_yield (d_pthread_y.U): This variable conditionally defines the HAS_PTHREAD_YIELD @@ -1185,6 +1251,12 @@ d_sanemcmp (d_sanemcmp.U): the memcpy() routine is available and can be used to compare relative magnitudes of chars with their high bits set. +d_sbrkproto (d_sbrkproto.U): + This variable conditionally defines the HAS_SBRK_PROTO symbol, + which indicates to the C program that the system provides + a prototype for the sbrk() function. Otherwise, it is + up to the program to supply one. + d_sched_yield (d_pthread_y.U): This variable conditionally defines the HAS_SCHED_YIELD symbol if the sched_yield routine is available to yield @@ -1195,6 +1267,10 @@ d_scm_rights (d_socket.U): which indicates that the SCM_RIGHTS is available. #ifdef is not enough because it may be an enum, glibc has been known to do this. +d_SCNfldbl (longdblfio.U): + This variable conditionally defines the PERL_PRIfldbl symbol, which + indiciates that stdio has a symbol to scan long doubles. + d_seekdir (d_readdir.U): This variable conditionally defines HAS_SEEKDIR if seekdir() is available. @@ -1287,6 +1363,11 @@ d_setprior (d_setprior.U): This variable conditionally defines HAS_SETPRIORITY if setpriority() is available to set a process's priority. +d_setproctitle (d_setproctitle.U): + This variable conditionally defines the HAS_SETPROCTITLE symbol, + which indicates to the C program that the setproctitle() routine + is available. + d_setpwent (d_setpwent.U): This variable conditionally defines the HAS_SETPWENT symbol, which indicates to the C program that the setpwent() routine is available @@ -1330,10 +1411,6 @@ d_setsid (d_setsid.U): This variable conditionally defines HAS_SETSID if setsid() is available to set the process group ID. -d_setspent (d_setspent.U): - This variable conditionally defines HAS_SETSPENT if setspent() is - available to initialize the scan of SysV shadow password entries. - d_setvbuf (d_setvbuf.U): This variable conditionally defines the HAS_SETVBUF symbol, which indicates to the C program that the setvbuf() routine is available @@ -1372,6 +1449,11 @@ d_sigaction (d_sigaction.U): This variable conditionally defines the HAS_SIGACTION symbol, which indicates that the Vr4 sigaction() routine is available. +d_sigprocmask (d_sigprocmask.U): + This variable conditionally defines HAS_SIGPROCMASK + if sigprocmask() is available to examine or change the signal mask + of the calling process. + d_sigsetjmp (d_sigsetjmp.U): This variable conditionally defines the HAS_SIGSETJMP symbol, which indicates that the sigsetjmp() routine is available to @@ -1388,6 +1470,10 @@ d_sockpair (d_socket.U): This variable conditionally defines the HAS_SOCKETPAIR symbol, which indicates that the BSD socketpair() is supported. +d_socks5_init (d_socks5_init.U): + This variable conditionally defines the HAS_SOCKS5_INIT symbol, which + indicates to the C program that the socks5_init() routine is available. + d_sqrtl (d_sqrtl.U): This variable conditionally defines the HAS_SQRTL symbol, which indicates to the C program that the sqrtl() routine is available. @@ -1419,6 +1505,15 @@ d_stdio_ptr_lval (d_stdstdio.U): This variable conditionally defines STDIO_PTR_LVALUE if the FILE_ptr macro can be used as an lvalue. +d_stdio_ptr_lval_nochange_cnt (d_stdstdio.U): + This symbol is defined if using the FILE_ptr macro as an lvalue + to increase the pointer by n leaves File_cnt(fp) unchanged. + +d_stdio_ptr_lval_sets_cnt (d_stdstdio.U): + This symbol is defined if using the FILE_ptr macro as an lvalue + to increase the pointer by n has the side effect of decreasing the + value of File_cnt(fp) by n. + d_stdio_stream_array (stdio_streams.U): This variable tells whether there is an array holding the stdio streams. @@ -1474,6 +1569,10 @@ d_strtoll (d_strtoll.U): This variable conditionally defines the HAS_STRTOLL symbol, which indicates to the C program that the strtoll() routine is available. +d_strtoq (d_strtoq.U): + This variable conditionally defines the HAS_STRTOQ symbol, which + indicates to the C program that the strtoq() routine is available. + d_strtoul (d_strtoul.U): This variable conditionally defines the HAS_STRTOUL symbol, which indicates to the C program that the strtoul() routine is available @@ -1782,7 +1881,12 @@ full_sed (Loc_sed.U): can share this executable will have the same full pathname to 'sed.' -gccversion (cc.U): +gccosandvers (gccvers.U): + If GNU cc (gcc) is used, this variable the operating system and + version used to compile the gcc. It is set to '' if not gcc, + or if nothing useful can be parsed as the os version. + +gccversion (gccvers.U): If GNU cc (gcc) is used, this variable holds '1' or '2' to indicate whether the compiler is version 1 or 2. This is used in setting some of the default cflags. It is set to '' if not gcc. @@ -1849,12 +1953,6 @@ hostcat (nis.U): On some systems, such as os390, there may be no equivalent command, in which case this variable is unset. -huge (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a huge memory model. If the - huge model is not supported, contains the flag to produce large - model programs. It is up to the Makefile to use this. - i16size (perlxv.U): This variable is the size of an I16 in bytes. @@ -1941,6 +2039,10 @@ i_inttypes (i_inttypes.U): This variable conditionally defines the I_INTTYPES symbol, and indicates whether a C program should include <inttypes.h>. +i_libutil (i_libutil.U): + This variable conditionally defines the I_LIBUTIL symbol, and indicates + whether a C program should include <libutil.h>. + i_limits (i_limits.U): This variable conditionally defines the I_LIMITS symbol, and indicates whether a C program may include <limits.h> to get symbols like WORD_BIT @@ -1997,6 +2099,10 @@ i_poll (i_poll.U): This variable conditionally defines the I_POLL symbol, and indicates whether a C program should include <poll.h>. +i_prot (i_prot.U): + This variable conditionally defines the I_PROT symbol, and indicates + whether a C program should include <prot.h>. + i_pthread (i_pthread.U): This variable conditionally defines the I_PTHREAD symbol, and indicates whether a C program should include <pthread.h>. @@ -2342,6 +2448,11 @@ intsize (intsize.U): This variable contains the value of the INTSIZE symbol, which indicates to the C program how many bytes there are in an int. +issymlink (issymlink.U): + This variable holds the test command to test for a symbolic link + (if they are supported). Typical values include 'test -h' and + 'test -L'. + ivdformat (perlxvf.U): This variable contains the format string used for printing a Perl IV as a signed decimal integer. @@ -2360,11 +2471,6 @@ ksh (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. -large (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a large memory model. It is up to - the Makefile to use this. - ld (dlsrc.U): This variable indicates the program to be used to link libraries for dynamic loading. On some systems, it is 'ld'. @@ -2381,6 +2487,10 @@ ldflags (ccflags.U): This variable contains any additional C loader flags desired by the user. It is up to the Makefile to use this. +ldflags_uselargefiles (uselfs.U): + This variable contains the loader flags needed by large file builds + and added to ldflags by hints files. + ldlibpthname (libperl.U): This variable holds the name of the shared library search path, often LD_LIBRARY_PATH. To get an empty @@ -2433,6 +2543,12 @@ libswanted (Myinit.U): search. The order is chosen to pick up the c library ahead of ucb or bsd libraries for SVR4. +libswanted_uselargefiles (uselfs.U): + This variable contains the libraries needed by large file builds + and added to ldflags by hints files. It is a space separated list + of the library names without the "lib" prefix or any suffix, just + like libswanted.. + line (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. @@ -2578,12 +2694,6 @@ Mcc (Loc.U): full pathname (if any) of the Mcc program. After Configure runs, the value is reset to a plain "Mcc" and is not useful. -medium (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a medium memory model. If the - medium model is not supported, contains the flag to produce large - model programs. It is up to the Makefile to use this. - mips_type (usrinc.U): This variable holds the environment type for the mips system. Possible values are "BSD 4.3" and "System V". @@ -2598,11 +2708,6 @@ mmaptype (d_mmap.U): (and simultaneously the type of the first argument). It can be 'void *' or 'caddr_t'. -models (models.U): - This variable contains the list of memory models supported by this - system. Possible component values are none, split, unsplit, small, - medium, large, and huge. The component values are space separated. - modetype (modetype.U): This variable defines modetype to be something like mode_t, int, unsigned short, or whatever type is used to declare file @@ -2649,6 +2754,15 @@ n (n.U): command to suppress newline. Otherwise it is null. Correct usage is $echo $n "prompt for a question: $c". +need_va_copy (need_va_copy.U): + This symbol, if defined, indicates that the system stores + the variable argument list datatype, va_list, in a format + that cannot be copied by simple assignment, so that some + other means must be used when copying is required. + As such systems vary in their provision (or non-provision) + of copying mechanisms, handy.h defines a platform- + independent macro, Perl_va_copy(src, dst), to do the job. + netdb_hlen_type (netdbtype.U): This variable holds the type used for the 2nd argument to gethostbyaddr(). Usually, this is int or size_t or unsigned. @@ -2695,6 +2809,30 @@ nroff (Loc.U): full pathname (if any) of the nroff program. After Configure runs, the value is reset to a plain "nroff" and is not useful. +nveformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %e-ish floating point format. + +nvEUformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %E-ish floating point format. + +nvfformat (perlxvf.U): + This variable confains the format string used for printing + a Perl NV using %f-ish floating point format. + +nvFUformat (perlxvf.U): + This variable confains the format string used for printing + a Perl NV using %F-ish floating point format. + +nvgformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %g-ish floating point format. + +nvGUformat (perlxvf.U): + This variable contains the format string used for printing + a Perl NV using %G-ish floating point format. + nvsize (perlxv.U): This variable is the size of an NV in bytes. @@ -2741,6 +2879,16 @@ osvers (Oldconfig.U): same for this package, hints files might just be os_4.0 or os_4.1, etc., not keeping separate files for each little release. +otherlibdirs (otherlibdirs.U): + This variable contains a colon-separated set of paths for the perl + binary to search for additional library files or modules. + These directories will be tacked to the end of @INC. + Perl will automatically search below each path for version- + and architecture-specific directories. See inc_version_list + for more details. + A value of ' ' means 'none' and is used to preserve this value + for the next run through Configure. + package (package.U): This variable contains the name of the package being constructed. It is primarily intended for the use of later Configure units. @@ -2792,6 +2940,10 @@ PERL_VERSION (Oldsyms.U): perladmin (perladmin.U): Electronic mail address of the perl5 administrator. +perllibs (End.U): + The list of libraries needed by Perl only (any libraries needed + by extensions only will by dropped, if using dynamic loading). + perlpath (perlpath.U): This variable contains the eventual value of the PERLPATH symbol, which contains the name of the perl interpreter to be used in @@ -3036,6 +3188,10 @@ sig_num_init (sig_name.U): below. A "ZERO" is prepended to the list, and the list is terminated with a plain 0. +sig_size (sig_name.U): + This variable contains the number of elements of the sig_name + and sig_num arrays, excluding the final NULL entry. + signal_t (d_voidsig.U): This variable holds the type of the signal handler (void or int). @@ -3114,11 +3270,6 @@ smail (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. -small (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program running with a small memory model. It is up to - the Makefile to use this. - so (so.U): This variable holds the extension used to identify shared libraries (also known as shared objects) on the system. Usually set to 'so'. @@ -3148,12 +3299,6 @@ spitshell (spitshell.U): This variable contains the command necessary to spit out a runnable shell on this system. It is either cat or a grep '-v' for # comments. -split (models.U): - This variable contains a flag which will tell the C compiler and loader - to produce a program that will run in separate I and D space, for those - machines that support separation of instruction and data space. It is - up to the Makefile to use this. - sPRId64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit decimal numbers (format 'd') for output. @@ -3162,25 +3307,31 @@ sPRIeldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'e') for output. -sPRIEldbl (longdblfio.U): +sPRIEUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'E') for output. + The 'U' in the name is to separate this from sPRIeldbl so that even + case-blind systems can see the difference. sPRIfldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'f') for output. -sPRIFldbl (longdblfio.U): +sPRIFUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'F') for output. + The 'U' in the name is to separate this from sPRIfldbl so that even + case-blind systems can see the difference. sPRIgldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'g') for output. -sPRIGldbl (longdblfio.U): +sPRIGUldbl (longdblfio.U): This variable, if defined, contains the string used by stdio to format long doubles (format 'G') for output. + The 'U' in the name is to separate this from sPRIgldbl so that even + case-blind systems can see the difference. sPRIi64 (quadfio.U): This variable, if defined, contains the string used by stdio to @@ -3198,15 +3349,21 @@ sPRIx64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit hexadecimal numbers (format 'x') for output. -sPRIX64 (quadfio.U): +sPRIXU64 (quadfio.U): This variable, if defined, contains the string used by stdio to format 64-bit hExADECimAl numbers (format 'X') for output. + The 'U' in the name is to separate this from sPRIx64 so that even + case-blind systems can see the difference. src (src.U): This variable holds the path to the package source. It is up to the Makefile to use this variable and set VPATH accordingly to find the sources remotely. +sSCNfldbl (longdblfio.U): + This variable, if defined, contains the string used by stdio to + format long doubles (format 'f') for input. + ssizetype (ssizetype.U): This variable defines ssizetype to be something like ssize_t, long or int. It is used by functions that return a count @@ -3521,7 +3678,11 @@ uvuformat (perlxvf.U): uvxformat (perlxvf.U): This variable contains the format string used for printing - a Perl UV as an unsigned hexadecimal integer. + a Perl UV as an unsigned hexadecimal integer in lowercase abcdef. + +uvXUformat (perlxvf.U): + This variable contains the format string used for printing + a Perl UV as an unsigned hexadecimal integer in uppercase ABCDEF. vendorarch (vendorarch.U): This variable contains the value of the PERL_VENDORARCH symbol. @@ -3583,6 +3744,18 @@ version (patchlevel.U): This is suitable for use as a directory name, and hence is filesystem dependent. +versiononly (versiononly.U): + If set, this symbol indicates that only the version-specific + components of a perl installation should be installed. + This may be useful for making a test installation of a new + version without disturbing the existing installation. + Setting versiononly is equivalent to setting installperl's -v option. + In particular, the non-versioned scripts and programs such as + a2p, c2ph, h2xs, pod2*, and perldoc are not installed + (see INSTALL for a more complete list). Nor are the man + pages installed. + Usually, this is undef. + vi (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. diff --git a/gnu/usr.bin/perl/Porting/config_H b/gnu/usr.bin/perl/Porting/config_H index c80ebaffe0e..311fd91524c 100644 --- a/gnu/usr.bin/perl/Porting/config_H +++ b/gnu/usr.bin/perl/Porting/config_H @@ -17,7 +17,7 @@ /* * Package name : perl5 * Source directory : . - * Configuration time: Tue Mar 21 23:22:20 EET 2000 + * Configuration time: Sat Mar 3 01:13:55 EET 2001 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ @@ -224,17 +224,6 @@ */ #define HAS_GETPGID /**/ -/* HAS_GETPGRP: - * This symbol, if defined, indicates that the getpgrp routine is - * available to get the current process group. - */ -/* USE_BSD_GETPGRP: - * This symbol, if defined, indicates that getpgrp needs one - * arguments whereas USG one needs none. - */ -#define HAS_GETPGRP /**/ -/*#define USE_BSD_GETPGRP / **/ - /* HAS_GETPGRP2: * This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) * routine is available to get the current process group. @@ -489,18 +478,6 @@ */ #define HAS_SETPGID /**/ -/* HAS_SETPGRP: - * This symbol, if defined, indicates that the setpgrp routine is - * available to set the current process group. - */ -/* USE_BSD_SETPGRP: - * This symbol, if defined, indicates that setpgrp needs two - * arguments whereas USG one needs none. See also HAS_SETPGID - * for a POSIX interface. - */ -#define HAS_SETPGRP /**/ -#define USE_BSD_SETPGRP /**/ - /* HAS_SETPGRP2: * This symbol, if defined, indicates that the setpgrp2() (as in DG/UX) * routine is available to set the current process group. @@ -984,12 +961,6 @@ */ #define SH_PATH "/bin/sh" /**/ -/* STDCHAR: - * This symbol is defined to be the type of char used in stdio.h. - * It has the values "unsigned char" or "char". - */ -#define STDCHAR unsigned char /**/ - /* CROSSCOMPILE: * This symbol, if defined, signifies that we our * build process is a cross-compilation. @@ -1092,8 +1063,8 @@ * This symbol contains the ~name expanded version of ARCHLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define ARCHLIB "/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi" /**/ -#define ARCHLIB_EXP "/opt/perl/lib/5.6.0/alpha-dec_osf-thread-multi" /**/ +#define ARCHLIB "/opt/perl/lib/5.6.1/alpha-dec_osf-thread" /**/ +#define ARCHLIB_EXP "/opt/perl/lib/5.6.1/alpha-dec_osf-thread" /**/ /* ARCHNAME: * This symbol holds a string representing the architecture name. @@ -1101,7 +1072,7 @@ * where library files may be held under a private library, for * instance. */ -#define ARCHNAME "alpha-dec_osf-thread-multi" /**/ +#define ARCHNAME "alpha-dec_osf-thread" /**/ /* HAS_ATOLF: * This symbol, if defined, indicates that the atolf routine is @@ -1184,21 +1155,21 @@ * This macro surrounds its token with double quotes. */ #if 42 == 1 -# define CAT2(a,b) a/**/b -# define STRINGIFY(a) "a" +#define CAT2(a,b) a/**/b +#define STRINGIFY(a) "a" /* If you can get stringification with catify, tell me how! */ #endif #if 42 == 42 -# define PeRl_CaTiFy(a, b) a ## b -# define PeRl_StGiFy(a) #a +#define PeRl_CaTiFy(a, b) a ## b +#define PeRl_StGiFy(a) #a /* the additional level of indirection enables these macros to be * used as arguments to other macros. See K&R 2nd ed., page 231. */ -# define CAT2(a,b) PeRl_CaTiFy(a,b) -# define StGiFy(a) PeRl_StGiFy(a) -# define STRINGIFY(a) PeRl_StGiFy(a) +#define CAT2(a,b) PeRl_CaTiFy(a,b) +#define StGiFy(a) PeRl_StGiFy(a) +#define STRINGIFY(a) PeRl_StGiFy(a) #endif #if 42 != 1 && 42 != 42 -#include "Bletch: How does this C preprocessor catenate tokens?" +# include "Bletch: How does this C preprocessor catenate tokens?" #endif /* CPPSTDIN: @@ -1328,23 +1299,30 @@ */ #define HAS_ENDSERVENT /**/ -/* HAS_ENDSPENT: - * This symbol, if defined, indicates that the endspent system call is - * available to finalize the scan of SysV shadow password entries. - */ -/*#define HAS_ENDSPENT / **/ - /* HAS_FD_SET: * This symbol, when defined, indicates presence of the fd_set typedef * in <sys/types.h> */ #define HAS_FD_SET /**/ +/* FLEXFILENAMES: + * This symbol, if defined, indicates that the system supports filenames + * longer than 14 characters. + */ +#define FLEXFILENAMES /**/ + /* HAS_FPOS64_T: * This symbol will be defined if the C compiler supports fpos64_t. */ /*#define HAS_FPOS64_T / **/ +/* HAS_FREXPL: + * This symbol, if defined, indicates that the frexpl routine is + * available to break a long double floating-point number into + * a normalized fraction and an integral power of 2. + */ +#define HAS_FREXPL /**/ + /* HAS_STRUCT_FS_DATA: * This symbol, if defined, indicates that the struct fs_data * to do statfs() is supported. @@ -1392,6 +1370,12 @@ */ #define HAS_GETCWD /**/ +/* HAS_GETESPWNAM: + * This symbol, if defined, indicates that the getespwnam system call is + * available to retrieve enchanced (shadow) password entries by name. + */ +/*#define HAS_GETESPWNAM / **/ + /* HAS_GETFSSTAT: * This symbol, if defined, indicates that the getfsstat routine is * available to stat filesystems in bulk. @@ -1497,6 +1481,13 @@ */ #define HAS_GETNET_PROTOS /**/ +/* HAS_GETPAGESIZE: + * This symbol, if defined, indicates that the getpagesize system call + * is available to get system page size, which is the granularity of + * many memory management calls. + */ +#define HAS_GETPAGESIZE /**/ + /* HAS_GETPROTOENT: * This symbol, if defined, indicates that the getprotoent() routine is * available to look up protocols in some data base or another. @@ -1522,6 +1513,12 @@ */ #define HAS_GETPROTO_PROTOS /**/ +/* HAS_GETPRPWNAM: + * This symbol, if defined, indicates that the getprpwnam system call is + * available to retrieve protected (shadow) password entries by name. + */ +/*#define HAS_GETPRPWNAM / **/ + /* HAS_GETPWENT: * This symbol, if defined, indicates that the getpwent routine is * available for sequential access of the passwd database. @@ -1543,12 +1540,6 @@ */ #define HAS_GETSERV_PROTOS /**/ -/* HAS_GETSPENT: - * This symbol, if defined, indicates that the getspent system call is - * available to retrieve SysV shadow password entries sequentially. - */ -/*#define HAS_GETSPENT / **/ - /* HAS_GETSPNAM: * This symbol, if defined, indicates that the getspnam system call is * available to retrieve SysV shadow password entries by name. @@ -1624,6 +1615,25 @@ */ #define HAS_ISASCII /**/ +/* HAS_ISNAN: + * This symbol, if defined, indicates that the isnan routine is + * available to check whether a double is a NaN. + */ +#define HAS_ISNAN /**/ + +/* HAS_ISNANL: + * This symbol, if defined, indicates that the isnanl routine is + * available to check whether a long double is a NaN. + */ +#define HAS_ISNANL /**/ + +/* HAS_LCHOWN: + * This symbol, if defined, indicates that the lchown routine is + * available to operate on a symbolic link (instead of following the + * link). + */ +#define HAS_LCHOWN /**/ + /* HAS_LDBL_DIG: * This symbol, if defined, indicates that this system's <float.h> * or <limits.h> defines the symbol LDBL_DIG, which is the number @@ -1711,6 +1721,13 @@ #define HAS_MMAP /**/ #define Mmap_t void * /**/ +/* HAS_MODFL: + * This symbol, if defined, indicates that the modfl routine is + * available to split a long double x into a fractional part f and + * an integer part i such that |f| < 1.0 and (f + i) = x. + */ +#define HAS_MODFL /**/ + /* HAS_MPROTECT: * This symbol, if defined, indicates that the mprotect system call is * available to modify the access protection of a memory mapped file. @@ -1823,6 +1840,12 @@ */ #define HAS_SETPROTOENT /**/ +/* HAS_SETPROCTITLE: + * This symbol, if defined, indicates that the setproctitle routine is + * available to set process title. + */ +/*#define HAS_SETPROCTITLE / **/ + /* HAS_SETPWENT: * This symbol, if defined, indicates that the setpwent routine is * available for initializing sequential access of the passwd database. @@ -1835,12 +1858,6 @@ */ #define HAS_SETSERVENT /**/ -/* HAS_SETSPENT: - * This symbol, if defined, indicates that the setspent system call is - * available to initialize the scan of SysV shadow password entries. - */ -/*#define HAS_SETSPENT / **/ - /* HAS_SETVBUF: * This symbol, if defined, indicates that the setvbuf routine is * available to change buffering on an open stdio stream. @@ -1944,6 +1961,12 @@ /*#define HAS_MSG_PROXY / **/ #define HAS_SCM_RIGHTS /**/ +/* HAS_SOCKS5_INIT: + * This symbol, if defined, indicates that the socks5_init routine is + * available to initialize SOCKS 5. + */ +/*#define HAS_SOCKS5_INIT / **/ + /* HAS_SQRTL: * This symbol, if defined, indicates that the sqrtl routine is * available to do long double square roots. @@ -2006,12 +2029,23 @@ * This symbol is defined if the FILE_cnt macro can be used as an * lvalue. */ +/* STDIO_PTR_LVAL_SETS_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n has the side effect of decreasing the + * value of File_cnt(fp) by n. + */ +/* STDIO_PTR_LVAL_NOCHANGE_CNT: + * This symbol is defined if using the FILE_ptr macro as an lvalue + * to increase the pointer by n leaves File_cnt(fp) unchanged. + */ #define USE_STDIO_PTR /**/ #ifdef USE_STDIO_PTR #define FILE_ptr(fp) ((fp)->_ptr) #define STDIO_PTR_LVALUE /**/ #define FILE_cnt(fp) ((fp)->_cnt) #define STDIO_CNT_LVALUE /**/ +/*#define STDIO_PTR_LVAL_SETS_CNT / **/ +#define STDIO_PTR_LVAL_NOCHANGE_CNT /**/ #endif /* USE_STDIO_BASE: @@ -2279,6 +2313,12 @@ */ /*#define I_INTTYPES / **/ +/* I_LIBUTIL: + * This symbol, if defined, indicates that <libutil.h> exists and + * should be included. + */ +/*#define I_LIBUTIL / **/ + /* I_MACH_CTHREADS: * This symbol, if defined, indicates to the C program that it should * include <mach/cthreads.h>. @@ -2309,6 +2349,12 @@ */ #define I_POLL /**/ +/* I_PROT: + * This symbol, if defined, indicates that <prot.h> exists and + * should be included. + */ +#define I_PROT /**/ + /* I_PTHREAD: * This symbol, if defined, indicates to the C program that it should * include <pthread.h>. @@ -2471,8 +2517,18 @@ * This symbol, if defined, contains the string used by stdio to * format long doubles (format 'g') for output. */ +/* PERL_PRIeldbl: + * This symbol, if defined, contains the string used by stdio to + * format long doubles (format 'e') for output. + */ +/* PERL_SCNfldbl: + * This symbol, if defined, contains the string used by stdio to + * format long doubles (format 'f') for input. + */ #define PERL_PRIfldbl "f" /**/ #define PERL_PRIgldbl "g" /**/ +#define PERL_PRIeldbl "e" /**/ +#define PERL_SCNfldbl "f" /**/ /* Off_t: * This symbol holds the type used to declare offsets in the kernel. @@ -2560,6 +2616,16 @@ #define Netdb_name_t const char * /**/ #define Netdb_net_t int /**/ +/* PERL_OTHERLIBDIRS: + * This variable contains a colon-separated set of paths for the perl + * binary to search for additional library files or modules. + * These directories will be tacked to the end of @INC. + * Perl will automatically search below each path for version- + * and architecture-specific directories. See PERL_INC_VERSION_LIST + * for more details. + */ +/*#define PERL_OTHERLIBDIRS " " / **/ + /* IVTYPE: * This symbol defines the C type used for Perl's IV. */ @@ -2623,9 +2689,16 @@ /* U64SIZE: * This symbol contains the sizeof(U64). */ +/* NVSIZE: + * This symbol contains the sizeof(NV). + */ /* NV_PRESERVES_UV: * This symbol, if defined, indicates that a variable of type NVTYPE - * can preserve all the bit of a variable of type UVSIZE. + * can preserve all the bits of a variable of type UVTYPE. + */ +/* NV_PRESERVES_UV_BITS: + * This symbol contains the number of bits a variable of type NVTYPE + * can preserve of a variable of type UVTYPE. */ #define IVTYPE long /**/ #define UVTYPE unsigned long /**/ @@ -2652,7 +2725,9 @@ #define I64SIZE 8 /**/ #define U64SIZE 8 /**/ #endif +#define NVSIZE 8 /**/ #undef NV_PRESERVES_UV +#define NV_PRESERVES_UV_BITS 53 /* IVdf: * This symbol defines the format string used for printing a Perl IV @@ -2668,12 +2743,27 @@ */ /* UVxf: * This symbol defines the format string used for printing a Perl UV - * as an unsigned hexadecimal integer. + * as an unsigned hexadecimal integer in lowercase abcdef. + */ +/* NVef: + * This symbol defines the format string used for printing a Perl NV + * using %e-ish floating point format. + */ +/* NVff: + * This symbol defines the format string used for printing a Perl NV + * using %f-ish floating point format. + */ +/* NVgf: + * This symbol defines the format string used for printing a Perl NV + * using %g-ish floating point format. */ #define IVdf "ld" /**/ #define UVuf "lu" /**/ #define UVof "lo" /**/ #define UVxf "lx" /**/ +#define NVef "e" /**/ +#define NVff "f" /**/ +#define NVgf "g" /**/ /* Pid_t: * This symbol holds the type used to declare process ids in the kernel. @@ -2692,8 +2782,8 @@ * This symbol contains the ~name expanded version of PRIVLIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define PRIVLIB "/opt/perl/lib/5.6.0" /**/ -#define PRIVLIB_EXP "/opt/perl/lib/5.6.0" /**/ +#define PRIVLIB "/opt/perl/lib/5.6.1" /**/ +#define PRIVLIB_EXP "/opt/perl/lib/5.6.1" /**/ /* PTRSIZE: * This symbol contains the size of a pointer, so that the C preprocessor @@ -2791,8 +2881,8 @@ * This symbol contains the ~name expanded version of SITEARCH, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ -#define SITEARCH "/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi" /**/ -#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi" /**/ +#define SITEARCH "/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread" /**/ +#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. @@ -2814,8 +2904,8 @@ * removed. The elements in inc_version_list (inc_version_list.U) can * be tacked onto this variable to generate a list of directories to search. */ -#define SITELIB "/opt/perl/lib/site_perl/5.6.0" /**/ -#define SITELIB_EXP "/opt/perl/lib/site_perl/5.6.0" /**/ +#define SITELIB "/opt/perl/lib/site_perl/5.6.1" /**/ +#define SITELIB_EXP "/opt/perl/lib/site_perl/5.6.1" /**/ #define SITELIB_STEM "/opt/perl/lib/site_perl" /**/ /* Size_t_size: @@ -2943,7 +3033,7 @@ * be built to use multiplicity. */ #ifndef MULTIPLICITY -#define MULTIPLICITY /**/ +/*#define MULTIPLICITY / **/ #endif /* USE_PERLIO: @@ -2975,8 +3065,8 @@ * This symbol, if defined, indicates that Perl should * be built to use the old draft POSIX threads API. */ -/*#define USE_5005THREADS / **/ -#define USE_ITHREADS /**/ +#define USE_5005THREADS /**/ +/*#define USE_ITHREADS / **/ #if defined(USE_5005THREADS) && !defined(USE_ITHREADS) #define USE_THREADS /* until src is revised*/ #endif @@ -3040,7 +3130,7 @@ /* PERL_XS_APIVERSION: * This variable contains the version of the oldest perl binary * compatible with the present perl. perl.c:incpush() and - * lib/lib.pm will automatically search in /opt/perl/lib/site_perl/5.6.0/alpha-dec_osf-thread-multi for older + * lib/lib.pm will automatically search in /opt/perl/lib/site_perl/5.6.1/alpha-dec_osf-thread for older * directories across major versions back to xs_apiversion. * This is only useful if you have a perl library directory tree * structured like the default one. @@ -3059,7 +3149,7 @@ * compatible with the present perl. (That is, pure perl modules * written for pm_apiversion will still work for the current * version). perl.c:incpush() and lib/lib.pm will automatically - * search in /opt/perl/lib/site_perl/5.6.0 for older directories across major versions + * search in /opt/perl/lib/site_perl/5.6.1 for older directories across major versions * back to pm_apiversion. This is only useful if you have a perl * library directory tree structured like the default one. The * versioned site_perl library was introduced in 5.005, so that's @@ -3069,20 +3159,65 @@ * (presumably) be similar. * See the INSTALL file for how this works. */ -#define PERL_XS_APIVERSION "5.6.0" +#define PERL_XS_APIVERSION "5.6.1" #define PERL_PM_APIVERSION "5.005" -/* HAS_LCHOWN: - * This symbol, if defined, indicates that the lchown routine is - * available to operate on a symbolic link (instead of following the - * link). +/* HAS_GETPGRP: + * This symbol, if defined, indicates that the getpgrp routine is + * available to get the current process group. */ -#define HAS_LCHOWN /**/ +/* USE_BSD_GETPGRP: + * This symbol, if defined, indicates that getpgrp needs one + * arguments whereas USG one needs none. + */ +#define HAS_GETPGRP /**/ +/*#define USE_BSD_GETPGRP / **/ -/* FLEXFILENAMES: - * This symbol, if defined, indicates that the system supports filenames - * longer than 14 characters. +/* HAS_SETPGRP: + * This symbol, if defined, indicates that the setpgrp routine is + * available to set the current process group. */ -#define FLEXFILENAMES /**/ +/* USE_BSD_SETPGRP: + * This symbol, if defined, indicates that setpgrp needs two + * arguments whereas USG one needs none. See also HAS_SETPGID + * for a POSIX interface. + */ +#define HAS_SETPGRP /**/ +#define USE_BSD_SETPGRP /**/ + +/* STDCHAR: + * This symbol is defined to be the type of char used in stdio.h. + * It has the values "unsigned char" or "char". + */ +#define STDCHAR unsigned char /**/ + +/* HAS__FWALK: + * This symbol, if defined, indicates that the _fwalk system call is + * available to apply a function to all the file handles. + */ +/*#define HAS__FWALK / **/ + +/* FCNTL_CAN_LOCK: + * This symbol, if defined, indicates that fcntl() can be used + * for file locking. Normally on Unix systems this is defined. + * It may be undefined on VMS. + */ +#define FCNTL_CAN_LOCK /**/ + +/* HAS_FSYNC: + * This symbol, if defined, indicates that the fsync routine is + * available to write a file's modified data and attributes to + * permanent storage. + */ +#define HAS_FSYNC /**/ + +/* HAS_SBRK_PROTO: + * This symbol, if defined, indicates that the system provides + * a prototype for the sbrk() function. Otherwise, it is up + * to the program to supply one. Good guesses are + * extern void* sbrk _((int)); + * extern void* sbrk _((size_t)); + */ +#define HAS_SBRK_PROTO /**/ #endif diff --git a/gnu/usr.bin/perl/Porting/makerel b/gnu/usr.bin/perl/Porting/makerel index 4b8c277ebd1..c519d5d3c2e 100644 --- a/gnu/usr.bin/perl/Porting/makerel +++ b/gnu/usr.bin/perl/Porting/makerel @@ -78,23 +78,29 @@ print "\n"; chdir "$relroot/$reldir" or die $!; print "Setting file permissions...\n"; -system("find . -type f -print | xargs chmod -w"); -system("find . -type d -print | xargs chmod g-s"); -system("find t -name '*.t' -print | xargs chmod +x"); +system("find . -type f -print | xargs chmod a-w"); +system("find . -type d -print | xargs chmod 0755"); + +# the right files should already have the execute bit set +# in the repository, but this is just insurance +system("find t -name '*.t' -print | xargs chmod a+x"); my @exe = qw( Configure + configure.gnu configpm - embed.pl installperl + installhtml installman + embed.pl keywords.pl opcode.pl + warnings.pl perly.fixer t/TEST t/*/*.t *.SH vms/ext/Stdio/test.pl - vms/ext/filespec.t + vms/ext/*.t x2p/*.SH Porting/patchls Porting/makerel @@ -102,20 +108,31 @@ my @exe = qw( system("chmod +x @exe"); my @writables = qw( + keywords.h + opcode.h + opnames.h + pp_proto.h + pp.sym + proto.h embed.h embedvar.h - ext/B/B/Asmdata.pm - ext/ByteLoader/byterun.c - ext/ByteLoader/byterun.h global.sym - keywords.h - lib/warnings.pm + pod/perlintern.pod + pod/perlapi.pod objXSUB.h - opcode.h - pp.sym - pp_proto.h + perlapi.h + perlapi.c + ext/ByteLoader/byterun.h + ext/ByteLoader/byterun.c + ext/B/B/Asmdata.pm regnodes.h warnings.h + lib/warnings.pm + vms/perly_c.vms + vms/perly_h.vms + win32/Makefile + win32/makefile.mk + win32/config_H.bc win32/config_H.bc win32/config_H.gc win32/config_H.vc diff --git a/gnu/usr.bin/perl/Porting/pumpkin.pod b/gnu/usr.bin/perl/Porting/pumpkin.pod index 99776b50d2e..3bc9d09c87a 100644 --- a/gnu/usr.bin/perl/Porting/pumpkin.pod +++ b/gnu/usr.bin/perl/Porting/pumpkin.pod @@ -58,7 +58,7 @@ and 1 is the subversion. For compatibility with the older numbering scheme the composite floating point version number continues to be available as the magic variable $], -and amounts to C<$revision + $version/1000 + $subversion/1000000>. This +and amounts to C<$revision + $version/1000 + $subversion/100000>. This can still be used in comparisons. print "You've got an old perl\n" if $] < 5.005_03; @@ -210,7 +210,7 @@ unset appropriate Configure variables, based on the Configure command line options and possibly existing config.sh and Policy.sh files from previous Configure runs. -The extension hints are written Perl (by the time they are used +The extension hints are written in Perl (by the time they are used miniperl has been built) and control the building of their respective extensions. They can be used to for example manipulate compilation and linking flags. @@ -252,7 +252,8 @@ the first B<not> to have a system call also update the list of A file called F<README.youros> at the top level that explains things like how to install perl at this platform, where to get any possibly required additional software, and for example what test suite errors -to expect, is nice too. +to expect, is nice too. Such files are in the process of being written +in pod format and will eventually be renamed F<INSTALL.youros>. You may also want to write a separate F<.pod> file for your operating system to tell about existing mailing lists, os-specific modules, @@ -449,7 +450,9 @@ safely be sorted, so it's easy to track (typically very small) changes to config.sh and then propoagate them to a canned 'config.h' by any number of means, including a perl script in win32/ or carrying config.sh and config_h.SH to a Unix system and running sh -config_h.SH.) +config_h.SH.) Vms uses configure.com to generate its own config.sh +and config.h. If you want to add a new variable to config.sh check +with vms folk how to add it to configure.com too. XXX] The Porting/config.sh and Porting/config_H files are provided to @@ -460,7 +463,7 @@ distinguish the file from config.h even on case-insensitive file systems.) Simply edit the existing config_H file; keep the first few explanatory lines and then copy your new config.h below. -It may also be necessary to update win32/config.?c, vms/config.vms and +It may also be necessary to update win32/config.?c, and plan9/config.plan9, though you should be quite careful in doing so if you are not familiar with those systems. You might want to issue your patch with a promise to quickly issue a follow-up that handles those @@ -481,8 +484,10 @@ output statements mean the patch won't apply cleanly. Long ago I started to fix F<perly.fixer> to detect this, but I never completed the task. -If C<perly.c> changes, make sure you run C<perl vms/vms_yfix.pl> to -update the corresponding VMS files. See L<VMS-specific updates>. +If C<perly.c> or C<perly.h> changes, make sure you run C<perl vms/vms_yfix.pl> +to update the corresponding VMS files. This could be taken care of by +the regen_all target in the Unix Makefile. See also +L<VMS-specific updates>. Some additional notes from Larry on this: @@ -507,6 +512,11 @@ could be automated, but it doesn't happen very often nowadays. Larry +=head2 make regen_all + +This target takes care of the PERLYVMS, regen_headers, and regen_pods +targets. + =head2 make regen_headers The F<embed.h>, F<keywords.h>, and F<opcode.h> files are all automatically @@ -532,6 +542,10 @@ and effort by manually running C<make regen_headers> myself rather than answering all the questions and complaints about the failing command. +=head2 make regen_pods + +Will run `make regen_pods` in the pod directory for indexing. + =head2 global.sym, interp.sym and perlio.sym Make sure these files are up-to-date. Read the comments in these @@ -541,7 +555,7 @@ files and in perl_exp.SH to see what to do. If you do change F<global.sym> or F<interp.sym>, think carefully about what you are doing. To the extent reasonable, we'd like to maintain -souce and binary compatibility with older releases of perl. That way, +source and binary compatibility with older releases of perl. That way, extensions built under one version of perl will continue to work with new versions of perl. @@ -594,11 +608,11 @@ things that need to be fixed in Configure. =head2 VMS-specific updates If you have changed F<perly.y> or F<perly.c>, then you most probably want -to update F<vms/perly_{h,c}.vms> by running C<perl vms/vms_yfix.pl>. +to update F<vms/perly_{h,c}.vms> by running C<perl vms/vms_yfix.pl>, or +by running `make regen_all` which will run that script for you. -The Perl version number appears in several places under F<vms>. -It is courteous to update these versions. For example, if you are -making 5.004_42, replace "5.00441" with "5.00442". +The Perl revision number appears as "perl5" in configure.com. +It is courteous to update that if necessary. =head2 Making the new distribution @@ -701,6 +715,34 @@ supports dynamic loading, you can also test static loading with You can also hand-tweak your config.h to try out different #ifdef branches. +=head2 Other tests + +=over 4 + +=item CHECK_FORMAT + +To test the correct use of printf-style arguments, C<Configure> with +S<-Dccflags='-DCHECK_FORMAT -Wformat'> and run C<make>. The compiler +will produce warning of incorrect use of format arguments. CHECK_FORMAT +changes perl-defined formats to common formats, so DO NOT USE the executable +produced by this process. + +A more accurate approach is the following commands: + + sh Configure -des -Dccflags=-Wformat ... + make miniperl # without -DCHECK_FORMAT + perl -i.orig -pwe 's/-Wformat/-DCHECK_FORMAT $&/' config.sh + sh Configure -S + make >& make.log # build from correct miniperl + make clean + make miniperl >& mini.log # build miniperl with -DCHECK_FORMAT + perl -nwe 'print if /^\S+:/ and not /^make\b/' mini.log make.log + make clean + +(-Wformat support by Robin Barker.) + +=back + =head1 Running Purify Purify is a commercial tool that is helpful in identifying memory @@ -1325,7 +1367,8 @@ have good reason to do otherwise, I see no reason not to support them. =item File locking Somehow, straighten out, document, and implement lockf(), flock(), -and/or fcntl() file locking. It's a mess. +and/or fcntl() file locking. It's a mess. See $d_fcntl_can_lock +in recent config.sh files though. =back |