diff options
-rwxr-xr-x | Configure | 99 | ||||
-rw-r--r-- | Porting/Glossary | 28 | ||||
-rw-r--r-- | Porting/config.sh | 11 | ||||
-rw-r--r-- | Porting/config_H | 8 | ||||
-rw-r--r-- | config_h.SH | 6 | ||||
-rw-r--r-- | perl.c | 6 |
6 files changed, 151 insertions, 7 deletions
@@ -20,7 +20,7 @@ # $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $ # -# Generated on Sun Jul 25 14:54:07 EET DST 1999 [metaconfig 3.0 PL70] +# Generated on Sun Jul 25 17:05:01 EET DST 1999 [metaconfig 3.0 PL70] # (with additional metaconfig patches by perlbug@perl.com) cat >/tmp/c1$$ <<EOF @@ -831,6 +831,13 @@ incpath='' mips='' mips_type='' usrinc='' +d_vendorlib='' +installvendorlib='' +vendorlib='' +vendorlibexp='' +usevendorprefix='' +vendorprefix='' +vendorprefixexp='' defvoidused='' voidflags='' CONFIG='' @@ -2375,7 +2382,7 @@ EOM You may give one or more space-separated answers, or "none" if appropriate. A well-behaved OS will have no hints, so answering "none" or just "Policy" -is a good thing. DO NOT give a wrong version. +is a good thing. DO NOT give a wrong version or a wrong OS. EOM @@ -4583,6 +4590,83 @@ case "$freetype" in esac echo "Your system uses $freetype free(), it would seem." >&4 $rm -f malloc.[co] +$cat <<EOM + +The installation process will also create a directory for +vendor-supplied add-ons. Vendors who supply perl with their system +may find it convenient to place all vendor-supplied files in this +directory rather than in the main distribution directory. This will +ease upgrades between binary-compatible maintenance versions of perl. + +Of course you may also use these directories in whatever way you see +fit. For example, you might use them to access modules shared over a +company-wide network. + +The default answer should be fine for most people. +This causes further questions about vendor add-ons to be skipped +and no vendor-specific directories will be configured for perl. + +EOM +rp='Do you want to configure vendor-specific add-on directories?' +case "$usevendorprefix" in +define|true|[yY]*) dflt=y ;; +*) dflt=n ;; +esac +. ./myread +case "$ans" in +[yY]*) fn=d~+ + rp='Installation prefix to use for vendor-supplied add-ons?' + case "$vendorprefix" in + '') dflt='' ;; + *) dflt=$vendorprefix ;; + esac + . ./getfile + oldvendorprefix='' + case "$vendorprefix" in + '') ;; + *) case "$ans" in + "$prefix") ;; + *) oldvendorprefix="$prefix";; + esac + ;; + esac + usevendorprefix="$define" + vendorprefix="$ans" + vendorprefixexp="$ansexp" + ;; +*) usevendorprefix="$undef" + vendorprefix='' + vendorprefixexp='' + ;; +esac + +case "$vendorprefix" in +'') d_vendorlib="$undef" + vendorlib='' + vendorlibexp='' + ;; +*) d_vendorlib="$define" + : determine where vendor-supplied modules go. + : Usual default is /usr/local/lib/perl5/vendor_perl + prog=`echo $package | $sed 's/-*[0-9.]*$//'` + case "$installstyle" in + *lib/perl5*) dflt=$vendorprefix/lib/$package/vendor_$prog ;; + *) dflt=$vendorprefix/lib/vendor_$prog ;; + esac + fn=d~+ + rp='Pathname for the vendor-supplied library files?' + . ./getfile + vendorlib="$ans" + vendorlibexp="$ansexp" + : Change installation prefix, if necessary. + if $test X"$prefix" != X"$installprefix"; then + installvendorlib=`echo $vendorlibexp | $sed 's#^$prefix#$installprefix#'` + else + installvendorlib="$vendorlibexp" + fi + ;; +esac + : Cruising for prototypes echo " " echo "Checking out function prototypes..." >&4 @@ -6243,7 +6327,7 @@ siteprefixexp="$ansexp" : XXX No longer works with Prefixit stuff. prog=`echo $package | $sed 's/-*[0-9.]*$//'` case "$installstyle" in -*lib/perl5*) dflt=$siteprefix/lib/site_$prog/ ;; +*lib/perl5*) dflt=$siteprefix/lib/site_$prog ;; *) dflt=$siteprefix/lib/site_$prog ;; esac $cat <<EOM @@ -12694,7 +12778,7 @@ find_extensions=' done' tdir=`pwd` cd $rsrc/ext -set +set X shift eval $find_extensions set X $nonxs_extensions @@ -13304,6 +13388,7 @@ d_tzname='$d_tzname' d_umask='$d_umask' d_uname='$d_uname' d_union_semun='$d_union_semun' +d_vendorlib='$d_vendorlib' d_vfork='$d_vfork' d_void_closedir='$d_void_closedir' d_voidsig='$d_voidsig' @@ -13440,6 +13525,7 @@ installsitearch='$installsitearch' installsitelib='$installsitelib' installstyle='$installstyle' installusrbinperl='$installusrbinperl' +installvendorlib='$installvendorlib' intsize='$intsize' known_extensions='$known_extensions' ksh='$ksh' @@ -13622,9 +13708,14 @@ usesfio='$usesfio' useshrplib='$useshrplib' usesocks='$usesocks' usethreads='$usethreads' +usevendorprefix='$usevendorprefix' usevfork='$usevfork' usrinc='$usrinc' uuname='$uuname' +vendorlib='$vendorlib' +vendorlibexp='$vendorlibexp' +vendorprefix='$vendorprefix' +vendorprefixexp='$vendorprefixexp' version='$version' vi='$vi' voidflags='$voidflags' diff --git a/Porting/Glossary b/Porting/Glossary index 2ae9369e19..4f1cbf4d19 100644 --- a/Porting/Glossary +++ b/Porting/Glossary @@ -1526,6 +1526,9 @@ d_union_semun (d_union_semun.U): This variable conditionally defines HAS_UNION_SEMUN if the union semun is defined by including <sys/sem.h>. +d_vendorlib (vendorlib.U): + This variable conditionally defines PERL_VENDORLIB. + d_vfork (d_vfork.U): This variable conditionally defines the HAS_VFORK symbol, which indicates the vfork() routine is available. @@ -2170,6 +2173,11 @@ installusrbinperl (instubperl.U): /usr/bin/perl in addition to $installbin/perl +installvendorlib (vendorlib.U): + This variable is really the same as vendorlibexp but may differ on + those systems using AFS. For extra portability, only this variable + should be used in makefiles. + intsize (intsize.U): This variable contains the value of the INTSIZE symbol, which indicates to the C program how many bytes there are in an int. @@ -3086,6 +3094,26 @@ uuname (Loc.U): This variable is defined but not used by Configure. The value is a plain '' and is not useful. +vendorlib (vendorlib.U): + This variable contains the eventual value of the VENDORLIB symbol, + which is the name of the private library for this package. It may + have a ~ on the front. It is up to the makefile to eventually create + this directory while performing installation (with ~ substitution). + Vendors who distribute perl binaries may place their own + extensions and modules in this directory. + +vendorlibexp (vendorlib.U): + This variable is the ~name expanded version of vendorlib, so that you + may use it directly in Makefiles or shell scripts. + +vendorprefix (vendorprefix.U): + This variable holds the full absolute path of the directory below + which the vendor will install add-on packages. + +vendorprefixexp (vendorprefix.U): + This variable holds the full absolute path of the directory below + which the vendor will install add-on packages. Derived from vendorprefix. + version (patchlevel.U): The full version number of this package. This combines baserev, patchlevel, and subversion to get the full diff --git a/Porting/config.sh b/Porting/config.sh index 70998a1ecf..40e1301b6c 100644 --- a/Porting/config.sh +++ b/Porting/config.sh @@ -8,7 +8,7 @@ # Package name : perl5 # Source directory : . -# Configuration time: Sun Jul 25 14:08:44 EET DST 1999 +# Configuration time: Sun Jul 25 17:08:22 EET DST 1999 # Configured by : jhi # Target system : osf1 alpha.hut.fi v4.0 878 alpha @@ -55,7 +55,7 @@ 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='Sun Jul 25 14:08:44 EET DST 1999' +cf_time='Sun Jul 25 17:08:22 EET DST 1999' chgrp='' chmod='' chown='' @@ -358,6 +358,7 @@ d_tzname='define' d_umask='define' d_uname='define' d_union_semun='undef' +d_vendorlib='undef' d_vfork='undef' d_void_closedir='undef' d_voidsig='define' @@ -494,6 +495,7 @@ installsitearch='/opt/perl/lib/site_perl/5.00557/alpha-dec_osf-thread' installsitelib='/opt/perl/lib/site_perl' installstyle='lib' installusrbinperl='define' +installvendorlib='' intsize='4' known_extensions='B ByteLoader DB_File Data/Dumper Devel/DProf Devel/Peek Fcntl GDBM_File IO IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Thread attrs re' ksh='' @@ -676,9 +678,14 @@ usesfio='false' useshrplib='true' usesocks='undef' usethreads='define' +usevendorprefix='undef' usevfork='false' usrinc='/usr/include' uuname='' +vendorlib='' +vendorlibexp='' +vendorprefix='' +vendorprefixexp='' version='5.00557' vi='' voidflags='15' diff --git a/Porting/config_H b/Porting/config_H index 4ee9f7820c..43de61d7ed 100644 --- a/Porting/config_H +++ b/Porting/config_H @@ -17,7 +17,7 @@ /* * Package name : perl5 * Source directory : . - * Configuration time: Sun Jul 25 14:08:44 EET DST 1999 + * Configuration time: Sun Jul 25 17:08:22 EET DST 1999 * Configured by : jhi * Target system : osf1 alpha.hut.fi v4.0 878 alpha */ @@ -1488,6 +1488,12 @@ #define SITELIB "/opt/perl/lib/site_perl" /**/ #define SITELIB_EXP "/opt/perl/lib/site_perl" /**/ +/* PERL_VENDORLIB_EXP: + * This symbol contains the ~name expanded version of VENDORLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +/*#define PERL_VENDORLIB_EXP "" / **/ + /* OSNAME: * This symbol contains the name of the operating system, as determined * by Configure. You shouldn't rely on it too much; the specific diff --git a/config_h.SH b/config_h.SH index 6108e7182a..405f896697 100644 --- a/config_h.SH +++ b/config_h.SH @@ -1502,6 +1502,12 @@ sed <<!GROK!THIS! >config.h -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un- #define SITELIB "$sitelib" /**/ #define SITELIB_EXP "$sitelibexp" /**/ +/* PERL_VENDORLIB_EXP: + * This symbol contains the ~name expanded version of VENDORLIB, to be used + * in programs that are not prepared to deal with ~ expansion at run-time. + */ +#$d_vendorlib PERL_VENDORLIB_EXP "$vendorlibexp" /**/ + /* OSNAME: * This symbol contains the name of the operating system, as determined * by Configure. You shouldn't rely on it too much; the specific @@ -2768,6 +2768,12 @@ S_init_perllib(pTHX) #else incpush(SITELIB_EXP, FALSE); #endif +#if defined(PERL_VENDORLIB_EXP) +#if defined(WIN32) + incpush(PERLVENDORLIB_EXP, TRUE); +#else + incpush(PERL_VENDORLIB_EXP, FALSE); +#endif #endif if (!PL_tainting) incpush(".", FALSE); |