Commit | Line | Data |
a02608de |
1 | case $PERL_CONFIG_SH in |
85364e4e |
2 | '') . ./config.sh ;; |
3 | esac |
4 | echo "Extracting Policy.sh (with variable substitutions)" |
5 | $spitshell <<!GROK!THIS! >Policy.sh |
6 | $startsh |
7 | # |
8 | # This file was produced by running the Policy_sh.SH script, which |
9 | # gets its values from config.sh, which is generally produced by |
c9166e37 |
10 | # running Configure. |
85364e4e |
11 | # |
12 | # The idea here is to distill in one place the common site-wide |
13 | # "policy" answers (such as installation directories) that are |
dc45a647 |
14 | # to be "sticky". If you keep the file Policy.sh around in |
85364e4e |
15 | # the same directory as you are building Perl, then Configure will |
16 | # (by default) load up the Policy.sh file just before the |
c9166e37 |
17 | # platform-specific hints file and rewrite it at the end. |
18 | # |
19 | # The sequence of events is as follows: |
20 | # A: If you are NOT re-using an old config.sh: |
21 | # 1. At start-up, Configure loads up the defaults from the |
22 | # os-specific hints/osname_osvers.sh file and any previous |
23 | # Policy.sh file. |
24 | # 2. At the end, Configure runs Policy_sh.SH, which creates |
25 | # Policy.sh, overwriting a previous Policy.sh if necessary. |
26 | # |
27 | # B: If you are re-using an old config.sh: |
28 | # 1. At start-up, Configure loads up the defaults from config.sh, |
29 | # ignoring any previous Policy.sh file. |
30 | # 2. At the end, Configure runs Policy_sh.SH, which creates |
31 | # Policy.sh, overwriting a previous Policy.sh if necessary. |
32 | # |
33 | # Thus the Policy.sh file gets overwritten each time |
34 | # Configure is run. Any variables you add to Policy.sh will be lost |
35 | # unless you copy Policy.sh somewhere else before running Configure. |
dc45a647 |
36 | # |
dc45a647 |
37 | # Allow Configure command-line overrides; usually these won't be |
38 | # needed, but something like -Dprefix=/test/location can be quite |
39 | # useful for testing out new versions. |
85364e4e |
40 | |
dc45a647 |
41 | #Site-specific values: |
85364e4e |
42 | |
dc45a647 |
43 | case "\$perladmin" in |
44 | '') perladmin='$perladmin' ;; |
45 | esac |
46 | |
5f578af9 |
47 | # Installation prefixes. Allow a Configure -D override. You |
dc45a647 |
48 | # may wish to reinstall perl under a different prefix, perhaps |
49 | # in order to test a different configuration. |
9e80d8f4 |
50 | # For an explanation of the installation directories, see the |
51 | # INSTALL file section on "Installation Directories". |
dc45a647 |
52 | case "\$prefix" in |
53 | '') prefix='$prefix' ;; |
54 | esac |
c9166e37 |
55 | |
56 | # By default, the next three are the same as \$prefix. |
57 | # If the user changes \$prefix, and previously \$siteprefix was the |
58 | # same as \$prefix, then change \$siteprefix as well. |
59 | # Use similar logic for \$vendorprefix and \$installprefix. |
60 | |
5f578af9 |
61 | case "\$siteprefix" in |
c9166e37 |
62 | '') if test "$siteprefix" = "$prefix"; then |
63 | siteprefix="\$prefix" |
64 | else |
65 | siteprefix='$siteprefix' |
66 | fi |
67 | ;; |
5f578af9 |
68 | esac |
69 | case "\$vendorprefix" in |
c9166e37 |
70 | '') if test "$vendorprefix" = "$prefix"; then |
71 | vendorprefix="\$prefix" |
72 | else |
73 | vendorprefix='$vendorprefix' |
74 | fi |
75 | ;; |
5f578af9 |
76 | esac |
77 | |
78 | # Where installperl puts things. |
79 | case "\$installprefix" in |
c9166e37 |
80 | '') if test "$installprefix" = "$prefix"; then |
81 | installprefix="\$prefix" |
82 | else |
83 | installprefix='$installprefix' |
84 | fi |
85 | ;; |
5f578af9 |
86 | esac |
85364e4e |
87 | |
88 | # Installation directives. Note that each one comes in three flavors. |
89 | # For example, we have privlib, privlibexp, and installprivlib. |
90 | # privlib is for private (to perl) library files. |
c4f23d77 |
91 | # privlibexp is the same, except any '~' the user gave to Configure |
85364e4e |
92 | # is expanded to the user's home directory. This is figured |
dc45a647 |
93 | # out automatically by Configure, so you don't have to include it here. |
85364e4e |
94 | # installprivlib is for systems (such as those running AFS) that |
95 | # need to distinguish between the place where things |
5f578af9 |
96 | # get installed and where they finally will reside. As of 5.005_6x, |
97 | # this too is handled automatically by Configure based on |
98 | # $installprefix, so it isn't included here either. |
99 | # |
9e80d8f4 |
100 | # Note also that there are three broad hierarchies of installation |
101 | # directories, as discussed in the INSTALL file under |
102 | # "Installation Directories": |
103 | # |
104 | # =item Directories for the perl distribution |
105 | # |
106 | # =item Directories for site-specific add-on files |
107 | # |
108 | # =item Directories for vendor-supplied add-on files |
109 | # |
5f578af9 |
110 | # See Porting/Glossary for the definitions of these names, and see the |
9e80d8f4 |
111 | # INSTALL file for further explanation and some examples. |
dc45a647 |
112 | # |
113 | # In each case, if your previous value was the default, leave it commented |
114 | # out. That way, if you override prefix, all of these will be |
115 | # automatically adjusted. |
693762b4 |
116 | # |
3a6175e1 |
117 | # WARNING: Be especially careful about architecture-dependent and |
dc45a647 |
118 | # version-dependent names, particularly if you reuse this file for |
119 | # different versions of perl. |
693762b4 |
120 | |
121 | !GROK!THIS! |
122 | |
6e1038e0 |
123 | # Set the following variables. Mention them here so metaconfig |
124 | # includes the appropriate code in Configure |
125 | # $bin $scriptdir $privlib $archlib |
126 | # $man1dir $man3dir $html1dir $html3dir |
127 | # $sitebin $sitescript $sitelib $sitearch |
3ea77556 |
128 | # $siteman1 $siteman3 $sitehtml1 $sitehtml3 |
6e1038e0 |
129 | # $vendorbin $vendorscript $vendorlib $vendorarch |
3ea77556 |
130 | # $vendorman1 $vendorman3 $vendorhtml1 $vendorhtml3 |
6e1038e0 |
131 | |
5f578af9 |
132 | for var in \ |
133 | bin scriptdir privlib archlib man1dir man3dir html1dir html3dir \ |
49c10eea |
134 | sitebin sitescript sitelib sitearch \ |
3ea77556 |
135 | siteman1 siteman3 sitehtml1 sitehtml3 \ |
5f578af9 |
136 | vendorbin vendorscript vendorlib vendorarch \ |
3ea77556 |
137 | vendorman1 vendorman3 vendorhtml1 vendorhtml3 |
5f578af9 |
138 | do |
dc45a647 |
139 | |
140 | case "$var" in |
5f578af9 |
141 | |
142 | # Directories for the core perl components |
dc45a647 |
143 | bin) dflt=$prefix/bin ;; |
144 | # The scriptdir test is more complex, but this is probably usually ok. |
c4f23d77 |
145 | scriptdir) |
146 | if $test -d $prefix/script; then |
147 | dflt=$prefix/script |
148 | else |
149 | dflt=$bin |
150 | fi |
151 | ;; |
dc45a647 |
152 | privlib) |
153 | case "$prefix" in |
3a6175e1 |
154 | *perl*) dflt=$prefix/lib/$version ;; |
155 | *) dflt=$prefix/lib/$package/$version ;; |
bfb7748a |
156 | esac |
157 | ;; |
5f578af9 |
158 | archlib) dflt="$privlib/$archname" ;; |
159 | |
160 | man1dir) dflt="$prefix/man/man1" ;; |
161 | man3dir) dflt="$prefix/man/man3" ;; |
162 | # Can we assume all sed's have greedy matching? |
163 | man1ext) dflt=`echo $man1dir | sed -e 's!.*man!!' -e 's!^\.!!'` ;; |
164 | man3ext) dflt=`echo $man3dir | sed -e 's!.*man!!' -e 's!^\.!!'` ;; |
165 | |
166 | # We don't know what to do with these yet. |
167 | html1dir) dflt='' ;; |
168 | htm31dir) dflt='' ;; |
169 | |
9e80d8f4 |
170 | # Directories for site-specific add-on files |
5f578af9 |
171 | sitebin) dflt=$siteprefix/bin ;; |
49c10eea |
172 | sitescript) |
5f578af9 |
173 | if $test -d $siteprefix/script; then |
174 | dflt=$siteprefix/script |
175 | else |
176 | dflt=$sitebin |
177 | fi |
bfb7748a |
178 | ;; |
179 | sitelib) |
5f578af9 |
180 | case "$siteprefix" in |
ba04bae9 |
181 | *perl*) dflt=$prefix/lib/site_perl/$version ;; |
182 | *) dflt=$prefix/lib/$package/site_perl/$version ;; |
dc45a647 |
183 | esac |
184 | ;; |
ba04bae9 |
185 | sitearch) dflt="$sitelib/$archname" ;; |
dc45a647 |
186 | |
3ea77556 |
187 | siteman1) dflt="$siteprefix/man/man1" ;; |
188 | siteman3) dflt="$siteprefix/man/man3" ;; |
5f578af9 |
189 | # We don't know what to do with these yet. |
3ea77556 |
190 | sitehtml1) dflt='' ;; |
191 | sitehtm31dir) dflt='' ;; |
5f578af9 |
192 | |
9e80d8f4 |
193 | # Directories for vendor-supplied add-on files |
194 | # These are all usually empty. |
5f578af9 |
195 | vendor*) |
196 | if test X"$vendorprefix" = X""; then |
197 | dflt='' |
198 | else |
199 | case "$var" in |
200 | vendorbin) dflt=$vendorprefix/bin ;; |
49c10eea |
201 | vendorscript) |
5f578af9 |
202 | if $test -d $vendorprefix/script; then |
203 | dflt=$vendorprefix/script |
204 | else |
205 | dflt=$vendorbin |
206 | fi |
207 | ;; |
208 | vendorlib) |
209 | case "$vendorprefix" in |
ba04bae9 |
210 | *perl*) dflt=$prefix/lib/vendor_perl/$version ;; |
211 | *) dflt=$prefix/lib/$package/vendor_perl/$version ;; |
5f578af9 |
212 | esac |
213 | ;; |
ba04bae9 |
214 | vendorarch) dflt="$vendorlib/$archname" ;; |
dc45a647 |
215 | |
3ea77556 |
216 | vendorman1) dflt="$vendorprefix/man/man1" ;; |
217 | vendorman3) dflt="$vendorprefix/man/man3" ;; |
5f578af9 |
218 | # We don't know what to do with these yet. |
3ea77556 |
219 | vendorhtml1) dflt='' ;; |
220 | vendorhtm3) dflt='' ;; |
5f578af9 |
221 | |
222 | esac # End of vendorprefix != '' |
223 | fi |
224 | ;; |
dc45a647 |
225 | esac |
226 | |
227 | eval val="\$$var" |
228 | if test X"$val" = X"$dflt"; then |
229 | echo "# $var='$dflt'" |
230 | else |
231 | echo "# Preserving custom $var" |
dc45a647 |
232 | echo "$var='$val'" |
233 | fi |
234 | |
235 | done >> Policy.sh |
693762b4 |
236 | |
237 | $spitshell <<!GROK!THIS! >>Policy.sh |
238 | |
dc45a647 |
239 | # Lastly, you may add additional items here. For example, to set the |
693762b4 |
240 | # pager to your local favorite value, uncomment the following line in |
241 | # the original Policy_sh.SH file and re-run sh Policy_sh.SH. |
dc45a647 |
242 | # |
243 | # pager='$pager' |
693762b4 |
244 | # |
245 | # A full Glossary of all the config.sh variables is in the file |
246 | # Porting/Glossary. |
85364e4e |
247 | |
248 | !GROK!THIS! |
3a6175e1 |
249 | |
250 | #Credits: |
251 | # The original design for this Policy.sh file came from Wayne Davison, |
252 | # maintainer of trn. |
253 | # This version for Perl5.004_61 originally written by |
9e80d8f4 |
254 | # Andy Dougherty <doughera@lafayette.edu>. |
3a6175e1 |
255 | # This file may be distributed under the same terms as Perl itself. |