shextract = Makefile cflags config.h makeaperl makedepend \
makedir myconfig writemain pod/Makefile
-# Files to be built with variable substitution after miniperl is
-# available. Dependencies handled manually below (for now).
-
-pl = pod/pod2html.PL pod/pod2man.PL pod/pod2text.PL \
- pod/pod2usage.PL pod/podchecker.PL pod/podselect.PL
-
-plextract = pod/pod2html pod/pod2man pod/pod2text \
- pod/pod2usage pod/podchecker pod/podselect
-
-addedbyconf = UU $(shextract) $(plextract) pstruct
+addedbyconf = UU $(shextract) pstruct
# Unicode data files generated by mktables
unidatafiles = lib/unicore/Decomposition.pl lib/unicore/TestProp.pl \
# make sure that we recompile perl.c if the git version changes
perl$(OBJ_EXT): git_version.h
-translators: $(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) FORCE
- @echo " "; echo " Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all
-
!NO!SUBS!
+# Making utilities and translators require Cwd. If we have dynamic
+# loading, we only need miniperl and Cwd.$dlext. If we have static
+# loading, we need to build perl first.
+case "$usedl" in
+define)
+ util_deps='$(MINIPERL_EXE) $(CONFIGPM) lib/auto/Cwd/Cwd$(DLSUFFIX) FORCE'
+ x2p_deps='$(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) FORCE'
+ ;;
+*) util_deps='$(PERL_EXE) $(CONFIGPM) FORCE'
+ x2p_deps='$(PERL_EXE) $(CONFIGPM) FORCE'
+ ;;
+esac
+
$spitshell >>$Makefile <<!GROK!THIS!
-utilities: \$(MINIPERL_EXE) \$(CONFIGPM) \$(plextract) FORCE lib/auto/Cwd/Cwd.$dlext
+translators: $x2p_deps
+ @echo " "; echo " Making x2p stuff"; cd x2p; \$(LDLIBPTH) \$(MAKE) all
+
+utilities: $util_deps
@echo " "; echo " Making utilities"; cd utils; \$(LDLIBPTH) \$(MAKE) all
!GROK!THIS!
+
$spitshell >>$Makefile <<'!NO!SUBS!'
# This is now done by installman only if you actually want the man pages.
@-rm -f $@
cp ext/re/re.pm lib/re.pm
-$(plextract): $(MINIPERL_EXE) $(CONFIGPM) x2p/s2p $(dynamic_ext)
- @-rm -f $@
- $(MINIPERL) $@.PL
-
x2p/s2p: $(MINIPERL_EXE) $(CONFIGPM) $(dynamic_ext) x2p/s2p.PL
cd x2p; $(LDLIBPTH) $(MAKE) s2p
-rmdir lib/Package lib/Params
-rmdir lib/Pod/Perldoc lib/Pod/Simple lib/Pod/Text
-rmdir lib/Sys lib/Scalar/Util lib/Scalar
- -rmdir lib/Term/UI lib/Thread
+ -rmdir lib/Term/UI lib/Thread lib/Tie/Hash
-rmdir lib/Test/Builder/Tester lib/Test/Builder lib/Test
-rmdir lib/Unicode/Collate
-rmdir lib/XS/APItest lib/XS
nokfilenack: utilities
$(RUN_PERL) -Ilib utils/perlbug -nok -s '(UNINSTALLED)' -F perl.nok -A
-.PHONY: clist hlist shlist pllist
+.PHONY: clist hlist shlist
clist: $(c)
echo $(c) | tr ' ' $(TRNL) >.clist
shlist: $(sh)
echo $(sh) | tr ' ' $(TRNL) >.shlist
-pllist: $(pl)
- echo $(pl) | tr ' ' $(TRNL) >.pllist
-
Makefile: Makefile.SH ./config.sh
$(SHELL) Makefile.SH