This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
regcomp.c: Change and comment a problematic #define
[perl5.git] / Makefile.micro
index 8611332..8ce48b4 100644 (file)
@@ -1,6 +1,7 @@
 LD = $(CC)
 CCFLAGS = -c
-DEFINES = -DPERL_CORE -DPERL_MICRO -DSTANDARD_C -DPERL_USE_SAFE_PUTENV
+DEFINES = -DPERL_CORE -DPERL_MICRO -DSTANDARD_C -DPERL_USE_SAFE_PUTENV \
+         -DNO_MATHOMS
 OPTIMIZE = 
 CFLAGS = $(DEFINES) $(OPTIMIZE)
 LDFLAGS = 
@@ -21,21 +22,22 @@ O = uav$(_O) udeb$(_O) udoio$(_O) udoop$(_O) udump$(_O) \
        uregcomp$(_O) uregexec$(_O) urun$(_O) \
        uscope$(_O) usv$(_O) utaint$(_O) utoke$(_O) \
        unumeric$(_O) ulocale$(_O) umathoms$(_O) \
-       uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O)
+       uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O) ukeywords$(_O)
 
 microperl:     $(O)
        $(LD) -o $@ $(O) $(LDFLAGS) $(LIBS)
 
+generated_headers = uuudmap.h ubitcount.h umg_data.h
 H = av.h uconfig.h cop.h cv.h embed.h embedvar.h form.h gv.h handy.h \
        hv.h intrpvar.h iperlsys.h mg.h op.h opcode.h opnames.h pad.h \
        patchlevel.h perl.h perlsdio.h perlvars.h perly.h pp.h \
        pp_proto.h proto.h reentr.h regexp.h scope.h sv.h \
-       thread.h unixish.h utf8.h util.h uudmap.h warnings.h
+       thread.h unixish.h utf8.h util.h warnings.h $(generated_headers)
 
 HE = $(H) EXTERN.h
 
 clean:
-       -rm -f $(O) microperl generate_uudmap$(_X) uudmap.h
+       -rm -f $(O) microperl ugenerate_uudmap$(_X) $(generated_headers)
 
 distclean:     clean
 
@@ -44,11 +46,14 @@ distclean:  clean
 # Cannot use $$ in the command line itself, so using var expansion instead.
 Config = '$$Config{$$1}'
 patch_uconfig:
-       $(PERL) -MConfig -pi -e "s/^((?:short|int|long(?:dbl|long)?|ptr|double|[iun]v|u?quad|[iu]\d+|fpos|lseek)(?:size|type)|byteorder|d_quad|quadkind|use64.+)=.*/\\1='"$(Config)"'/g" uconfig.shx
+       $(PERL) -MConfig -pi -e "s/^((?:short|int|long(?:dbl|long)?|ptr|double|[iun]v|u?quad|[iu]\d+|fpos|lseek)(?:size|type)|byteorder|d_quad|quadkind|use64.+)=.*/\\1='"$(Config)"'/g" uconfig.sh
 
-regen_uconfig uconfig.h: uconfig.sh
+regen_uconfig: uconfig.sh config_h.SH
        $(ENV) CONFIG_SH=uconfig.sh CONFIG_H=uconfig.h sh ./config_h.SH
 
+regen_uconfig64: uconfig64.sh config_h.SH
+       $(ENV) CONFIG_SH=uconfig64.sh CONFIG_H=uconfig.h sh ./config_h.SH
+
 # Do not regenerate perly.c and perly.h.
 
 perly.c: perly.y
@@ -74,7 +79,7 @@ udoop$(_O):   $(HE) doop.c
 udump$(_O):    $(HE) dump.c regcomp.h regnodes.h
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) dump.c
 
-uglobals$(_O): $(H) globals.c INTERN.h perlapi.h
+uglobals$(_O): $(H) globals.c INTERN.h perlapi.h $(generated_headers)
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) globals.c
 
 ugv$(_O):      $(HE) gv.c
@@ -86,6 +91,9 @@ umro$(_O):    $(HE) mro.c
 uhv$(_O):      $(HE) hv.c
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) hv.c
 
+ukeywords$(_O):        $(HE) keywords.c
+       $(CC) $(CCFLAGS) -o $@ $(CFLAGS) keywords.c
+
 umg$(_O):      $(HE) mg.c
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mg.c
 
@@ -170,13 +178,19 @@ uutil$(_O):       $(HE) util.c
 uperlapi$(_O): $(HE) perlapi.c perlapi.h
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) perlapi.c
 
-uudmap.h: generate_uudmap$(_X)
-       $(RUN) ./generate_uudmap$(_X) >uudmap.h
+uuudmap.h umg_data.h: ubitcount.h
 
-generate_uudmap$(_O): generate_uudmap.c
+ubitcount.h: ugenerate_uudmap$(_X)
+       $(RUN) ./ugenerate_uudmap$(_X) $(generated_headers)
+
+ugenerate_uudmap$(_O): generate_uudmap.c
        $(CC) $(CCFLAGS) -o $@ $(CFLAGS) generate_uudmap.c
 
-generate_uudmap$(_X): generate_uudmap$(_O)
-       $(LD) -o generate_uudmap $(LDFLAGS) generate_uudmap$(_O) $(LIBS)
+ugenerate_uudmap$(_X): ugenerate_uudmap$(_O)
+       $(LD) -o ugenerate_uudmap $(LDFLAGS) ugenerate_uudmap$(_O) $(LIBS)
+
+microtest: microperl
+       - cd t && (rm -f perl; ln -s ../microperl perl) \
+         && ./perl TEST base/*.t cmd/*.t
 
 # That's it, folks!