From 86959918b69bd7566746d776574341f410f68755 Mon Sep 17 00:00:00 2001 From: Jarkko Hietaniemi Date: Sun, 4 Jul 1999 23:26:01 +0000 Subject: [PATCH] Miscellaneus AIX fixes + SOCKS support. p4raw-id: //depot/cfgperl@3578 --- Configure | 8 ++++++- Makefile.SH | 1 + Porting/Glossary | 24 +++++++++++++++++++++ Porting/config.sh | 46 ++++++++++++++++++++++------------------ Porting/config_H | 60 +++++++++++++++++++++++++++++++++++++++++----------- config_h.SH | 6 ++++++ doio.c | 7 +++++- ext/Socket/Socket.xs | 7 +++++- hints/aix.sh | 37 ++++++++------------------------ pp_sys.c | 3 +++ 10 files changed, 136 insertions(+), 63 deletions(-) diff --git a/Configure b/Configure index 174abe1..11b119b 100755 --- a/Configure +++ b/Configure @@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Mon Jul 5 01:17:41 EET DST 1999 [metaconfig 3.0 PL70] +# Generated on Mon Jul 5 02:09:55 EET DST 1999 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ < rather than . +i_shadow (i_shadow.U): + This variable conditionally defines the I_SHADOW symbol, and indicates + whether a C program should include . + +i_socks (i_socks.U): + This variable conditionally defines the I_SOCKS symbol, and indicates + whether a C program should include . + i_stdarg (i_varhdr.U): This variable conditionally defines the I_STDARG symbol, which indicates to the C program that exists and should diff --git a/Porting/config.sh b/Porting/config.sh index f9e9447..f4df118 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -8,7 +8,7 @@ # Package name : perl5 # Source directory : . -# Configuration time: Sat May 22 00:43:12 EET DST 1999 +# Configuration time: Mon Jul 5 02:12:38 EET DST 1999 # Configured by : jhi # Target system : osf1 alpha.hut.fi v4.0 878 alpha @@ -30,10 +30,10 @@ afs='false' alignbytes='8' ansi2knr='' aphostname='' -apiversion='5.00556' +apiversion='5.00557' ar='ar' -archlib='/opt/perl/lib/5.00556/alpha-dec_osf-thread' -archlibexp='/opt/perl/lib/5.00556/alpha-dec_osf-thread' +archlib='/opt/perl/lib/5.00557/alpha-dec_osf-thread' +archlibexp='/opt/perl/lib/5.00557/alpha-dec_osf-thread' archname64='' archname='alpha-dec_osf-thread' archobjs='' @@ -50,12 +50,12 @@ castflags='0' cat='cat' cc='cc' cccdlflags=' ' -ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.00556/alpha-dec_osf-thread/CORE' +ccdlflags=' -Wl,-rpath,/opt/perl/lib/5.00557/alpha-dec_osf-thread/CORE' ccflags='-pthread -std -DLANGUAGE_C' ccsymbols='__LANGUAGE_C__=1 _LONGLONG=1 LANGUAGE_C=1 SYSTYPE_BSD=1' cf_by='jhi' cf_email='yourname@yourhost.yourplace.com' -cf_time='Sat May 22 00:43:12 EET DST 1999' +cf_time='Mon Jul 5 02:12:38 EET DST 1999' chgrp='' chmod='' chown='' @@ -121,6 +121,7 @@ d_endnent='define' d_endpent='define' d_endpwent='define' d_endsent='define' +d_endspent='undef' d_eofnblk='define' d_eunice='undef' d_fchmod='define' @@ -180,6 +181,8 @@ d_getsbyname='define' d_getsbyport='define' d_getsent='define' d_getservprotos='define' +d_getspent='undef' +d_getspnam='undef' d_gettimeod='define' d_gnulibc='undef' d_grpasswd='define' @@ -301,6 +304,7 @@ d_setrgid='define' d_setruid='define' d_setsent='define' d_setsid='define' +d_setspent='undef' d_setvbuf='define' d_sfio='undef' d_shm='define' @@ -437,6 +441,8 @@ i_pwd='define' i_rpcsvcdbm='undef' i_sfio='undef' i_sgtty='undef' +i_shadow='undef' +i_socks='undef' i_stdarg='define' i_stddef='define' i_stdlib='define' @@ -476,14 +482,14 @@ i_vfork='undef' ignore_versioned_solibs='' incpath='' inews='' -installarchlib='/opt/perl/lib/5.00556/alpha-dec_osf-thread' +installarchlib='/opt/perl/lib/5.00557/alpha-dec_osf-thread' installbin='/opt/perl/bin' installman1dir='/opt/perl/man/man1' installman3dir='/opt/perl/man/man3' -installprivlib='/opt/perl/lib/5.00556' +installprivlib='/opt/perl/lib/5.00557' installscript='/opt/perl/bin' -installsitearch='/opt/perl/lib/site_perl/5.00556/alpha-dec_osf-thread' -installsitelib='/opt/perl/lib/site_perl/5.00556' +installsitearch='/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread' +installsitelib='/opt/perl/lib/site_perl/5.00557' installusrbinperl='define' intsize='4' known_extensions='B ByteLoader DB_File Data/Dumper Devel/Peek Fcntl GDBM_File IO IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Thread attrs re' @@ -498,7 +504,7 @@ libc='/usr/shlib/libc.so' libperl='libperl.so' libpth='/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /var/shlib' libs='-lgdbm -ldbm -ldb -lm -lrt -lpthread -lexc' -libswanted='sfio socket inet nsl nm gdbm dbm db malloc dld ld sun m rt cposix posix ndir dir crypt ucb BSD x pthread exc' +libswanted='sfio socket inet nsl nm gdbm dbm db malloc dld ld sun m rt cposix posix ndir dir crypt sec ucb BSD x pthread exc' line='' lint='' lkflags='' @@ -574,8 +580,8 @@ pmake='' pr='' prefix='/opt/perl' prefixexp='/opt/perl' -privlib='/opt/perl/lib/5.00556' -privlibexp='/opt/perl/lib/5.00556' +privlib='/opt/perl/lib/5.00557' +privlibexp='/opt/perl/lib/5.00557' prototype='define' ptrsize='8' randbits='48' @@ -607,10 +613,10 @@ sig_name_init='"ZERO", "HUP", "INT", "QUIT", "ILL", "TRAP", "ABRT", "EMT", "FPE" sig_num='0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 6 6 16 20 23 23 23 29 48 ' sig_num_init='0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 6, 6, 16, 20, 23, 23, 23, 29, 48, 0' signal_t='void' -sitearch='/opt/perl/lib/site_perl/5.00556/alpha-dec_osf-thread' -sitearchexp='/opt/perl/lib/site_perl/5.00556/alpha-dec_osf-thread' -sitelib='/opt/perl/lib/site_perl/5.00556' -sitelibexp='/opt/perl/lib/site_perl/5.00556' +sitearch='/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread' +sitearchexp='/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread' +sitelib='/opt/perl/lib/site_perl/5.00557' +sitelibexp='/opt/perl/lib/site_perl/5.00557' sizetype='size_t' sleep='' smail='' @@ -636,7 +642,7 @@ stdio_ptr='((fp)->_ptr)' stdio_stream_array='_iob' strings='/usr/include/string.h' submit='' -subversion='56' +subversion='57' sysman='/usr/man/man1' tail='' tar='' @@ -666,7 +672,7 @@ usethreads='define' usevfork='false' usrinc='/usr/include' uuname='' -version='5.00556' +version='5.00557' vi='' voidflags='15' xlibpth='/usr/lib/386 /lib/386' @@ -688,7 +694,7 @@ config_arg9='-Dmyhostname=yourhost' config_arg10='-dE' PERL_REVISION=5 PERL_VERSION=5 -PERL_SUBVERSION=56 +PERL_SUBVERSION=57 CONFIGDOTSH=true # Variables propagated from previous config.sh file. pp_sys_cflags='ccflags="$ccflags -DNO_EFF_ONLY_OK"' diff --git a/Porting/config_H b/Porting/config_H index a5af300..e3cf445 100644 --- a/Porting/config_H +++ b/Porting/config_H @@ -17,7 +17,7 @@ /* * Package name : perl5 * Source directory : . - * Configuration time: Sat May 22 00:43:12 EET DST 1999 + * Configuration time: Mon Jul 5 02:12:38 EET DST 1999 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ @@ -581,7 +581,7 @@ /* HAS_SHMAT_PROTOTYPE: * This symbol, if defined, indicates that the sys/shm.h includes * a prototype for shmat(). Otherwise, it is up to the program to - * guess one. Shmat_t shmat (int, Shmat_t, int) is a good guess, + * guess one. Shmat_t shmat _((int, Shmat_t, int)) is a good guess, * but not always right so it should be emitted by the program only * when HAS_SHMAT_PROTOTYPE is not defined to avoid conflicting defs. */ @@ -2069,8 +2069,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.00556/alpha-dec_osf-thread" /**/ -#define ARCHLIB_EXP "/opt/perl/lib/5.00556/alpha-dec_osf-thread" /**/ +#define ARCHLIB "/opt/perl/lib/5.00557/alpha-dec_osf-thread" /**/ +#define ARCHLIB_EXP "/opt/perl/lib/5.00557/alpha-dec_osf-thread" /**/ /* DLSYM_NEEDS_UNDERSCORE: * This symbol, if defined, indicates that we need to prepend an @@ -2080,6 +2080,12 @@ */ /*#define DLSYM_NEEDS_UNDERSCORE / **/ +/* 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_FSEEKO: * This symbol, if defined, indicates that the fseeko routine is * available to fseek beyond 32 bits (useful for ILP32 hosts). @@ -2098,6 +2104,18 @@ */ /*#define HAS_GETMNTENT / **/ +/* 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. + */ +/*#define HAS_GETSPNAM / **/ + /* HAS_HASMNTOPT: * This symbol, if defined, indicates that the hasmntopt routine is * available to query the mount options of file systems. @@ -2123,6 +2141,12 @@ */ #define HAS_READV /**/ +/* 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 / **/ + /* USE_SFIO: * This symbol, if defined, indicates that sfio should * be used. @@ -2153,7 +2177,7 @@ * This symbol, if defined, indicates that the system provides * a prototype for the telldir() function. Otherwise, it is up * to the program to supply one. A good guess is - * extern long telldir (DIR*); + * extern long telldir _((DIR*)); */ #define HAS_TELLDIR_PROTO /**/ @@ -2262,6 +2286,18 @@ */ #define I_POLL /**/ +/* I_SHADOW: + * This symbol, if defined, indicates that exists and + * should be included. + */ +/*#define I_SHADOW / **/ + +/* I_SOCKS: + * This symbol, if defined, indicates that exists and + * should be included. + */ +/*#define I_SOCKS / **/ + /* I_SYS_MMAN: * This symbol, if defined, indicates that exists and * should be included. @@ -2360,8 +2396,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.00556" /**/ -#define PRIVLIB_EXP "/opt/perl/lib/5.00556" /**/ +#define PRIVLIB "/opt/perl/lib/5.00557" /**/ +#define PRIVLIB_EXP "/opt/perl/lib/5.00557" /**/ /* SELECT_MIN_BITS: * This symbol holds the minimum number of bits operated by select. @@ -2385,8 +2421,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.00556/alpha-dec_osf-thread" /**/ -#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.00556/alpha-dec_osf-thread" /**/ +#define SITEARCH "/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread" /**/ +#define SITEARCH_EXP "/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread" /**/ /* SITELIB: * This symbol contains the name of the private library for this package. @@ -2401,8 +2437,8 @@ * 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 "/opt/perl/lib/site_perl/5.00556" /**/ -#define SITELIB_EXP "/opt/perl/lib/site_perl/5.00556" /**/ +#define SITELIB "/opt/perl/lib/site_perl/5.00557" /**/ +#define SITELIB_EXP "/opt/perl/lib/site_perl/5.00557" /**/ /* STARTPERL: * This variable contains the string to put in front of a perl @@ -2492,7 +2528,7 @@ * This symbol, if defined, indicates that the system provides * a prototype for the drand48() function. Otherwise, it is up * to the program to supply one. A good guess is - * extern double drand48 (void); + * extern double drand48 _((void)); */ #define HAS_DRAND48_PROTO /**/ diff --git a/config_h.SH b/config_h.SH index 44d4379..94c7b66 100644 --- a/config_h.SH +++ b/config_h.SH @@ -2306,6 +2306,12 @@ sed <config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- */ #$i_shadow I_SHADOW /**/ +/* I_SOCKS: + * This symbol, if defined, indicates that exists and + * should be included. + */ +#$i_socks I_SOCKS /**/ + /* I_SYS_MMAN: * This symbol, if defined, indicates that exists and * should be included. diff --git a/doio.c b/doio.c index e148fbb..7e1645e 100644 --- a/doio.c +++ b/doio.c @@ -64,7 +64,12 @@ #if defined(HAS_SOCKET) && !defined(VMS) /* VMS handles sockets via vmsish.h */ # include -# include +# if (defined(SOCKS) || defined(USE_SOCKS)) && defined(I_SOCKS) +# include +# endif +# ifdef I_NETBSD +# include +# endif # ifndef ENOTSOCK # ifdef I_NET_ERRNO # include diff --git a/ext/Socket/Socket.xs b/ext/Socket/Socket.xs index 336e6c4..016a461 100644 --- a/ext/Socket/Socket.xs +++ b/ext/Socket/Socket.xs @@ -7,6 +7,9 @@ # include # endif # include +# if (defined(SOCKS) || defined(USE_SOCKS)) && defined(I_SOCKS) +# include +# endif # ifdef MPE # define PF_INET AF_INET # define PF_UNIX AF_UNIX @@ -18,7 +21,9 @@ # ifdef I_NETINET_IN # include # endif -# include +# ifdef I_NETDB +# include +# endif # ifdef I_ARPA_INET # include # endif diff --git a/hints/aix.sh b/hints/aix.sh index 0614ce7..581141d 100644 --- a/hints/aix.sh +++ b/hints/aix.sh @@ -43,7 +43,9 @@ d_setruid='undef' alignbytes=8 -usemymalloc='n' +case "$usemymalloc" in +'') usemymalloc='n' ;; +esac # Intuiting the existence of system calls under AIX is difficult, # at best; the safest technique is to find them empirically. @@ -79,7 +81,7 @@ case "$osvers" in ccflags="$ccflags -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE" case "$cc" in *gcc*) ;; - *) ccflags="$ccflags -qmaxmem=8192" ;; + *) ccflags="$ccflags -qmaxmem=16384" ;; esac nm_opt='-B' ;; @@ -111,16 +113,14 @@ case "$osvers" in ;; esac +# Save this for backward compatibility for now. +# Configure already (5.005_58) knows how to probe for +# and libsocks. What sucks is that the name +# of the socks library seems to be version dependent +# (e.g. libsocks5), bleagh. # # if $ccflags contains -DSOCKS, then add socks library support. # -# SOCKS support also requires each source module with socket support -# add the following lines directly after the #include : -# -# #ifdef SOCKS -# #include -# #endif -# # It is expected that libsocks.a resides in /usr/local/lib and that # socks.h resides in /usr/local/include. If these files live some # different place then modify @@ -134,25 +134,6 @@ for arg in $ccflags ; do incpath=/usr/local/include libpath=/usr/local/lib - echo >&4 "SOCKS using $incpath/socks.h and $libpath/lib${sockslib}.a" - echo >&4 "SOCKS requires source modifications. #include must change to:" - echo >&4 - echo >&4 " #include " - echo >&4 " #ifdef SOCKS" - echo >&4 " #include " - echo >&4 " #endif" - echo >&4 - echo >&4 "in some or all of the following files:" - echo >&4 - - for arg in `find . \( -name '*.c' -o -name '*.xs' -o -name '*.h' \) \ - -exec egrep -l '#.*include.*socket\.h' {} \; | \ - egrep -v "win32|vms|t/lib|Socket.c` ; do - echo >&4 " $arg" - done - - echo >&4 - lddlflags="$lddlflags -l$sockslib" # setting $libs here breaks the optional libraries search diff --git a/pp_sys.c b/pp_sys.c index 9600174..0470598 100644 --- a/pp_sys.c +++ b/pp_sys.c @@ -46,6 +46,9 @@ extern "C" int syscall(unsigned long,...); #if defined(HAS_SOCKET) && !defined(VMS) /* VMS handles sockets via vmsish.h */ # include +# if (defined(SOCKS) || defined(USE_SOCKS)) && defined(I_SOCKS) +# include +# endif # ifdef I_NETDB # include # endif -- 1.8.3.1