X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=config_h.SH;h=1b3cde78b7d2e1889981d4d76374d3fd307fa9d4;hb=e52f39a2da9ded67c5b268b2013619140e55f0c6;hp=331a722fb47f1463c8b81dd6aedc7750117f22f4;hpb=40750cc09a264b13c386a12479d3f3bade1e4c58;p=p5sagit%2Fp5-mst-13.2.git diff --git a/config_h.SH b/config_h.SH old mode 100755 new mode 100644 index 331a722..1b3cde7 --- a/config_h.SH +++ b/config_h.SH @@ -1,4 +1,3 @@ -#! /bin/sh case $CONFIG in '') if test -f config.sh; then TOP=.; @@ -12,19 +11,11 @@ case $CONFIG in . $TOP/config.sh ;; esac - -case "$bin_sh" in -'') - bin_sh='/bin/sh' - ;; -esac - case "$0" in */*) cd `expr X$0 : 'X\(.*\)/'` ;; esac echo "Extracting config.h (with variable substitutions)" -rm -f config.h -sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' +sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un-def!#undef!' /* * This file was produced by running the config_h.SH script, which * gets its values from config.sh, which is generally produced by @@ -34,7 +25,7 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' * that running config_h.SH again will wipe out any changes you've made. * For a more permanent change edit config.sh and rerun config_h.SH. * - * \$Id: config_h.SH,v 1.2 1996/07/05 23:49:13 gerti Exp $ + * \$Id: Config_h.U,v 3.0.1.4 1995/09/25 09:10:49 ram Exp $ */ /* Configuration time: $cf_time @@ -60,6 +51,9 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' /* CAT2: * This macro catenates 2 tokens together. */ +/* STRINGIFY: + * This macro surrounds its token with double quotes. + */ #if $cpp_stuff == 1 #define CAT2(a,b)a/**/b #define CAT3(a,b,c)a/**/b/**/c @@ -301,12 +295,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$d_getlogin HAS_GETLOGIN /**/ -/* HAS_GETPGRP: - * This symbol, if defined, indicates that the getpgrp routine is - * available to get the current process group. - */ -#$d_getpgrp HAS_GETPGRP /**/ - /* HAS_GETPGRP2: * This symbol, if defined, indicates that the getpgrp2() (as in DG/UX) * routine is available to get the current process group. @@ -600,24 +588,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$d_setlocale HAS_SETLOCALE /**/ -/* HAS_SETPGID: - * This symbol, if defined, indicates that the setpgid routine is - * available to set process group ID. - */ -#$d_setpgid HAS_SETPGID /**/ - -/* HAS_SETPGRP: - * This symbol, if defined, indicates that the setpgrp routine is - * available to set the current process group. - */ -/* USE_BSDPGRP: - * This symbol, if defined, indicates that the BSD notion of process - * group is to be used. For instance, you have to say setpgrp(pid, pgrp) - * instead of the USG setpgrp(). - */ -#$d_setpgrp HAS_SETPGRP /**/ -#$d_bsdpgrp USE_BSDPGRP /**/ - /* HAS_SETPGRP2: * This symbol, if defined, indicates that the setpgrp2() (as in DG/UX) * routine is available to set the current process group. @@ -724,18 +694,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 @@ -754,13 +712,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 @@ -772,6 +750,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 @@ -1160,6 +1139,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. @@ -1184,6 +1169,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 @@ -1232,12 +1223,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 @@ -1301,16 +1309,6 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define Size_t $sizetype /* length paramater for string functions */ -/* SSize_t: - * This symbol holds the type used by functions that return - * a count of bytes or an error condition. It must be a signed type. - * It is usually ssize_t, but may be long or int, etc. - * It may be necessary to include or - * to get any typedef'ed information. - * We will pick a type such that sizeof(SSize_t) == sizeof(Size_t). - */ -#define SSize_t $ssizetype /* signed count of bytes */ - /* STDCHAR: * This symbol is defined to be the type of char used in stdio.h. * It has the values "unsigned char" or "char". @@ -1324,44 +1322,56 @@ 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. */ #define LOC_SED "$full_sed" /**/ +/* OSNAME: + * This symbol contains the name of the operating system, as determined + * by Configure. You shouldn't rely on it too much; the specific + * feature tests from Configure are generally more reliable. + */ +#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" /**/ -/* OSNAME: - * This symbol contains the name of the operating system, as determined - * by Configure. - */ -#define OSNAME "$osname" /**/ - /* 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 */ -#else /* NeXT */ - -#ifdef __BIG_ENDIAN__ -#define BYTEORDER 0x4321 -#else /* __LITTLE_ENDIAN__ */ +#else /* NeXT */ +#ifdef __LITTLE_ENDIAN__ #define BYTEORDER 0x1234 +#else /* __BIG_ENDIAN__ */ +#define BYTEORDER 0x4321 #endif /* ENDIAN CHECK */ - -#endif /* !NeXT */ +#endif /* NeXT */ /* CSH: * This symbol, if defined, indicates that the C-shell exists. @@ -1375,7 +1385,7 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' * makes sense if you *have* dlsym, which we will presume is the * case if you're using dl_dlopen.xs. */ -#$d_dlsymun DLSYM_NEEDS_UNDERSCORE /* */ +#$d_dlsymun DLSYM_NEEDS_UNDERSCORE /**/ /* SETUID_SCRIPTS_ARE_SECURE_NOW: * This symbol, if defined, indicates that the bug that prevents @@ -1414,26 +1424,78 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define Gconvert(x,n,t,b) $d_Gconvert +/* HAS_GETPGID: + * This symbol, if defined, indicates to the C program that + * the getpgid(pid) function is available to get the + * process group id. + */ +#$d_getpgid 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. + */ +#$d_getpgrp HAS_GETPGRP /**/ +#$d_bsdgetpgrp USE_BSD_GETPGRP /**/ + +/* HAS_SETPGID: + * This symbol, if defined, indicates to the C program that + * the setpgid(pid, gpid) function is available to set the + * process group id. + */ +#$d_setpgid 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. + */ +/* USE_BSDPGRP: + * This symbol, if defined, indicates that the BSD notion of process + * group is to be used. For instance, you have to say setpgrp(pid, pgrp) + * instead of the USG setpgrp(). This should be obsolete since + * there are systems which have BSD-ish setpgrp but USG-ish getpgrp. + */ +#$d_setpgrp HAS_SETPGRP /**/ +#$d_bsdsetpgrp USE_BSD_SETPGRP /**/ +#$d_bsdpgrp USE_BSDPGRP /**/ + +/* USE_SFIO: + * This symbol, if defined, indicates that sfio should + * be used. + */ +#$d_sfio USE_SFIO /**/ + /* Sigjmp_buf: - * This is the buffer type to be used with Sigsetjmp and Siglongjmp. + * This is the buffer type to be used with Sigsetjmp and Siglongjmp. */ /* Sigsetjmp: - * This macro is used in the same way as sigsetjmp(), but will invoke - * traditional setjmp() if sigsetjmp isn't available. + * This macro is used in the same way as sigsetjmp(), but will invoke + * traditional setjmp() if sigsetjmp isn't available. + * See HAS_SIGSETJMP. */ /* Siglongjmp: - * This macro is used in the same way as siglongjmp(), but will invoke - * traditional longjmp() if siglongjmp isn't available. + * This macro is used in the same way as siglongjmp(), but will invoke + * traditional longjmp() if siglongjmp isn't available. + * See HAS_SIGSETJMP. */ #$d_sigsetjmp HAS_SIGSETJMP /**/ #ifdef HAS_SIGSETJMP #define Sigjmp_buf sigjmp_buf -#define Sigsetjmp(buf,save_mask) sigsetjmp(buf,save_mask) -#define Siglongjmp(buf,retval) siglongjmp(buf,retval) +#define Sigsetjmp(buf,save_mask) sigsetjmp((buf),(save_mask)) +#define Siglongjmp(buf,retval) siglongjmp((buf),(retval)) #else #define Sigjmp_buf jmp_buf -#define Sigsetjmp(buf,save_mask) setjmp(buf) -#define Siglongjmp(buf,retval) longjmp(buf,retval) +#define Sigsetjmp(buf,save_mask) setjmp((buf)) +#define Siglongjmp(buf,retval) longjmp((buf),(retval)) #endif /* USE_DYNAMIC_LOADING: @@ -1459,28 +1521,25 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #$i_locale I_LOCALE /**/ +/* I_SFIO: + * This symbol, if defined, indicates to the C program that it should + * include . + */ +#$i_sfio I_SFIO /**/ + /* I_SYS_STAT: * This symbol, if defined, indicates to the C program that it should * include . */ #$i_sysstat I_SYS_STAT /**/ -/* 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 . - */ -#$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. + * include to get definition of symbols like MINFLOAT or + * MAXLONG, i.e. machine dependant limitations. Probably, you + * should use instead, if it is available. */ -#define INTSIZE $intsize /**/ +#$i_values I_VALUES /**/ /* Free_t: * This variable contains the return type of free(). It is usually @@ -1524,19 +1583,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 @@ -1568,18 +1650,48 @@ 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: + * This symbol holds the type used by functions that return + * a count of bytes or an error condition. It must be a signed type. + * It is usually ssize_t, but may be long or int, etc. + * It may be necessary to include or + * to get any typedef'ed information. + * We will pick a type such that sizeof(SSize_t) == sizeof(Size_t). + */ +#define SSize_t $ssizetype /* signed count of bytes */ + /* STARTPERL: * This variable contains the string to put in front of a perl * script to make sure (one hopes) that it runs with perl and not @@ -1587,10 +1699,12 @@ sed <config.h -e 's!^#undef!/\*#define!' -e 's!^#un-def!#undef!' */ #define STARTPERL "$startperl" /**/ -/* BIN_SH: - * This variable contains the path to the shell. +/* 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. */ -#define BIN_SH "$bin_sh" /**/ +#$useperlio USE_PERLIO /**/ /* VOIDFLAGS: * This symbol indicates how much support of the void type is given by this