(Reverted by #8440)
Jarkko Hietaniemi [Sun, 14 Jan 2001 04:55:34 +0000 (04:55 +0000)]
Add <features.h> probing, seems to be needed for (some?)
Linux largefileness.

p4raw-id: //depot/perl@8437

18 files changed:
Configure
Porting/Glossary
Porting/config.sh
Porting/config_H
config_h.SH
configure.com
epoc/config.sh
perl.h
pod/perltoc.pod
uconfig.h
uconfig.sh
vos/config.alpha.def
vos/config.alpha.h
vos/config.ga.def
vos/config.ga.h
win32/config.bc
win32/config.gc
win32/config.vc

index 3e845c5..ea2b060 100755 (executable)
--- 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 Fri Jan 12 22:28:01 EET 2001 [metaconfig 3.0 PL70]
+# Generated on Sun Jan 14 06:37:36 EET 2001 [metaconfig 3.0 PL70]
 # (with additional metaconfig patches by perlbug@perl.org)
 
 cat >c1$$ <<EOF
@@ -631,6 +631,7 @@ i_dirent=''
 i_dld=''
 i_dlfcn=''
 i_fcntl=''
+i_features=''
 i_float=''
 i_gdbm=''
 d_grpasswd=''
@@ -9303,11 +9304,19 @@ eval $inlibc
 set fpathconf d_fpathconf
 eval $inlibc
 
+: see if this is a features.h system
+set features.h i_features
+eval $inhdr
+
 
 : check for fpos64_t
 echo " "
 echo "Checking to see if you have fpos64_t..." >&4
 $cat >try.c <<EOCP
+#$i_features I_FEATURES
+#ifdef I_FEATURES
+#include <features.h>
+#endif
 #include <stdio.h>
 int main() { fpos64_t x = 7; }
 EOCP
@@ -10501,6 +10510,10 @@ $rm -f try.* try
 echo " "
 echo "Checking to see if you have off64_t..." >&4
 $cat >try.c <<EOCP
+#$i_features I_FEATURES
+#ifdef I_FEATURES
+#include <features.h>
+#endif
 #include <sys/types.h>
 #include <unistd.h>
 int main() { off64_t x = 7; }
@@ -16211,6 +16224,7 @@ i_dirent='$i_dirent'
 i_dld='$i_dld'
 i_dlfcn='$i_dlfcn'
 i_fcntl='$i_fcntl'
+i_features='$i_features'
 i_float='$i_float'
 i_gdbm='$i_gdbm'
 i_grp='$i_grp'
index 5800202..4c6f81f 100644 (file)
@@ -2013,6 +2013,10 @@ i_fcntl (i_fcntl.U):
        This variable controls the value of I_FCNTL (which tells
        the C program to include <fcntl.h>).
 
+i_features (i_features.U):
+       This variable conditionally defines the I_FEATURES symbol,
+       and indicates whether a C program should include <features.h>.
+
 i_float (i_float.U):
        This variable conditionally defines the I_FLOAT symbol, and indicates
        whether a C program may include <float.h> to get symbols like DBL_MAX
index 1f36253..64b6d48 100644 (file)
@@ -8,7 +8,7 @@
 
 # Package name      : perl5
 # Source directory  : .
-# Configuration time: Fri Jan 12 22:32:53 EET 2001
+# Configuration time: Sun Jan 14 06:47:38 EET 2001
 # Configured by     : jhi
 # Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
 
@@ -62,7 +62,7 @@ ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_
 ccversion='V5.6-082'
 cf_by='jhi'
 cf_email='yourname@yourhost.yourplace.com'
-cf_time='Fri Jan 12 22:32:53 EET 2001'
+cf_time='Sun Jan 14 06:47:38 EET 2001'
 charsize='1'
 chgrp=''
 chmod=''
@@ -455,6 +455,7 @@ i_dirent='define'
 i_dld='undef'
 i_dlfcn='define'
 i_fcntl='undef'
+i_features='undef'
 i_float='define'
 i_gdbm='undef'
 i_grp='define'
index 9f61585..ea4f364 100644 (file)
@@ -17,7 +17,7 @@
 /*
  * Package name      : perl5
  * Source directory  : .
- * Configuration time: Fri Jan 12 22:32:53 EET 2001
+ * Configuration time: Sun Jan 14 06:47:38 EET 2001
  * Configured by     : jhi
  * Target system     : osf1 alpha.hut.fi v4.0 878 alpha 
  */
  */
 #define HAS_SIGPROCMASK                /**/
 
+/* I_FEATURES:
+ *     This symbol, if defined, indicates that <features.h> exists and
+ *     should be included.
+ */
+/*#define      I_FEATURES              / **/
+
 #endif
index 8a3f4df..9aacdcc 100644 (file)
@@ -3269,5 +3269,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
  */
 #$d_sigprocmask HAS_SIGPROCMASK                /**/
 
+/* I_FEATURES:
+ *     This symbol, if defined, indicates that <features.h> exists and
+ *     should be included.
+ */
+#$i_features   I_FEATURES              /**/
+
 #endif
 !GROK!THIS!
index 7a58a2a..bcc9e12 100644 (file)
@@ -5210,6 +5210,7 @@ $ WC "i_dbm='undef'"
 $ WC "i_dirent='" + i_dirent + "'"
 $ WC "i_dlfcn='undef'"
 $ WC "i_fcntl='" + i_fcntl + "'"
+$ WC "i_features='undef'"
 $ WC "i_float='define'"
 $ WC "i_grp='undef'"
 $ WC "i_iconv='" + i_iconv +"'"
index 36bfc89..992f834 100644 (file)
@@ -426,6 +426,7 @@ i_dirent='define'
 i_dld='undef'
 i_dlfcn='undef'
 i_fcntl='define'
+i_features='undef'
 i_float='undef'
 i_gdbm='undef'
 i_grp='undef'
diff --git a/perl.h b/perl.h
index 19827a3..5896db9 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -425,6 +425,10 @@ register struct op *Perl_op asm(stringify(OP_IN_REGISTER));
 #  include <pthread.h>
 #endif
 
+#ifdef I_FEATURES
+#  include <features.h>
+#endif
+
 #ifndef _TYPES_                /* If types.h defines this it's easy. */
 #   ifndef major               /* Does everyone's types.h define this? */
 #      include <sys/types.h>
index 7be2b87..fd5a00f 100644 (file)
@@ -2181,20 +2181,21 @@ chcp, dataset access, OS/390 iconv, locales
 
 attributes, attrs, autouse, base, blib, bytes, charnames, constant,
 diagnostics, fields, filetest, integer, less, locale, open, ops, overload,
-perlio, re, sigtrap, strict, subs, utf8, vars, warnings, warnings::register
+perlio, re, sigtrap, strict, subs, unicode::distinct, utf8, vars, warnings,
+warnings::register
 
 =item Standard Modules
 
 AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
-B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
-B::Showlex, B::Stackobj, B::Stash, B::Terse, B::Xref, Benchmark,
-ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast,
-CGI::Pretty, CGI::Push, CGI::Switch, CPAN, CPAN::FirstTime, CPAN::Nox,
-Carp, Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, DirHandle,
-Dumpvalue, Encode, English, Env, Exporter, Exporter::Heavy,
-ExtUtils::Command, ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed,
-ExtUtils::Liblist, ExtUtils::MM_Cygwin, ExtUtils::MM_OS2,
-ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
+B::Bytecode, B::C, B::CC, B::Concise, B::Debug, B::Deparse,
+B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, B::Terse,
+B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie,
+CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CPAN, CPAN::FirstTime,
+CPAN::Nox, Carp, Carp::Heavy, Class::Struct, Cwd, DB, DB_File,
+Devel::SelfStubber, DirHandle, Dumpvalue, Encode, English, Env, Exporter,
+Exporter::Heavy, ExtUtils::Command, ExtUtils::Embed, ExtUtils::Install,
+ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin,
+ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
 ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Mkbootstrap,
 ExtUtils::Mksymlists, ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl,
 File::Basename, File::CheckTree, File::Compare, File::Copy, File::DosGlob,
@@ -2207,13 +2208,13 @@ Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent,
 Net::protoent, Net::servent, O, ODBM_File, Opcode, Pod::Checker, Pod::Find,
 Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseUtils,
 Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color,
-Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver,
-SelfLoader, Shell, Socket, Storable, Symbol, Term::ANSIColor, Term::Cap,
-Term::Complete, Term::ReadLine, Test, Test::Harness, Text::Abbrev,
-Text::ParseWords, Text::Soundex, Text::Wrap, Tie::Array, Tie::Handle,
-Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local,
-Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, User::grent,
-User::pwent
+Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe,
+Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Symbol,
+Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test,
+Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, Text::Wrap,
+Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash, Tie::Scalar,
+Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, Time::tm,
+UNIVERSAL, User::grent, User::pwent
 
 =item Extension Modules
 
@@ -2221,8 +2222,20 @@ User::pwent
 
 =item CPAN
 
-Africa, Asia, Australasia, Central America, Europe, North America, South
-America
+Language Extensions and Documentation Tools, Development Support, Operating
+System Interfaces, Networking, Device Control (modems) and InterProcess
+Communication, Data Types and Data Type Utilities, Database Interfaces,
+User Interfaces, Interfaces to / Emulations of Other Programming Languages,
+File Names, File Systems and File Locking (see also File Handles), String
+Processing, Language Text Processing, Parsing, and Searching, Option,
+Argument, Parameter, and Configuration File Processing,
+Internationalization and Locale, Authentication, Security, and Encryption,
+World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
+Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
+and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
+exceptions etc), File Handle and Input/Output Stream Utilities,
+Miscellaneous Modules, Africa, Asia, Australasia, Central America, Europe,
+North America, South America
 
 =item Modules: Creation, Use, and Abuse
 
@@ -2251,6 +2264,12 @@ to ::, Converts die(...) to croak(...), Several other minor changes
 
 =item Guidelines for Reusing Application Code
 
+Complete applications rarely belong in the Perl Module Library, Many
+applications contain some Perl code that could be reused, Break-out the
+reusable code into one or more separate module files, Take the opportunity
+to reconsider and redesign the interfaces, In some cases the 'application'
+can then be reduced to a small
+
 =back
 
 =item NOTE
@@ -6955,6 +6974,45 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
 
 =back
 
+=head2 B::Concise - Walk Perl syntax tree, printing concise info about ops
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item OPTIONS
+
+B<-basic>, B<-exec>, B<-tree>, B<-compact>, B<-loose>, B<-vt>, B<-ascii>,
+B<-main>, B<-base>I<n>, B<-bigendian>, B<-littleendian>, B<-concise>,
+B<-terse>, B<-linenoise>, B<-debug>, B<-env>
+
+=item FORMATTING SPECIFICATIONS
+
+B<(x(>I<exec_text>B<;>I<basic_text>B<)x)>, B<(*(>I<text>B<)*)>,
+B<(*(>I<text1>B<;>I<text2>B<)*)>, B<(?(>I<text1>B<#>I<var>I<Text2>B<)?)>,
+B<#>I<var>, B<#>I<var>I<N>, B<~>, B<#addr>, B<#arg>, B<#class>,
+B<#classym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>,
+B<#flags>, B<#flagval>, B<#hyphenseq>, B<#label>, B<#lastaddr>, B<#name>,
+B<#NAME>, B<#next>, B<#nextaddr>, B<#noise>, B<#private>, B<#privval>,
+B<#seq>, B<#seqnum>, B<#sibaddr>, B<#svaddr>, B<#svclass>, B<#svval>,
+B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum>
+
+=item ABBREVIATIONS
+
+=over 4
+
+=item OP flags abbreviations
+
+=item OP class abbreviations
+
+=back
+
+=item AUTHOR
+
+=back
+
 =head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
 
 =over 4
@@ -7907,23 +7965,23 @@ C<d_setproctitle>, C<d_setpwent>, C<d_setregid>, C<d_setresgid>,
 C<d_setresuid>, C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>,
 C<d_setsid>, C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>,
 C<d_shmatprototype>, C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>,
-C<d_sigsetjmp>, C<d_socket>, C<d_socklen_t>, C<d_sockpair>,
-C<d_socks5_init>, C<d_sqrtl>, C<d_statblks>, C<d_statfs_f_flags>,
-C<d_statfs_s>, C<d_statvfs>, C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>,
-C<d_stdio_ptr_lval_nochange_cnt>, C<d_stdio_ptr_lval_sets_cnt>,
-C<d_stdio_stream_array>, C<d_stdiobase>, C<d_stdstdio>, C<d_strchr>,
-C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>, C<d_strerror>, C<d_strtod>,
-C<d_strtol>, C<d_strtold>, C<d_strtoll>, C<d_strtoq>, C<d_strtoul>,
-C<d_strtoull>, C<d_strtouq>, C<d_strxfrm>, C<d_suidsafe>, C<d_symlink>,
-C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>, C<d_system>,
-C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir>, C<d_telldirproto>, C<d_time>,
-C<d_times>, C<d_truncate>, C<d_tzname>, C<d_umask>, C<d_uname>,
-C<d_union_semun>, C<d_ustat>, C<d_vendorarch>, C<d_vendorbin>,
-C<d_vendorlib>, C<d_vfork>, C<d_void_closedir>, C<d_voidsig>, C<d_voidtty>,
-C<d_volatile>, C<d_vprintf>, C<d_wait4>, C<d_waitpid>, C<d_wcstombs>,
-C<d_wctomb>, C<d_xenix>, C<date>, C<db_hashtype>, C<db_prefixtype>,
-C<defvoidused>, C<direntrytype>, C<dlext>, C<dlsrc>, C<doublesize>,
-C<drand01>, C<dynamic_ext>
+C<d_sigprocmask>, C<d_sigsetjmp>, C<d_socket>, C<d_socklen_t>,
+C<d_sockpair>, C<d_socks5_init>, C<d_sqrtl>, C<d_statblks>,
+C<d_statfs_f_flags>, C<d_statfs_s>, C<d_statvfs>, C<d_stdio_cnt_lval>,
+C<d_stdio_ptr_lval>, C<d_stdio_ptr_lval_nochange_cnt>,
+C<d_stdio_ptr_lval_sets_cnt>, C<d_stdio_stream_array>, C<d_stdiobase>,
+C<d_stdstdio>, C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>,
+C<d_strerror>, C<d_strtod>, C<d_strtol>, C<d_strtold>, C<d_strtoll>,
+C<d_strtoq>, C<d_strtoul>, C<d_strtoull>, C<d_strtouq>, C<d_strxfrm>,
+C<d_suidsafe>, C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>,
+C<d_syserrlst>, C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir>,
+C<d_telldirproto>, C<d_time>, C<d_times>, C<d_truncate>, C<d_tzname>,
+C<d_umask>, C<d_uname>, C<d_union_semun>, C<d_ustat>, C<d_vendorarch>,
+C<d_vendorbin>, C<d_vendorlib>, C<d_vfork>, C<d_void_closedir>,
+C<d_voidsig>, C<d_voidtty>, C<d_volatile>, C<d_vprintf>, C<d_wait4>,
+C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>, C<d_xenix>, C<date>,
+C<db_hashtype>, C<db_prefixtype>, C<defvoidused>, C<direntrytype>,
+C<dlext>, C<dlsrc>, C<doublesize>, C<drand01>, C<dynamic_ext>
 
 =item e
 
index 93b7d35..4ec7cbc 100644 (file)
--- a/uconfig.h
+++ b/uconfig.h
  */
 /*#define HAS_SIGPROCMASK              / **/
 
+/* I_FEATURES:
+ *     This symbol, if defined, indicates that <features.h> exists and
+ *     should be included.
+ */
+/*#define      I_FEATURES              / **/
+
 #endif
index e97222a..0486685 100755 (executable)
@@ -362,6 +362,7 @@ i_dirent='undef'
 i_dld='undef'
 i_dlfcn='undef'
 i_fcntl='undef'
+i_features='undef'
 i_float='undef'
 i_gdbm='undef'
 i_grp='undef'
index 1ec2d91..af35fbd 100644 (file)
@@ -319,6 +319,7 @@ $i_dbm='undef'
 $i_dirent='define'
 $i_dlfcn='undef'
 $i_fcntl='define'
+$i_features='undef'
 $i_float='define'
 $i_grp='define'
 $i_iconv='undef'
index 7b21420..128aaa6 100644 (file)
  */
 #define I_FCNTL        /**/
 
+/* I_FEATURES:
+ *     This symbol, if defined, indicates that <features.h> exists and should
+ *     be included.
+ */
+/*#define I_FEATURES           /**/
+
 /* I_FLOAT:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <float.h> to get definition of symbols like DBL_MAX or
index ab57e08..72054ec 100644 (file)
@@ -319,6 +319,7 @@ $i_dbm='undef'
 $i_dirent='define'
 $i_dlfcn='undef'
 $i_fcntl='define'
+$i_features='undef'
 $i_float='define'
 $i_grp='define'
 $i_iconv='undef'
index 2a89a1e..c2553e5 100644 (file)
  */
 #define I_FCNTL        /**/
 
+/* I_FEATURES:
+ *     This symbol, if defined, indicates that <features.h> exists and should
+ *     be included.
+ */
+/*#define I_FEATURES           /**/
+
 /* I_FLOAT:
  *     This symbol, if defined, indicates to the C program that it should
  *     include <float.h> to get definition of symbols like DBL_MAX or
index 6e27579..c423e86 100644 (file)
@@ -437,6 +437,7 @@ i_dirent='define'
 i_dld='undef'
 i_dlfcn='define'
 i_fcntl='define'
+i_features='undef'
 i_float='define'
 i_gdbm='undef'
 i_grp='undef'
index 14a112e..0fda668 100644 (file)
@@ -437,6 +437,7 @@ i_dirent='define'
 i_dld='undef'
 i_dlfcn='define'
 i_fcntl='define'
+i_features='undef'
 i_float='define'
 i_gdbm='undef'
 i_grp='undef'
index 969b9d4..5404329 100644 (file)
@@ -437,6 +437,7 @@ i_dirent='define'
 i_dld='undef'
 i_dlfcn='define'
 i_fcntl='define'
+i_features='undef'
 i_float='define'
 i_gdbm='undef'
 i_grp='undef'