This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Once again syncing after too long an absence
[perl5.git] / pod / Makefile.SH
CommitLineData
4b19af01
CB
1case $CONFIG in
2'')
3 if test -f config.sh; then TOP=.;
4 elif test -f ../config.sh; then TOP=..;
5 elif test -f ../../config.sh; then TOP=../..;
6 elif test -f ../../../config.sh; then TOP=../../..;
7 elif test -f ../../../../config.sh; then TOP=../../../..;
8 else
9 echo "Can't find config.sh."; exit 1
10 fi
11 . $TOP/config.sh
12 ;;
13esac
14: This forces SH files to create target in same directory as SH file.
15: This is so that make depend always knows where to find SH derivatives.
16case "$0" in
17*/*) cd `expr X$0 : 'X\(.*\)/'` ;;
18esac
19
20if test -d pod; then
21 cd pod || exit 1
22fi
23POD=`echo *.pod`
24MAN=`echo $POD|sed 's/\.pod/\.man/g'`
22d4bb9c 25HTML=`echo $POD|sed 's/perltoc.pod//'|sed 's/\.pod/\.html/g'`
4b19af01
CB
26TEX=`echo $POD|sed 's/\.pod/\.tex/g'`
27
28echo "Extracting pod/Makefile (with variable substitutions)"
29: This section of the file will have variable substitutions done on it.
30: Move anything that needs config subs from !NO!SUBS! section to !GROK!THIS!.
31: Protect any dollar signs and backticks that you do not want interpreted
32: by putting a backslash in front. You may delete these comments.
33
34$spitshell >Makefile <<!GROK!THIS!
35# pod/Makefile
36# This file is derived from pod/Makefile.SH. Any changes made here will
37# be lost the next time you run Configure.
38
39POD = $POD
40
41MAN = $MAN
42
43# no perltoc.html
44HTML = $HTML
45
46TEX = $TEX
47
48# The following is used to include the current directory in
49# the dynamic loader path you are building a shared libperl.
50LDLIBPTH = $ldlibpth
51
52!GROK!THIS!
53
54## In the following dollars and backticks do not need the extra backslash.
55$spitshell >>Makefile <<'!NO!SUBS!'
56
57CONVERTERS = pod2html pod2latex pod2man pod2text checkpods \
58 pod2usage podchecker podselect
59
60HTMLROOT = / # Change this to fix cross-references in HTML
61POD2HTML = pod2html \
62 --htmlroot=$(HTMLROOT) \
63 --podroot=.. --podpath=pod:lib:ext:vms \
64 --libpods=perlfunc:perlguts:perlvar:perlrun:perlop
65
66PERL = ../miniperl
0e06870b 67PERLILIB = $(PERL) -I../lib
4b19af01
CB
68REALPERL = ../perl
69
70all: $(CONVERTERS) man
71
72converters: $(CONVERTERS)
73
74regen_pods: perlmodlib.pod toc
75
76buildtoc: buildtoc.PL perl.pod ../MANIFEST
0e06870b
CB
77 $(PERLILIB) buildtoc.PL
78
79perltoc.pod: buildtoc
4b19af01
CB
80
81man: pod2man $(MAN)
82
83html: pod2html $(HTML)
84
85tex: pod2latex $(TEX)
86
87toc: buildtoc
0e06870b 88 $(PERLILIB) buildtoc
4b19af01
CB
89
90.SUFFIXES: .pm .pod
91
92.SUFFIXES: .man
93
94.pm.man: pod2man
95 $(PERL) -I../lib pod2man $*.pm >$*.man
96
97.pod.man: pod2man
98 $(PERL) -I../lib pod2man $*.pod >$*.man
99
100.SUFFIXES: .html
101
102.pm.html: pod2html
103 $(PERL) -I../lib $(POD2HTML) --infile=$*.pm --outfile=$*.html
104
105.pod.html: pod2html
106 $(PERL) -I../lib $(POD2HTML) --infile=$*.pod --outfile=$*.html
107
108.SUFFIXES: .tex
109
110.pm.tex: pod2latex
111 $(PERL) -I../lib pod2latex $*.pm
112
113.pod.tex: pod2latex
114 $(PERL) -I../lib pod2latex $*.pod
115
116clean:
117 rm -f $(MAN)
118 rm -f $(HTML)
119 rm -f $(TEX)
120 rm -f pod2html-*cache
121 rm -f *.aux *.log *.exe
122
123realclean: clean
124 rm -f $(CONVERTERS)
125
126distclean: realclean
127
22d4bb9c
CB
128veryclean: distclean
129 -rm -f *~ *.orig
130
4b19af01
CB
131check: checkpods
132 @echo "checking..."; \
133 $(PERL) -I../lib checkpods $(POD)
134
135# Dependencies.
136pod2latex: pod2latex.PL ../lib/Config.pm
137 $(LDLIBPTH) $(PERL) -I../lib pod2latex.PL
138
139pod2html: pod2html.PL ../lib/Config.pm
140 $(LDLIBPTH) $(PERL) -I ../lib pod2html.PL
141
142pod2man: pod2man.PL ../lib/Config.pm
143 $(LDLIBPTH) $(PERL) -I ../lib pod2man.PL
144
145pod2text: pod2text.PL ../lib/Config.pm
146 $(LDLIBPTH) $(PERL) -I ../lib pod2text.PL
147
148checkpods: checkpods.PL ../lib/Config.pm
149 $(LDLIBPTH) $(PERL) -I ../lib checkpods.PL
150
151pod2usage: pod2usage.PL ../lib/Config.pm
152 $(PERL) -I ../lib pod2usage.PL
153
154podchecker: podchecker.PL ../lib/Config.pm
155 $(PERL) -I ../lib podchecker.PL
156
157podselect: podselect.PL ../lib/Config.pm
158 $(PERL) -I ../lib podselect.PL
159
160perlmodlib.pod: $(PERL) perlmodlib.PL ../mv-if-diff
161 rm -f perlmodlib.tmp
162 $(PERL) -I ../lib perlmodlib.PL
163 sh ../mv-if-diff perlmodlib.tmp perlmodlib.pod
164
165compile: all
166 $(REALPERL) -I../lib ../utils/perlcc -regex 's/$$/.exe/' pod2latex pod2man pod2text checkpods -prog -verbose dcf -log ../compilelog;
167
168!NO!SUBS!