259 lines
7.9 KiB
Bash
Executable File
259 lines
7.9 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
case $PERL_CONFIG_SH in
|
|
'') . ./config.sh ;;
|
|
esac
|
|
echo "Extracting Policy.sh (with variable substitutions)"
|
|
$spitshell <<!GROK!THIS! >Policy.sh
|
|
$startsh
|
|
#
|
|
# This file was produced by running the Policy_sh.SH script, which
|
|
# gets its values from config.sh, which is generally produced by
|
|
# running Configure.
|
|
#
|
|
# The idea here is to distill in one place the common site-wide
|
|
# "policy" answers (such as installation directories) that are
|
|
# to be "sticky". If you keep the file Policy.sh around in
|
|
# the same directory as you are building Perl, then Configure will
|
|
# (by default) load up the Policy.sh file just before the
|
|
# platform-specific hints file and rewrite it at the end.
|
|
#
|
|
# The sequence of events is as follows:
|
|
# A: If you are NOT re-using an old config.sh:
|
|
# 1. At start-up, Configure loads up the defaults from the
|
|
# os-specific hints/osname_osvers.sh file and any previous
|
|
# Policy.sh file.
|
|
# 2. At the end, Configure runs Policy_sh.SH, which creates
|
|
# Policy.sh, overwriting a previous Policy.sh if necessary.
|
|
#
|
|
# B: If you are re-using an old config.sh:
|
|
# 1. At start-up, Configure loads up the defaults from config.sh,
|
|
# ignoring any previous Policy.sh file.
|
|
# 2. At the end, Configure runs Policy_sh.SH, which creates
|
|
# Policy.sh, overwriting a previous Policy.sh if necessary.
|
|
#
|
|
# Thus the Policy.sh file gets overwritten each time
|
|
# Configure is run. Any variables you add to Policy.sh will be lost
|
|
# unless you copy Policy.sh somewhere else before running Configure.
|
|
#
|
|
# Allow Configure command-line overrides; usually these won't be
|
|
# needed, but something like -Dprefix=/test/location can be quite
|
|
# useful for testing out new versions.
|
|
|
|
#Site-specific values:
|
|
|
|
case "\$perladmin" in
|
|
'') perladmin='$perladmin' ;;
|
|
esac
|
|
|
|
# Installation prefixes. Allow a Configure -D override. You
|
|
# may wish to reinstall perl under a different prefix, perhaps
|
|
# in order to test a different configuration.
|
|
# For an explanation of the installation directories, see the
|
|
# INSTALL file section on "Installation Directories".
|
|
case "\$prefix" in
|
|
'') prefix='$prefix' ;;
|
|
esac
|
|
|
|
# By default, the next three are the same as \$prefix.
|
|
# If the user changes \$prefix, and previously \$siteprefix was the
|
|
# same as \$prefix, then change \$siteprefix as well.
|
|
# Use similar logic for \$vendorprefix and \$installprefix.
|
|
|
|
case "\$siteprefix" in
|
|
'') if test "$siteprefix" = "$prefix"; then
|
|
siteprefix="\$prefix"
|
|
else
|
|
siteprefix='$siteprefix'
|
|
fi
|
|
;;
|
|
esac
|
|
case "\$vendorprefix" in
|
|
'') if test "$vendorprefix" = "$prefix"; then
|
|
vendorprefix="\$prefix"
|
|
else
|
|
vendorprefix='$vendorprefix'
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
# Where installperl puts things.
|
|
case "\$installprefix" in
|
|
'') if test "$installprefix" = "$prefix"; then
|
|
installprefix="\$prefix"
|
|
else
|
|
installprefix='$installprefix'
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
# Installation directives. Note that each one comes in three flavors.
|
|
# For example, we have privlib, privlibexp, and installprivlib.
|
|
# privlib is for private (to perl) library files.
|
|
# privlibexp is the same, except any '~' the user gave to Configure
|
|
# is expanded to the user's home directory. This is figured
|
|
# out automatically by Configure, so you don't have to include it here.
|
|
# installprivlib is for systems (such as those running AFS) that
|
|
# need to distinguish between the place where things
|
|
# get installed and where they finally will reside. As of 5.005_6x,
|
|
# this too is handled automatically by Configure based on
|
|
# $installprefix, so it isn't included here either.
|
|
#
|
|
# Note also that there are three broad hierarchies of installation
|
|
# directories, as discussed in the INSTALL file under
|
|
# "Installation Directories":
|
|
#
|
|
# =item Directories for the perl distribution
|
|
#
|
|
# =item Directories for site-specific add-on files
|
|
#
|
|
# =item Directories for vendor-supplied add-on files
|
|
#
|
|
# See Porting/Glossary for the definitions of these names, and see the
|
|
# INSTALL file for further explanation and some examples.
|
|
#
|
|
# In each case, if your previous value was the default, leave it commented
|
|
# out. That way, if you override prefix, all of these will be
|
|
# automatically adjusted.
|
|
#
|
|
# WARNING: Be especially careful about architecture-dependent and
|
|
# version-dependent names, particularly if you reuse this file for
|
|
# different versions of perl.
|
|
|
|
!GROK!THIS!
|
|
|
|
# Set the following variables. Mention them here so metaconfig
|
|
# includes the appropriate code in Configure
|
|
# $bin $scriptdir $privlib $archlib
|
|
# $man1dir $man3dir $html1dir $html3dir
|
|
# $sitebin $sitescript $sitelib $sitearch
|
|
# $siteman1dir $siteman3dir $sitehtml1dir $sitehtml3dir
|
|
# $vendorbin $vendorscript $vendorlib $vendorarch
|
|
# $vendorman1dir $vendorman3dir $vendorhtml1dir $vendorhtml3dir
|
|
|
|
for var in \
|
|
bin scriptdir privlib archlib man1dir man3dir man1ext man3ext \
|
|
html1dir html3dir \
|
|
sitebin sitescript sitelib sitearch \
|
|
siteman1dir siteman3dir sitehtml1dir sitehtml3dir \
|
|
vendorbin vendorscript vendorlib vendorarch \
|
|
vendorman1dir vendorman3dir vendorhtml1dir vendorhtml3dir
|
|
do
|
|
|
|
case "$var" in
|
|
|
|
# Directories for the core perl components
|
|
bin) dflt=$prefix/bin ;;
|
|
# The scriptdir test is more complex, but this is probably usually ok.
|
|
scriptdir)
|
|
if $test -d $prefix/script; then
|
|
dflt=$prefix/script
|
|
else
|
|
dflt=$bin
|
|
fi
|
|
;;
|
|
privlib)
|
|
case "$prefix" in
|
|
*perl*) dflt=$prefix/lib/$version ;;
|
|
*) dflt=$prefix/lib/$package/$version ;;
|
|
esac
|
|
;;
|
|
archlib) dflt="$privlib/$archname" ;;
|
|
|
|
man1dir) dflt="$prefix/man/man1" ;;
|
|
man3dir) dflt="$prefix/man/man3" ;;
|
|
# Can we assume all sed's have greedy matching?
|
|
man1ext) dflt=`echo $man1dir | sed -e 's!.*man!!' -e 's!^\.!!'` ;;
|
|
man3ext) dflt=`echo $man3dir | sed -e 's!.*man!!' -e 's!^\.!!'` ;;
|
|
|
|
# We don't know what to do with these yet.
|
|
html1dir) dflt='' ;;
|
|
html3dir) dflt='' ;;
|
|
|
|
# Directories for site-specific add-on files
|
|
sitebin) dflt=$siteprefix/bin ;;
|
|
sitescript)
|
|
if $test -d $siteprefix/script; then
|
|
dflt=$siteprefix/script
|
|
else
|
|
dflt=$sitebin
|
|
fi
|
|
;;
|
|
sitelib)
|
|
case "$siteprefix" in
|
|
*perl*) dflt=$prefix/lib/site_perl/$version ;;
|
|
*) dflt=$prefix/lib/$package/site_perl/$version ;;
|
|
esac
|
|
;;
|
|
sitearch) dflt="$sitelib/$archname" ;;
|
|
|
|
siteman1dir) dflt="$siteprefix/man/man1" ;;
|
|
siteman3dir) dflt="$siteprefix/man/man3" ;;
|
|
# We don't know what to do with these yet.
|
|
sitehtml1dir) dflt='' ;;
|
|
sitehtml3dir) dflt='' ;;
|
|
|
|
# Directories for vendor-supplied add-on files
|
|
# These are all usually empty.
|
|
vendor*)
|
|
if test X"$vendorprefix" = X""; then
|
|
dflt=''
|
|
else
|
|
case "$var" in
|
|
vendorbin) dflt=$vendorprefix/bin ;;
|
|
vendorscript)
|
|
if $test -d $vendorprefix/script; then
|
|
dflt=$vendorprefix/script
|
|
else
|
|
dflt=$vendorbin
|
|
fi
|
|
;;
|
|
vendorlib)
|
|
case "$vendorprefix" in
|
|
*perl*) dflt=$prefix/lib/vendor_perl/$version ;;
|
|
*) dflt=$prefix/lib/$package/vendor_perl/$version ;;
|
|
esac
|
|
;;
|
|
vendorarch) dflt="$vendorlib/$archname" ;;
|
|
|
|
vendorman1dir) dflt="$vendorprefix/man/man1" ;;
|
|
vendorman3dir) dflt="$vendorprefix/man/man3" ;;
|
|
# We don't know what to do with these yet.
|
|
vendorhtml1dir) dflt='' ;;
|
|
vendorhtml3dir) dflt='' ;;
|
|
|
|
esac # End of vendorprefix != ''
|
|
fi
|
|
;;
|
|
esac
|
|
|
|
eval val="\$$var"
|
|
if test X"$val" = X"$dflt"; then
|
|
echo "# $var='$dflt'"
|
|
else
|
|
echo "# Preserving custom $var"
|
|
echo "$var='$val'"
|
|
fi
|
|
|
|
done >> Policy.sh
|
|
|
|
$spitshell <<!GROK!THIS! >>Policy.sh
|
|
|
|
# Lastly, you may add additional items here. For example, to set the
|
|
# pager to your local favorite value, uncomment the following line in
|
|
# the original Policy_sh.SH file and re-run sh Policy_sh.SH.
|
|
#
|
|
# pager='$pager'
|
|
#
|
|
# A full Glossary of all the config.sh variables is in the file
|
|
# Porting/Glossary.
|
|
|
|
!GROK!THIS!
|
|
|
|
#Credits:
|
|
# The original design for this Policy.sh file came from Wayne Davison,
|
|
# maintainer of trn.
|
|
# This version for Perl5.004_61 originally written by
|
|
# Andy Dougherty <doughera@lafayette.edu>.
|
|
# This file may be distributed under the same terms as Perl itself.
|