From: Perl 5 Porters Date: Fri, 23 Aug 1996 02:02:03 +0000 (+0000) Subject: perl 5.003_03: config_h.SH X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=e876cf0b32fbff7591a8b395137b200dff81300d;p=p5sagit%2Fp5-mst-13.2.git perl 5.003_03: config_h.SH Updated to match current Configure and config_h.SH. Some rearrangement of parts has occurred due to new dependencies in the metaconfig units. Include full descriptions of ARCHLIB, OLDARCHLIB, PRIVLIB, SITEARCH, and SITELIB. Previous versions just included the ~-expanded names (with unhelpful descriptions). No functionality is changed, but maybe it's a little better documented now. --- diff --git a/config_h.SH b/config_h.SH index 2b7694f..21cd2d9 100755 --- a/config_h.SH +++ b/config_h.SH @@ -715,18 +715,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' * and FILE_cnt(fp) macros will also be defined and should be used * to access these fields. */ -/* USE_STDIO_BASE: - * This symbol is defined if the _base field (or similar) of the - * stdio FILE structure can be used to access the stdio buffer for - * a file handle. If this is defined, then the FILE_base(fp) macro - * will also be defined and should be used to access this field. - * Also, the FILE_bufsiz(fp) macro will be defined and should be used - * to determine the number of bytes in the buffer. USE_STDIO_BASE - * will never be defined unless USE_STDIO_PTR is. - */ -#$d_stdstdio USE_STDIO_PTR /**/ -#$d_stdiobase USE_STDIO_BASE /**/ - /* FILE_ptr: * This macro is used to access the _ptr field (or equivalent) of the * FILE structure pointed to by its argument. This macro will always be @@ -745,13 +733,33 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' * This symbol is defined if the FILE_cnt macro can be used as an * lvalue. */ +/* FILE_filbuf: + * This macro is used to access the internal stdio _filbuf function + * (or equivalent), if STDIO_CNT_LVALUE and STDIO_PTR_LVALUE + * are defined. It is typically either _filbuf or __filbuf. + * This macro will only be defined if both STDIO_CNT_LVALUE and + * STDIO_PTR_LVALUE are defined. + */ +#$d_stdstdio USE_STDIO_PTR /**/ #ifdef USE_STDIO_PTR #define FILE_ptr(fp) $stdio_ptr #$d_stdio_ptr_lval STDIO_PTR_LVALUE /**/ #define FILE_cnt(fp) $stdio_cnt #$d_stdio_cnt_lval STDIO_CNT_LVALUE /**/ +#if defined(STDIO_PTR_LVALUE) && defined(STDIO_CNT_LVALUE) +#define FILE_filbuf(fp) $stdio_filbuf /**/ +#endif #endif +/* USE_STDIO_BASE: + * This symbol is defined if the _base field (or similar) of the + * stdio FILE structure can be used to access the stdio buffer for + * a file handle. If this is defined, then the FILE_base(fp) macro + * will also be defined and should be used to access this field. + * Also, the FILE_bufsiz(fp) macro will be defined and should be used + * to determine the number of bytes in the buffer. USE_STDIO_BASE + * will never be defined unless USE_STDIO_PTR is. + */ /* FILE_base: * This macro is used to access the _base field (or equivalent) of the * FILE structure pointed to by its argument. This macro will always be @@ -763,6 +771,7 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' * structure pointed to its argument. This macro will always be defined * if USE_STDIO_BASE is defined. */ +#$d_stdiobase USE_STDIO_BASE /**/ #ifdef USE_STDIO_BASE #define FILE_base(fp) $stdio_base #define FILE_bufsiz(fp) $stdio_bufsiz @@ -1151,6 +1160,12 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$i_sysparam I_SYS_PARAM /**/ +/* I_SYS_RESOURCE: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_sysresrc I_SYS_RESOURCE /**/ + /* I_SYS_SELECT: * This symbol, if defined, indicates to the C program that it should * include in order to get definition of struct timeval. @@ -1175,6 +1190,12 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$i_sysun I_SYS_UN /**/ +/* I_SYS_WAIT: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_syswait I_SYS_WAIT /**/ + /* I_TERMIO: * This symbol, if defined, indicates that the program should include * rather than . There are also differences in @@ -1223,12 +1244,29 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$i_utime I_UTIME /**/ +/* I_STDARG: + * This symbol, if defined, indicates that exists and should + * be included. + */ +/* I_VARARGS: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_stdarg I_STDARG /**/ +#$i_varargs I_VARARGS /**/ + /* I_VFORK: * This symbol, if defined, indicates to the C program that it should * include vfork.h. */ #$i_vfork I_VFORK /**/ +/* INTSIZE: + * This symbol contains the size of an int, so that the C preprocessor + * can make decisions based on it. + */ +#define INTSIZE $intsize /**/ + /* Off_t: * This symbol holds the type used to declare offsets in the kernel. * It can be int, long, off_t, etc... It may be necessary to include @@ -1305,12 +1343,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define Uid_t $uidtype /* UID type */ -/* VMS: - * This symbol, if defined, indicates that the program is running under - * VMS. It is currently only set in conjunction with the EUNICE symbol. - */ -#$d_eunice VMS /**/ - /* LOC_SED: * This symbol holds the complete pathname to the sed program. */ @@ -1323,19 +1355,34 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define OSNAME "$osname" /**/ +/* ARCHLIB: + * This variable, if defined, holds the name of the directory in + * which the user wants to put architecture-dependent public + * library files for $package. It is most often a local directory + * such as /usr/local/lib. Programs using this variable must be + * prepared to deal with filename expansion. If ARCHLIB is the + * same as PRIVLIB, it is not defined, since presumably the + * program already searches PRIVLIB. + */ /* ARCHLIB_EXP: * 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. */ +#$d_archlib ARCHLIB "$archlib" /**/ #$d_archlib ARCHLIB_EXP "$archlibexp" /**/ -/* BIN_SH: - * Pathname to /bin/sh equivalent - */ -#define BIN_SH "$bin_sh" /**/ /* BYTEORDER: - * This symbol hold the hexadecimal constant defined in byteorder, + * This symbol holds the hexadecimal constant defined in byteorder, * i.e. 0x1234 or 0x4321, etc... + * On NeXT 4 (and greater), you can build "Fat" Multiple Architecture + * Binaries (MAB) on either big endian or little endian machines. + * The endian-ness is available at compile-time. This only matters + * for perl, where the config.h can be generated and installed on + * one system, and used by a different architecture to build an + * extension. Older versions of NeXT that might not have + * defined either *_ENDIAN__ were all on Motorola 680x0 series, + * so the default case (for NeXT) is big endian to catch them. + * This might matter for NeXT 3.0. */ #ifndef NeXT #define BYTEORDER 0x$byteorder /* large digits for MSB */ @@ -1398,12 +1445,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define Gconvert(x,n,t,b) $d_Gconvert -/* PERLIO_IS_STDIO: - * This symbol, if defined, indicates that stdio should - * be used in a fully backward compatible manner. - */ -#$d_perlstdio PERLIO_IS_STDIO /**/ - /* USE_SFIO: * This symbol, if defined, indicates that sfio should * be used. @@ -1469,24 +1510,13 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$i_sysstat I_SYS_STAT /**/ -#$i_values I_LIMITS /**/ - -/* I_STDARG: - * This symbol, if defined, indicates that exists and should - * be included. - */ -/* I_VARARGS: +/* I_VALUES: * This symbol, if defined, indicates to the C program that it should - * include . + * include to get definition of symbols like MINFLOAT or + * MAXLONG, i.e. machine dependant limitations. Probably, you + * should use instead, if it is available. */ -#$i_stdarg I_STDARG /**/ -#$i_varargs I_VARARGS /**/ - -/* INTSIZE: - * This symbol contains the size of an int, so that the C preprocessor - * can make decisions based on it. - */ -#define INTSIZE $intsize /**/ +#$i_values I_VALUES /**/ /* Free_t: * This variable contains the return type of free(). It is usually @@ -1530,19 +1560,42 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' #define RD_NODATA $rd_nodata #$d_eofnblk EOF_NONBLOCK +/* OLDARCHLIB: + * This variable, if defined, holds the name of the directory in + * which the user has perl5.000 or perl5.001 architecture-dependent + * public library files for $package. For the most part, these + * files will work with 5.002 (and later), but that is not + * guaranteed. + */ /* OLDARCHLIB_EXP: * This symbol contains the ~name expanded version of OLDARCHLIB, to be * used in programs that are not prepared to deal with ~ expansion at * run-time. */ +#$d_oldarchlib OLDARCHLIB "$oldarchlib" /**/ #$d_oldarchlib OLDARCHLIB_EXP "$oldarchlibexp" /**/ +/* PRIVLIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + */ /* PRIVLIB_EXP: * 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 "$privlib" /**/ #define PRIVLIB_EXP "$privlibexp" /**/ +/* SH_PATH: + * This symbol contains the full pathname to the shell used on this + * on this system to execute Bourne shell scripts. Usually, this will be + * /bin/sh, though it's possible that some systems will have /bin/ksh, + * /bin/pdksh, /bin/ash, /bin/bash, or even something such as D:/bin/sh. + */ +#define SH_PATH "$sh" /**/ + /* SIG_NAME: * This symbol contains a list of signal names in order of * signal number. This is intended @@ -1574,16 +1627,36 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' #define SIG_NAME "`echo $sig_name | sed 's/ /","/g'`",0 /**/ #define SIG_NUM `echo $sig_num 0 | sed 's/ /,/g'` /**/ +/* SITEARCH: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ /* SITEARCH_EXP: * 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 "$sitearch" /**/ #define SITEARCH_EXP "$sitearchexp" /**/ +/* SITELIB: + * This symbol contains the name of the private library for this package. + * The library is private in the sense that it needn't be in anyone's + * execution path, but it should be accessible by the world. The program + * should be prepared to do ~ expansion. + * The standard distribution will put nothing in this directory. + * Individual sites may place their own extensions and modules in + * this directory. + */ /* SITELIB_EXP: * This symbol contains the ~name expanded version of SITELIB, to be used * in programs that are not prepared to deal with ~ expansion at run-time. */ +#define SITELIB "$sitelib" /**/ #define SITELIB_EXP "$sitelibexp" /**/ /* SSize_t: @@ -1603,6 +1676,13 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define STARTPERL "$startperl" /**/ +/* USE_PERLIO: + * This symbol, if defined, indicates that the PerlIO abstraction should + * be used throughout. If not defined, stdio should be + * used in a fully backward compatible manner. + */ +#$useperlio USE_PERLIO /**/ + /* VOIDFLAGS: * This symbol indicates how much support of the void type is given by this * compiler. What various bits mean: