: Prepare dependency lists for Makefile.
dynamic_list=' '
dynamic_ext_re="lib/auto/re/re.$dlext"
-extra_dep=''
+extra_dep='
+ext/Pod-Functions/pm_to_blib: cpan/Pod-Simple/pm_to_blib pod/perlfunc.pod
+'
for f in $dynamic_ext; do
: the dependency named here will never exist
base=`echo "$f" | sed 's/.*\///'`
# Mention $gmake here so it gets probed for by Configure.
+!GROK!THIS!
+
+case "${osname}" in
+linux*|darwin)
+$spitshell >>$Makefile <<!GROK!THIS!
# If you're going to use valgrind and it can't be invoked as plain valgrind
# then you'll need to change this, or override it on the make command line.
VALGRIND ?= valgrind
VG_TEST ?= ./perl -e 1 2>/dev/null
+!GROK!THIS!
+ ;;
+esac
+
+$spitshell >>$Makefile <<!GROK!THIS!
DTRACE = $dtrace
DTRACE_H = $dtrace_h
DTRACE_O = $dtrace_o
# Unicode data files generated by mktables
unidatafiles = lib/unicore/Decomposition.pl lib/unicore/TestProp.pl \
lib/unicore/CombiningClass.pl lib/unicore/Name.pl \
+ lib/unicore/UCD.pl lib/unicore/Name.pm \
lib/unicore/Heavy.pl lib/unicore/mktables.lst
# Directories of Unicode data files generated by mktables
h3 = pad.h patchlevel.h perl.h perlapi.h perly.h pp.h proto.h regcomp.h
h4 = regexp.h scope.h sv.h unixish.h util.h iperlsys.h thread.h
h5 = utf8.h warnings.h mydtrace.h op_reg_common.h l1_char_class_tab.h
-h = $(h1) $(h2) $(h3) $(h4) $(h5)
+h6 = charclass_invlists.h
+h = $(h1) $(h2) $(h3) $(h4) $(h5) $(h6)
c1 = av.c scope.c op.c doop.c doio.c dump.c gv.c hv.c mg.c reentr.c mro.c perl.c
c2 = perly.c pp.c pp_hot.c pp_ctl.c pp_sys.c regcomp.c regexec.c utf8.c sv.c
ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
obj = $(ndt_obj) $(DTRACE_O)
-perltoc_pod_prereqs = extra.pods pod/perl5154delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
+perltoc_pod_prereqs = extra.pods pod/perl5172delta.pod pod/perlapi.pod pod/perlintern.pod pod/perlmodlib.pod pod/perluniprops.pod
generated_pods = pod/perltoc.pod $(perltoc_pod_prereqs)
generated_headers = uudmap.h bitcount.h mg_data.h
;;
esac
$spitshell >>$Makefile <<'!NO!SUBS!'
-perl.exp: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH)
- ./$(MINIPERLEXP) makedef.pl PLATFORM=aix CC_FLAGS="$(OPTIMIZE)" | sort -u | sort -f > perl.exp
+perl.exp: $(MINIPERLEXP) makedef.pl $(CONFIGPM) $(SYM) $(SYMH)
+ ./$(MINIPERLEXP) makedef.pl --sort-fold PLATFORM=aix CC_FLAGS="$(OPTIMIZE)" > perl.exp
!NO!SUBS!
;;
$spitshell >>$Makefile <<'!NO!SUBS!'
MINIPERLEXP = miniperl
-perl5.def: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH) miniperl.map
+perl5.def: $(MINIPERLEXP) makedef.pl $(CONFIGPM) $(SYM) $(SYMH) miniperl.map
./$(MINIPERLEXP) makedef.pl PLATFORM=os2 -DPERL_DLL=$(PERL_DLL) CC_FLAGS="$(OPTIMIZE)" > perl5.def
!NO!SUBS!
quant$(PERL_EXE): $& perlmain$(OBJ_EXT) $(LIBPERL) $(static_ext) ext.libs $(PERLEXPORT)
$(SHRPENV) $(LDLIBPTH) quantify $(CC) -o quantperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs)
-# Valgrind perl (currently Linux only)
+!NO!SUBS!
+
+case "${osname}${osvers}" in
+linux*|darwin*)
+ $spitshell >>$Makefile <<'!NO!SUBS!'
+# Valgrind perl (currently Linux, Darwin only)
perl.valgrind.config: config.sh
@echo "To build perl.valgrind you must Configure -Doptimize=-g -Uusemymalloc, checking..."
@grep "^usemymalloc='n'" config.sh >/dev/null || exit 1
@echo "And of course you have to have valgrind..."
$(VALGRIND) $(VG_TEST) || exit 1
+!NO!SUBS!
+ ;;
+esac
+
+$spitshell >>$Makefile <<'!NO!SUBS!'
# Third Degree Perl (Tru64 only)
# But also this ensures that all extensions are built before we try to scan
# them, which picks up Devel::PPPort's documentation.
pod/perltoc.pod: $(perltoc_pod_prereqs) $(PERL_EXE) $(ext) pod/buildtoc
- $(RUN_PERL) -f -Ilib pod/buildtoc --build-toc -q
+ $(RUN_PERL) -f -Ilib pod/buildtoc -q
pod/perlapi.pod: pod/perlintern.pod
pod/perlmodlib.pod: $(MINIPERL_EXE) pod/perlmodlib.PL MANIFEST
$(MINIPERL) $(Icwd) pod/perlmodlib.PL -q
-pod/perl5154delta.pod: pod/perldelta.pod
- $(LNS) perldelta.pod pod/perl5154delta.pod
+pod/perl5172delta.pod: pod/perldelta.pod
+ $(LNS) perldelta.pod pod/perl5172delta.pod
extra.pods: $(MINIPERL_EXE)
-@test ! -f extra.pods || rm -f `cat extra.pods`
.PHONY: install install-strip install-all install-verbose install-silent \
no-install install.perl install.man install.html
-install-strip:
+install_strip install-strip:
$(MAKE) STRIPFLAGS=-s install DESTDIR="$(DESTDIR)"
-install install-all:
+install install_all install-all:
$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) DESTDIR="$(DESTDIR)"
-install-verbose:
+install_verbose install-verbose:
$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-V DESTDIR="$(DESTDIR)"
-install-silent:
+install_silent install-silent:
$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-S DESTDIR="$(DESTDIR)"
-no-install:
+no_install no-install:
$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-n DESTDIR="$(DESTDIR)"
# Set this to an empty string to avoid an attempt of rebuild before install
--htmlroot=$(privlib)/html \
--splithead=pod/perlipc \
--splititem=pod/perlfunc \
- --libpods=perlfunc:perlguts:perlvar:perlrun:perlop \
--ignore=Porting/Maintainers.pm,Porting/pumpkin.pod,Porting/repository.pod \
--verbose
.PHONY: regen_perly
-run_byacc:
+run_byacc run-byacc:
@echo "run_byacc is obsolete; try 'make regen_perly' instead"
# this outputs perly.h, perly.act and perly.tab
-regen_perly:
+regen_perly regen-perly:
perl regen_perly.pl
# We don't want to regenerate perly.c and perly.h, but they might
# opcode.pl: opcode.h opnames.h pp_proto.h
# regcomp.pl: regnodes.h
# warnings.pl: warnings.h lib/warnings.pm
+# feature.pl: feature.h lib/feature.pm
# The correct versions should be already supplied with the perl kit,
# in case you don't have perl available.
# To force them to be regenerated, run
# (make regen_headers is kept for backwards compatibility)
AUTOGEN_FILES = opcode.h opnames.h pp_proto.h proto.h embed.h embedvar.h \
- perlapi.h perlapi.c regnodes.h warnings.h lib/warnings.pm
+ perlapi.h perlapi.c regnodes.h warnings.h lib/warnings.pm \
+ lib/feature.pm feature.h
.PHONY: regen_headers regen_all
-perl regen.pl
-perl regen/uconfig_h.pl
-regen_headers: FORCE
+regen_headers regen-headers: FORCE
-perl regen.pl -v
-perl regen/uconfig_h.pl -v
-regen_meta: META.yml
+regen_meta regen-meta: META.yml
META.yml: FORCE
PATH="`pwd`:${PATH}" PERL5LIB="`pwd`/lib" $(RUN_PERL) -Ilib Porting/makemeta
-regen_all: regen regen_meta
+regen_all regen-all: regen regen_meta
.PHONY: manisort manicheck
-rmdir .depending
-@test -f extra.pods && rm -f `cat extra.pods`
-@test -f vms/README_vms.pod && rm -f vms/README_vms.pod
- -rm -f perl.exp ext.libs $(generated_pods) uni.data opmini.o perlmini.o
+ -rm -f perl.exp ext.libs $(generated_pods) uni.data opmini.o perlmini.o pod/roffitall
-rm -f perl.export perl.dll perl.libexp perl.map perl.def
-rm -f perl.loadmap miniperl.loadmap perl.prelmap miniperl.prelmap
-rm -f perl.third lib*.so.perl.third perl.3log t/perl.third t/perl.3log
rm -fr lib/B
rm -fr lib/CPAN lib/CPANPLUS
rm -fr lib/ExtUtils/CBuilder
+ rm -f pod2htmd.tmp
+ rm -rf pod/perlfunc pod/perlipc
-rmdir cpan/CPANPLUS-Dist-Build/t/dummy-cpanplus cpan/CPANPLUS/t/dummy-cpanplus cpan/CPANPLUS/t/dummy-localmirror
-rmdir ext/B/lib
-rmdir lib/Archive/Tar lib/Archive lib/Attribute
test_prep_pre: preplibrary utilities $(nonxs_ext)
-test_prep: test_prep_pre $(MINIPERL_EXE) $(unidatafiles) $(PERL_EXE) \
+test_prep test-prep: test_prep_pre $(MINIPERL_EXE) $(unidatafiles) $(PERL_EXE) \
$(dynamic_ext) $(TEST_PERL_DLL) runtests x2p/s2p x2p/find2perl \
$(generated_pods)
cd t && (rm -f $(PERL_EXE); $(LNS) ../$(PERL_EXE) $(PERL_EXE))
test check: test_prep
$(RUN_TESTS) choose
-test_tty: test_prep
+test_tty test-tty: test_prep
$(RUN_TESTS) tty
-test_notty: test_prep
+test_notty test-notty: test_prep
$(RUN_TESTS) no-tty
utest ucheck test.utf8 check.utf8: test_prep
coretest: test_prep
TEST_ARGS=-core $(RUN_TESTS) choose
-test-prep: test_prep
-
-test-tty: test_tty
-
-test-notty: test_notty
-
# Torture testing
test.torture torturetest: test_prep
utest.utf16 ucheck.utf16: test_prep
TEST_ARGS="-utf8 -utf16" $(RUN_TESTS) choose
+!NO!SUBS!
+
+case "${osname}${osvers}" in
+linux*|darwin*)
+ $spitshell >>$Makefile <<'!NO!SUBS!'
# Targets for valgrind testing:
test_prep.valgrind: test_prep perl.valgrind
test_notty.valgrind: test_prep.valgrind perl.valgrind.config
PERL_VALGRIND=1 $(RUN_TESTS) no-tty
+!NO!SUBS!
+ ;;
+esac
+
+$spitshell >>$Makefile <<'!NO!SUBS!'
# Targets for Third Degree testing.
# Test via harness
-test_harness: test_prep
+test_harness test-harness: test_prep
TESTFILE=harness $(RUN_TESTS) choose
test_harness_notty: test_prep
HARNESS_NOTTY=1 TESTFILE=harness $(RUN_TESTS) choose
-test-reonly: test_prep_reonly
+test_reonly test-reonly: test_prep_reonly
TEST_ARGS='-re \bre\/' TESTFILE=harness $(RUN_TESTS) choose
# Porting tests (well-formedness of pod, manifest, etc)
-test_porting: test_prep
+test_porting test-porting: test_prep
cd t && $(RUN_PERL) harness porting/*.t ../lib/diagnostics.t
# Handy way to run perlbug -ok without having to install and run the