X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/a4e744802906bbf8435494e7f5ab1823213b2448..7d3803573bc4359bd154504dfae342215fdcf8ae:/Makefile.micro diff --git a/Makefile.micro b/Makefile.micro index 3528b93..dedf183 100644 --- a/Makefile.micro +++ b/Makefile.micro @@ -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 \ + hv.h hv_func.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 \ - proto.h reentr.h regexp.h scope.h sv.h \ - thread.h unixish.h utf8.h util.h uudmap.h warnings.h + pp_proto.h proto.h reentr.h regexp.h scope.h sv.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,18 +79,21 @@ 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 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) gv.c -umro$(_O): $(HE) mro.c - $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mro.c +umro$(_O): $(HE) mro_core.c + $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mro_core.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!