First step to generating Unicode files for the regexp engine at build
Nicholas Clark [Sun, 30 May 2004 20:34:07 +0000 (20:34 +0000)]
time - targets in the Makefile

p4raw-id: //depot/perl@22872

Makefile.SH

index 2cd4173..90a3934 100644 (file)
@@ -317,6 +317,14 @@ plextract = pod/pod2html pod/pod2latex pod/pod2man pod/pod2text \
 
 addedbyconf = UU $(shextract) $(plextract) lib/lib.pm pstruct
 
+# Unicode data files generated by mktables
+unidatafiles = lib/unicore/Canonical.pl lib/unicore/Exact.pl \
+       lib/unicore/Properties lib/unicore/Decomposition.pl \
+       lib/unicore/CombiningClass.pl lib/unicore/Name.pl
+
+# Directories of Unicode data files generated by mktables
+unidatadirs = lib/unicore/To lib/unicore/lib
+
 h1 = EXTERN.h INTERN.h XSUB.h av.h config.h cop.h cv.h dosish.h
 h2 = embed.h form.h gv.h handy.h hv.h keywords.h mg.h op.h opcode.h
 h3 = pad.h patchlevel.h perl.h perlapi.h perly.h pp.h proto.h regcomp.h
@@ -348,7 +356,7 @@ lintflags = -hbvxac
 .c.s:
        $(CCCMDSRC) -S $*.c
 
-all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
+all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make
        @echo " ";
        @echo " Everything is up to date. Type '$(MAKE) test' to run test suite."
 
@@ -750,6 +758,9 @@ lib/lib.pm: miniperl$(EXE_EXT) lib/Config.pm
        @-rm -f $@
        $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL
 
+$(unidatafiles): miniperl$(EXE_EXT) lib/Config.pm lib/unicore/mktables
+       cd lib/unicore && ../../miniperl -I../../lib mktables
+
 extra.pods: miniperl$(EXE_EXT)
        -@test -f extra.pods && rm -f `cat extra.pods`
        -@rm -f extra.pods
@@ -986,6 +997,7 @@ _cleaner2:
        rm -rf $(addedbyconf)
        rm -f $(FIRSTMAKEFILE) $(FIRSTMAKEFILE).old makefile.old
        rm -f $(private) lib/Config.pod
+       echo TODO rm -rf $(unidatafiles) $(unidatadirs)
        rm -rf lib/auto
        rm -f lib/.exists lib/*/.exists lib/*/*/.exists
        rm -f h2ph.man pstruct
@@ -1153,10 +1165,10 @@ test.taintwarn: test_prep
 # is crashing.
 minitest: miniperl$(EXE_EXT) lib/re.pm
        -@test -f lib/lib.pm && test -f lib/Config.pm || \
-         $(MAKE) lib/Config.pm lib/lib.pm
+         $(MAKE) lib/Config.pm lib/lib.pm $(unidatafiles)
        @echo " "
        @echo "You may see some irrelevant test failures if you have been unable"
-       @echo "to build lib/Config.pm or lib/lib.pm."
+       @echo "to build lib/Config.pm, lib/lib.pm or the Unicode data files."
        @echo " "
        - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \
                && $(LDLIBPTH) ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty