This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Glossary for d_ptrdiff_t
[perl5.git] / Porting / Glossary
index 4b5ded2..5541c13 100644 (file)
@@ -478,6 +478,11 @@ d_attribute_warn_unused_result (d_attribut.U):
        compiler can know that certain functions have a return values
        that must not be ignored, such as malloc() or open().
 
        compiler can know that certain functions have a return values
        that must not be ignored, such as malloc() or open().
 
+d_backtrace (d_backtrace.U):
+       This variable conditionally defines the HAS_BACKTRACE symbol, which
+       indicates to the C program that the backtrace() routine is available
+       to get a stack trace.
+
 d_bcmp (d_bcmp.U):
        This variable conditionally defines the HAS_BCMP symbol if
        the bcmp() routine is available to compare strings.
 d_bcmp (d_bcmp.U):
        This variable conditionally defines the HAS_BCMP symbol if
        the bcmp() routine is available to compare strings.
@@ -650,6 +655,11 @@ d_dirnamlen (i_dirent.U):
        to the C program that the length of directory entry names is
        provided by a d_namelen field.
 
        to the C program that the length of directory entry names is
        provided by a d_namelen field.
 
+d_dladdr (d_dladdr.U):
+       This variable conditionally defines the HAS_DLADDR symbol, which
+       indicates to the C program that the dladdr() routine is available
+       to get a stack trace.
+
 d_dlerror (d_dlerror.U):
        This variable conditionally defines the HAS_DLERROR symbol, which
        indicates to the C program that the dlerror() routine is available.
 d_dlerror (d_dlerror.U):
        This variable conditionally defines the HAS_DLERROR symbol, which
        indicates to the C program that the dlerror() routine is available.
@@ -894,7 +904,7 @@ d_Gconvert (d_gconvert.U):
        This variable holds what Gconvert is defined as to convert
        floating point numbers into strings.  By default, Configure
        sets this macro to use the first of gconvert, gcvt, or sprintf
        This variable holds what Gconvert is defined as to convert
        floating point numbers into strings.  By default, Configure
        sets this macro to use the first of gconvert, gcvt, or sprintf
-       that pass sprintf-%g-like behaviour tests.  If perl is using
+       that pass sprintf-%g-like behavior tests.  If perl is using
        long doubles, the macro uses the first of the following
        functions that pass Configure's tests: qgcvt, sprintf (if
        Configure knows how to make sprintf format long doubles--see
        long doubles, the macro uses the first of the following
        functions that pass Configure's tests: qgcvt, sprintf (if
        Configure knows how to make sprintf format long doubles--see
@@ -1331,6 +1341,12 @@ d_libm_lib_version (d_libm_lib_version.U):
        which indicates to the C program that math.h defines _LIB_VERSION
        being available in libm
 
        which indicates to the C program that math.h defines _LIB_VERSION
        being available in libm
 
+d_libname_unique (so.U):
+       This variable is defined if the target system insists on unique
+       basenames for shared library files. This is currently true on Android,
+       false everywhere else we know of.
+       Defaults to 'undef'.
+
 d_link (d_link.U):
        This variable conditionally defines HAS_LINK if link() is
        available to create hard links.
 d_link (d_link.U):
        This variable conditionally defines HAS_LINK if link() is
        available to create hard links.
@@ -1730,6 +1746,9 @@ d_pthread_yield (d_pthread_y.U):
        symbol if the pthread_yield routine is available to yield
        the execution of the current thread.
 
        symbol if the pthread_yield routine is available to yield
        the execution of the current thread.
 
+d_ptrdiff_t (unknown.U):
+       This symbol will be defined if the C compiler supports ptrdiff_t.
+
 d_pwage (i_pwd.U):
        This variable conditionally defines PWAGE, which indicates
        that struct passwd contains pw_age.
 d_pwage (i_pwd.U):
        This variable conditionally defines PWAGE, which indicates
        that struct passwd contains pw_age.
@@ -2043,10 +2062,6 @@ d_setvbuf (d_setvbuf.U):
        indicates to the C program that the setvbuf() routine is available
        to change buffering on an open stdio stream.
 
        indicates to the C program that the setvbuf() routine is available
        to change buffering on an open stdio stream.
 
-d_sfio (d_sfio.U):
-       This variable conditionally defines the USE_SFIO symbol,
-       and indicates whether sfio is available (and should be used).
-
 d_shm (d_shm.U):
        This variable conditionally defines the HAS_SHM symbol, which
        indicates that the entire shm*(2) library is present.
 d_shm (d_shm.U):
        This variable conditionally defines the HAS_SHM symbol, which
        indicates that the entire shm*(2) library is present.
@@ -2242,9 +2257,9 @@ d_strctcpy (d_strctcpy.U):
        structures.
 
 d_strerrm (d_strerror.U):
        structures.
 
 d_strerrm (d_strerror.U):
-       This variable holds what Strerrr is defined as to translate an error
+       This variable holds what Strerror is defined as to translate an error
        code condition into an error message string. It could be 'strerror'
        code condition into an error message string. It could be 'strerror'
-       or a more complex macro emulating strrror with sys_errlist[], or the
+       or a more complex macro emulating strerror with sys_errlist[], or the
        "unknown" string when both strerror and sys_errlist are missing.
 
 d_strerror (d_strerror.U):
        "unknown" string when both strerror and sys_errlist are missing.
 
 d_strerror (d_strerror.U):
@@ -2501,11 +2516,21 @@ d_waitpid (d_waitpid.U):
        This variable conditionally defines HAS_WAITPID if waitpid() is
        available to wait for child process.
 
        This variable conditionally defines HAS_WAITPID if waitpid() is
        available to wait for child process.
 
+d_wcscmp (d_wcscmp.U):
+       This variable conditionally defines the HAS_WCSCMP symbol if the
+       wcscmp() routine is available and can be used to compare wide
+       character strings.
+
 d_wcstombs (d_wcstombs.U):
        This variable conditionally defines the HAS_WCSTOMBS symbol, which
        indicates to the C program that the wcstombs() routine is available
        to convert wide character strings to multibyte strings.
 
 d_wcstombs (d_wcstombs.U):
        This variable conditionally defines the HAS_WCSTOMBS symbol, which
        indicates to the C program that the wcstombs() routine is available
        to convert wide character strings to multibyte strings.
 
+d_wcsxfrm (d_wcsxfrm.U):
+       This variable conditionally defines the HAS_WCSXFRM symbol if the
+       wcsxfrm() routine is available and can be used to compare wide
+       character strings.
+
 d_wctomb (d_wctomb.U):
        This variable conditionally defines the HAS_WCTOMB symbol, which
        indicates to the C program that the wctomb() routine is available
 d_wctomb (d_wctomb.U):
        This variable conditionally defines the HAS_WCTOMB symbol, which
        indicates to the C program that the wctomb() routine is available
@@ -2548,9 +2573,6 @@ db_version_patch (i_db.U):
        Berkeley DB found in the <db.h> header file.
        For DB version 1 this is always 0.
 
        Berkeley DB found in the <db.h> header file.
        For DB version 1 this is always 0.
 
-defvoidused (voidflags.U):
-       This variable contains the default value of the VOIDUSED symbol (15).
-
 direntrytype (i_dirent.U):
        This symbol is set to 'struct direct' or 'struct dirent' depending on
        whether dirent is available or not. You should use this pseudo type to
 direntrytype (i_dirent.U):
        This symbol is set to 'struct direct' or 'struct dirent' depending on
        whether dirent is available or not. You should use this pseudo type to
@@ -2558,7 +2580,7 @@ direntrytype (i_dirent.U):
 
 dlext (dlext.U):
        This variable contains the extension that is to be used for the
 
 dlext (dlext.U):
        This variable contains the extension that is to be used for the
-       dynamically loaded modules that perl generaties.
+       dynamically loaded modules that perl generates.
 
 dlsrc (dlsrc.U):
        This variable contains the name of the dynamic loading file that
 
 dlsrc (dlsrc.U):
        This variable contains the name of the dynamic loading file that
@@ -2595,9 +2617,7 @@ eagain (nblock_io.U):
 
 ebcdic (ebcdic.U):
        This variable conditionally defines EBCDIC if this
 
 ebcdic (ebcdic.U):
        This variable conditionally defines EBCDIC if this
-       system uses EBCDIC encoding.  Among other things, this
-       means that the character ranges are not contiguous.
-       See trnl.U
+       system uses EBCDIC encoding.
 
 echo (Loc.U):
        This variable is used internally by Configure to determine the
 
 echo (Loc.U):
        This variable is used internally by Configure to determine the
@@ -2664,7 +2684,7 @@ expr (Loc.U):
 
 extensions (Extensions.U):
        This variable holds a list of all extension files (both XS and
 
 extensions (Extensions.U):
        This variable holds a list of all extension files (both XS and
-       non-xs linked into the package.  It is propagated to Config.pm
+       non-xs) installed with the package.  It is propagated to Config.pm
        and is typically used to test whether a particular extension
        is available.
 
        and is typically used to test whether a particular extension
        is available.
 
@@ -2683,8 +2703,10 @@ fflushall (fflushall.U):
        even be probed for and will be left undefined.
 
 fflushNULL (fflushall.U):
        even be probed for and will be left undefined.
 
 fflushNULL (fflushall.U):
-       This symbol, if defined, tells that fflush(NULL) does flush
-       all pending stdio output.
+       This symbol, if defined, tells that fflush(NULL) correctly
+       flushes all pending stdio output without side effects. In
+       particular, on some platforms calling fflush(NULL) *still*
+       corrupts STDIN if it is a pipe.
 
 find (Loc.U):
        This variable is defined but not used by Configure.
 
 find (Loc.U):
        This variable is defined but not used by Configure.
@@ -2949,6 +2971,24 @@ hostcat (nis.U):
        On some systems, such as os390, there may be no equivalent
        command, in which case this variable is unset.
 
        On some systems, such as os390, there may be no equivalent
        command, in which case this variable is unset.
 
+hostgenerate (Cross.U):
+       This variable contains the path to a generate_uudmap binary that
+       can be run on the host OS when cross-compiling.  Useful and
+       available only during Perl build.
+       Empty string '' if not cross-compiling.
+
+hostosname (Cross.U):
+       This variable contains the original value of '$^O' for hostperl
+       when cross-compiling.  This is useful to pick the proper tools
+       when running build code in the host.
+       Empty string '' if not cross-compiling.
+
+hostperl (Cross.U):
+       This variable contains the path to a miniperl binary that can be
+       run on the host OS when cross-compiling.  Useful and available only
+       during Perl build.
+       Empty string '' if not cross-compiling.
+
 html1dir (html1dir.U):
        This variable contains the name of the directory in which html
        source pages are to be put.  This directory is for pages
 html1dir (html1dir.U):
        This variable contains the name of the directory in which html
        source pages are to be put.  This directory is for pages
@@ -3003,6 +3043,10 @@ i_assert (i_assert.U):
        indicates to the C program that <assert.h> exists and could be
        included.
 
        indicates to the C program that <assert.h> exists and could be
        included.
 
+i_bfd (i_bfd.U):
+       This variable conditionally defines the I_BFD symbol, and
+       indicates whether a C program can include <bfd.h>.
+
 i_bsdioctl (i_sysioctl.U):
        This variable conditionally defines the I_SYS_BSDIOCTL symbol, which
        indicates to the C program that <sys/bsdioctl.h> exists and should
 i_bsdioctl (i_sysioctl.U):
        This variable conditionally defines the I_SYS_BSDIOCTL symbol, which
        indicates to the C program that <sys/bsdioctl.h> exists and should
@@ -3025,16 +3069,15 @@ i_dirent (i_dirent.U):
        This variable conditionally defines I_DIRENT, which indicates
        to the C program that it should include <dirent.h>.
 
        This variable conditionally defines I_DIRENT, which indicates
        to the C program that it should include <dirent.h>.
 
-i_dld (i_dld.U):
-       This variable conditionally defines the I_DLD symbol, which
-       indicates to the C program that <dld.h> (GNU dynamic loading)
-       exists and should be included.
-
 i_dlfcn (i_dlfcn.U):
        This variable conditionally defines the I_DLFCN symbol, which
        indicates to the C program that <dlfcn.h> exists and should
        be included.
 
 i_dlfcn (i_dlfcn.U):
        This variable conditionally defines the I_DLFCN symbol, which
        indicates to the C program that <dlfcn.h> exists and should
        be included.
 
+i_execinfo (i_execinfo.U):
+       This variable conditionally defines the I_EXECINFO symbol, and indicates
+       whether a C program may include <execinfo.h>, for backtrace() support.
+
 i_fcntl (i_fcntl.U):
        This variable controls the value of I_FCNTL (which tells
        the C program to include <fcntl.h>).
 i_fcntl (i_fcntl.U):
        This variable controls the value of I_FCNTL (which tells
        the C program to include <fcntl.h>).
@@ -3166,10 +3209,6 @@ i_rpcsvcdbm (i_dbm.U):
        indicates to the C program that <rpcsvc/dbm.h> exists and should
        be included.  Some System V systems might need this instead of <dbm.h>.
 
        indicates to the C program that <rpcsvc/dbm.h> exists and should
        be included.  Some System V systems might need this instead of <dbm.h>.
 
-i_sfio (i_sfio.U):
-       This variable conditionally defines the I_SFIO symbol,
-       and indicates whether a C program should include <sfio.h>.
-
 i_sgtty (i_termio.U):
        This variable conditionally defines the I_SGTTY symbol, which
        indicates to the C program that it should include <sgtty.h> rather
 i_sgtty (i_termio.U):
        This variable conditionally defines the I_SGTTY symbol, which
        indicates to the C program that it should include <sgtty.h> rather
@@ -3407,6 +3446,11 @@ incpath (usrinc.U):
        right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
        Value can be "" or "/bsd43" on mips.
 
        right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
        Value can be "" or "/bsd43" on mips.
 
+incpth (libpth.U):
+       This variable must precede the normal include path to get the
+       right one, as in "$incpath/usr/include" or "$incpath/usr/lib".
+       Value can be "" or "/bsd43" on mips.
+
 inews (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 inews (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
@@ -3415,7 +3459,7 @@ initialinstalllocation (bin.U):
        When userelocatableinc is true, this variable holds the location
        that make install should copy the perl binary to, with all the
        run-time relocatable paths calculated from this at install time.
        When userelocatableinc is true, this variable holds the location
        that make install should copy the perl binary to, with all the
        run-time relocatable paths calculated from this at install time.
-       When used, it is initialised to the original value of binexp, and
+       When used, it is initialized to the original value of binexp, and
        then binexp is set to '.../', as the other binaries are found
        relative to the perl binary.
 
        then binexp is set to '.../', as the other binaries are found
        relative to the perl binary.
 
@@ -3618,8 +3662,12 @@ ivtype (perlxv.U):
        This variable contains the C type used for Perl's IV.
 
 known_extensions (Extensions.U):
        This variable contains the C type used for Perl's IV.
 
 known_extensions (Extensions.U):
-       This variable holds a list of all XS extensions included in
-       the package.
+       This variable holds a list of all extensions (both XS and non-xs)
+       included in the package source distribution.  This information is
+       only really of use during the Perl build, as the list makes no
+       distinction between extensions which were build and installed, and
+       those which where not.  See "extensions" for the list of extensions
+       actually built and available.
 
 ksh (Loc.U):
        This variable is defined but not used by Configure.
 
 ksh (Loc.U):
        This variable is defined but not used by Configure.
@@ -3785,22 +3833,6 @@ lseektype (lseektype.U):
        or whatever type is used to declare lseek offset's type in the
        kernel (which also appears to be lseek's return type).
 
        or whatever type is used to declare lseek offset's type in the
        kernel (which also appears to be lseek's return type).
 
-mad (mad.U):
-       This variable indicates that the Misc Attribute Definition code is to
-       be compiled.
-
-madlyh (mad.U):
-       If the Misc Attribute Decoration is to be compiled, this variable is
-       set to the name of the extra header files to be used, else it is ''
-
-madlyobj (mad.U):
-       If the Misc Attribute Decoration is to be compiled, this variable is
-       set to the name of the extra object files to be used, else it is ''
-
-madlysrc (mad.U):
-       If the Misc Attribute Decoration is to be compiled, this variable is
-       set to the name of the extra C source files to be used, else it is ''
-
 mail (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 mail (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
@@ -3932,9 +3964,9 @@ myhostname (myhostname.U):
        The dot comes with mydomain, and need not be supplied by the program.
 
 myuname (Oldconfig.U):
        The dot comes with mydomain, and need not be supplied by the program.
 
 myuname (Oldconfig.U):
-       The output of 'uname -a' if available, otherwise the hostname. On Xenix,
-       pseudo variables assignments in the output are stripped, thank you. The
-       whole thing is then lower-cased.
+       The output of 'uname -a' if available, otherwise the hostname.
+       The whole thing is then lower-cased and slashes and single quotes are
+       removed.
 
 n (n.U):
        This variable contains the '-n' flag if that is what causes the echo
 
 n (n.U):
        This variable contains the '-n' flag if that is what causes the echo
@@ -3988,8 +4020,10 @@ nm_so_opt (usenm.U):
        Maybe Linux should just always set usenm=false.
 
 nonxs_ext (Extensions.U):
        Maybe Linux should just always set usenm=false.
 
 nonxs_ext (Extensions.U):
-       This variable holds a list of all non-xs extensions included
-       in the package.  All of them will be built.
+       This variable holds a list of all non-xs extensions built and
+       installed by the package.  By default, all non-xs extensions
+       distributed will be built, with the exception of platform-specific
+       extensions (currently only one VMS specific extension).
 
 nroff (Loc.U):
        This variable is used internally by Configure to determine the
 
 nroff (Loc.U):
        This variable is used internally by Configure to determine the
@@ -4014,11 +4048,11 @@ nvEUformat (perlxvf.U):
        a Perl NV using %E-ish floating point format.
 
 nvfformat (perlxvf.U):
        a Perl NV using %E-ish floating point format.
 
 nvfformat (perlxvf.U):
-       This variable confains the format string used for printing
+       This variable contains the format string used for printing
        a Perl NV using %f-ish floating point format.
 
 nvFUformat (perlxvf.U):
        a Perl NV using %f-ish floating point format.
 
 nvFUformat (perlxvf.U):
-       This variable confains the format string used for printing
+       This variable contains the format string used for printing
        a Perl NV using %F-ish floating point format.
 
 nvgformat (perlxvf.U):
        a Perl NV using %F-ish floating point format.
 
 nvgformat (perlxvf.U):
@@ -4256,7 +4290,7 @@ procselfexe (d_procselfexe.U):
 
 prototype (prototype.U):
        This variable holds the eventual value of CAN_PROTOTYPE, which
 
 prototype (prototype.U):
        This variable holds the eventual value of CAN_PROTOTYPE, which
-       indicates the C compiler can handle funciton prototypes.
+       indicates the C compiler can handle function prototypes.
 
 ptrsize (ptrsize.U):
        This variable contains the value of the PTRSIZE symbol, which
 
 ptrsize (ptrsize.U):
        This variable contains the value of the PTRSIZE symbol, which
@@ -4871,6 +4905,12 @@ sysman (sysman.U):
        pages. Rather it is the place where Configure may look to find manual
        for unix commands (section 1 of the manual usually). See mansrc.
 
        pages. Rather it is the place where Configure may look to find manual
        for unix commands (section 1 of the manual usually). See mansrc.
 
+sysroot (Sysroot.U):
+       This variable is empty unless supplied by the Configure user.
+       It can contain a path to an alternative root directory, under which
+       headers and libraries for the compilation target can be found. This
+       is generally used when cross-compiling using a gcc-like compiler.
+
 tail (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 tail (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
@@ -4883,6 +4923,37 @@ targetarch (Cross.U):
        If cross-compiling, this variable contains the target architecture.
        If not, this will be empty.
 
        If cross-compiling, this variable contains the target architecture.
        If not, this will be empty.
 
+targetdir (Cross.U):
+       This variable contains a path that will be created on the target
+       host using targetmkdir, and then used to copy the cross-compiled
+       executables to. Defaults to '/tmp' if not set.
+
+targetenv (Cross.U):
+       If cross-compiling, this variable can be used to modify the
+       environment on the target system.
+       However, how and where it's used, and even if it's used at all, is
+       entirely dependent on both the transport mechanism (targetrun) and
+       what the target system is.  Unless the relevant documentation says
+       otherwise, it is genereally not useful.
+
+targethost (Cross.U):
+       This variable contains the name of a separate host machine that
+       can be used to run compiled test programs and perl tests on.
+       Set to empty string if not in use.
+
+targetmkdir (Cross.U):
+       This variable contains the command used by Configure to create a
+       new directory on the target host.
+
+targetport (Cross.U):
+       This variable contains the number of a network port to be used to
+       connect to the host in targethost, if unset defaults to 22 for ssh.
+
+targetsh (sh.U):
+       If cross-compiling, this variable contains the location of sh on the
+       target system.
+       If not, this will be the same as $sh.
+
 tbl (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 tbl (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
@@ -5018,6 +5089,10 @@ use64bitint (use64bits.U):
        This may mean using for example "long longs", while your memory
        may still be limited to 2 gigabytes.
 
        This may mean using for example "long longs", while your memory
        may still be limited to 2 gigabytes.
 
+usecbacktrace (usebacktrace.U):
+       This variable indicates whether we are compiling with backtrace
+       support.
+
 usecrosscompile (Cross.U):
        This variable conditionally defines the USE_CROSS_COMPILE symbol,
        and indicates that Perl has been cross-compiled.
 usecrosscompile (Cross.U):
        This variable conditionally defines the USE_CROSS_COMPILE symbol,
        and indicates that Perl has been cross-compiled.
@@ -5120,13 +5195,6 @@ userelocatableinc (bin.U):
        containing the perl binary, and a logical cleanup of the path is then
        made around the join point (removing "dir/../" pairs)
 
        containing the perl binary, and a logical cleanup of the path is then
        made around the join point (removing "dir/../" pairs)
 
-usesfio (d_sfio.U):
-       This variable is set to true when the user agrees to use sfio.
-       It is set to false when sfio is not available or when the user
-       explicitly requests not to use sfio.  It is here primarily so
-       that command-line settings can override the auto-detection of
-       d_sfio without running into a "WHOA THERE".
-
 useshrplib (libperl.U):
        This variable is set to 'true' if the user wishes
        to build a shared libperl, and 'false' otherwise.
 useshrplib (libperl.U):
        This variable is set to 'true' if the user wishes
        to build a shared libperl, and 'false' otherwise.
@@ -5342,11 +5410,6 @@ vi (Loc.U):
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 
        This variable is defined but not used by Configure.
        The value is the empty string and is not useful.
 
-voidflags (voidflags.U):
-       This variable contains the eventual value of the VOIDFLAGS symbol,
-       which indicates how much support of the void type is given by this
-       compiler.  See VOIDFLAGS for more info.
-
 xlibpth (libpth.U):
        This variable holds extra path (space-separated) used to find
        libraries on this platform, for example CPU-specific libraries
 xlibpth (libpth.U):
        This variable holds extra path (space-separated) used to find
        libraries on this platform, for example CPU-specific libraries