1 *** ./Makefile.SH Wed Aug 4 12:16:15 2004
2 --- ./Makefile.SH.patch Wed Aug 4 14:03:42 2004
5 # INSTALL file, under "Building a shared perl library".
6 # If there is no pre-existing $libperl, we don't need
7 # to do anything further.
8 ! if test -f $archlib/CORE/$libperl; then
10 ! cat <<'EOT' > preload
14 ! test -r $lib && export LD_PRELOAD="$lib $LD_PRELOAD"
18 ! ldlibpth="$ldlibpth `pwd`/preload `pwd`/$libperl"
21 os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth"
24 # INSTALL file, under "Building a shared perl library".
25 # If there is no pre-existing $libperl, we don't need
26 # to do anything further.
27 ! echo linux libraries overwritten by cross-compile patches
29 os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth"
36 ! all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
38 ! @echo " Everything is up to date. Type '$(MAKE) test' to run test suite."
40 .PHONY: all compile translators utilities
46 ! #all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
48 ! # @echo " Everything is up to date. Type '$(MAKE) test' to run test suite."
50 ! all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT)
51 ! mv miniperl miniperl-cross
52 ! ln -s hostperl miniperl
54 ! more: extra.pods $(private) $(public)
56 ! more2: $(dynamic_ext)
62 .PHONY: all compile translators utilities
66 cd x2p; $(MAKE) compile;
67 cd pod; $(MAKE) compile;
69 ! translators: miniperl$(EXE_EXT) lib/Config.pm FORCE
70 @echo " "; echo " Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all
72 ! utilities: miniperl$(EXE_EXT) lib/Config.pm $(plextract) lib/lib.pm FORCE
73 @echo " "; echo " Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all
77 cd x2p; $(MAKE) compile;
78 cd pod; $(MAKE) compile;
80 ! translators: lib/Config.pm FORCE
81 @echo " "; echo " Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all
83 ! utilities: lib/Config.pm $(plextract) lib/lib.pm FORCE
84 @echo " "; echo " Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all
89 $(CC) -o miniperl $(CLDFLAGS) \
90 `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
91 miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
92 ! $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
97 $(CC) -o miniperl $(CLDFLAGS) \
98 `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
99 miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
100 ! # $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
106 miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT)
107 $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
108 miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
109 ! $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
114 miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT)
115 $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
116 miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs)
117 ! # $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
123 # We need to autosplit in two steps because VOS can't handle so many args
126 ! preplibrary: miniperl$(EXE_EXT) lib/Config.pm lib/lib.pm $(PREPLIBRARY_LIBPERL)
127 @sh ./makedir lib/auto
128 @echo " AutoSplitting perl library"
129 $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
131 # We need to autosplit in two steps because VOS can't handle so many args
134 ! preplibrary: lib/Config.pm lib/lib.pm $(PREPLIBRARY_LIBPERL)
135 @sh ./makedir lib/auto
136 @echo " AutoSplitting perl library"
137 $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \
140 # Take care to avoid modifying lib/Config.pm without reason
141 # (If trying to create a new port and having problems with the configpm script,
142 # try 'make minitest' and/or commenting out the tests at the end of configpm.)
143 ! lib/Config.pm: config.sh miniperl$(EXE_EXT) configpm Porting/Glossary
144 $(LDLIBPTH) ./miniperl -Ilib configpm configpm.tmp
145 sh mv-if-diff configpm.tmp $@
147 ! lib/ExtUtils/Miniperl.pm: miniperlmain.c miniperl$(EXE_EXT) minimod.pl lib/Config.pm
148 $(LDLIBPTH) ./miniperl minimod.pl > minimod.tmp
149 sh mv-if-diff minimod.tmp $@
150 -touch lib/ExtUtils/Miniperl.pm
152 # Take care to avoid modifying lib/Config.pm without reason
153 # (If trying to create a new port and having problems with the configpm script,
154 # try 'make minitest' and/or commenting out the tests at the end of configpm.)
155 ! lib/Config.pm: config.sh configpm Porting/Glossary
156 $(LDLIBPTH) ./miniperl -Ilib configpm configpm.tmp
157 sh mv-if-diff configpm.tmp $@
159 ! lib/ExtUtils/Miniperl.pm: miniperlmain.c minimod.pl lib/Config.pm
160 $(LDLIBPTH) ./miniperl minimod.pl > minimod.tmp
161 sh mv-if-diff minimod.tmp $@
162 -touch lib/ExtUtils/Miniperl.pm
165 lib/re.pm: ext/re/re.pm
166 cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
168 ! $(plextract): miniperl$(EXE_EXT) lib/Config.pm x2p/s2p
170 $(LDLIBPTH) ./miniperl -Ilib $@.PL
172 ! x2p/s2p: miniperl$(EXE_EXT) lib/Config.pm x2p/s2p.PL
173 cd x2p; $(LDLIBPTH) $(MAKE) s2p
175 ! lib/lib.pm: miniperl$(EXE_EXT) lib/Config.pm
177 $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
179 ! extra.pods: miniperl$(EXE_EXT)
180 -@test -f extra.pods && rm -f `cat extra.pods`
182 -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
184 lib/re.pm: ext/re/re.pm
185 cp ext/re/re.pm ext/re/re.tmp && sh mv-if-diff ext/re/re.tmp lib/re.pm
187 ! $(plextract): lib/Config.pm x2p/s2p
189 $(LDLIBPTH) ./miniperl -Ilib $@.PL
191 ! x2p/s2p: lib/Config.pm x2p/s2p.PL
192 cd x2p; $(LDLIBPTH) $(MAKE) s2p
194 ! lib/lib.pm: lib/Config.pm
196 $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
199 -@test -f extra.pods && rm -f `cat extra.pods`
201 -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \
204 INSTALL_DEPENDENCE = all
206 install.perl: $(INSTALL_DEPENDENCE) installperl
207 ! if [ -n "$(COMPILE)" ]; \
209 ! cd utils; $(MAKE) compile; \
210 ! cd ../x2p; $(MAKE) compile; \
211 ! cd ../pod; $(MAKE) compile; \
214 ! $(LDLIBPTH) ./perl installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
215 ! $(MAKE) extras.install
217 ! install.man: all installman
218 ! $(LDLIBPTH) ./perl installman --destdir=$(DESTDIR) $(INSTALLFLAGS)
220 # XXX Experimental. Hardwired values, but useful for testing.
221 # Eventually Configure could ask for some of these values.
223 INSTALL_DEPENDENCE = all
225 install.perl: $(INSTALL_DEPENDENCE) installperl
226 ! hostperl -Ifake_config_library -MConfig installperl $(INSTALLFLAGS) $(STRIPFLAGS)
228 # XXX Experimental. Hardwired values, but useful for testing.
229 # Eventually Configure could ask for some of these values.
233 # DynaLoader may be needed for extensions that use Makefile.PL.
235 ! $(DYNALOADER): miniperl$(EXE_EXT) preplibrary FORCE
236 @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
238 ! d_dummy $(dynamic_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
239 @$(LDLIBPTH) sh ext/util/make_ext dynamic $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
241 ! s_dummy $(static_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
242 @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
244 ! n_dummy $(nonxs_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE
245 @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
247 .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \
250 # DynaLoader may be needed for extensions that use Makefile.PL.
252 ! $(DYNALOADER): preplibrary FORCE
253 @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
255 ! d_dummy $(dynamic_ext): preplibrary $(DYNALOADER) FORCE
256 @$(LDLIBPTH) sh ext/util/make_ext dynamic $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
258 ! s_dummy $(static_ext): preplibrary $(DYNALOADER) FORCE
259 @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
261 ! n_dummy $(nonxs_ext): preplibrary $(DYNALOADER) FORCE
262 @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL)
264 .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \
268 test_prep_pre: preplibrary utilities $(nonxs_ext)
270 ! test_prep: test_prep_pre miniperl$(EXE_EXT) perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL)
271 PERL=./perl $(MAKE) _test_prep
276 test_prep_pre: preplibrary utilities $(nonxs_ext)
278 ! test_prep: test_prep_pre perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL)
279 PERL=./perl $(MAKE) _test_prep
285 # Can't depend on lib/Config.pm because that might be where miniperl
287 ! minitest: miniperl$(EXE_EXT) lib/re.pm
288 -@test -f lib/lib.pm && test -f lib/Config.pm || \
289 $(MAKE) lib/Config.pm lib/lib.pm
293 # Can't depend on lib/Config.pm because that might be where miniperl
295 ! minitest: lib/re.pm
296 -@test -f lib/lib.pm && test -f lib/Config.pm || \
297 $(MAKE) lib/Config.pm lib/lib.pm