X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/12ae5dfcd4fd6f54af051c41b2e122532efce8d3..96b96e0098295f23da078cabf7dcf4850b59a331:/Makefile.micro diff --git a/Makefile.micro b/Makefile.micro index 1ac87b4..735215b 100644 --- a/Makefile.micro +++ b/Makefile.micro @@ -1,29 +1,31 @@ -CC = cc LD = $(CC) -DEFINES = -DPERL_CORE -DPERL_MICRO -CFLAGS = $(DEFINES) +DEFINES = -DPERL_CORE -DPERL_MICRO -DSTANDARD_C -DPERL_USE_SAFE_PUTENV +OPTIMIZE = +CFLAGS = $(DEFINES) $(OPTIMIZE) LIBS = -lm _O = .o +ENV = env all: microperl O = uav$(_O) udeb$(_O) udoio$(_O) udoop$(_O) udump$(_O) \ uglobals$(_O) ugv$(_O) uhv$(_O) \ - umg$(_O) uperlmain$(_O) uop$(_O) \ - uperl$(_O) uperlio$(_O) uperly$(_O) upp$(_O) \ - upp_ctl$(_O) upp_hot$(_O) upp_sys$(_O) \ + umg$(_O) uperlmain$(_O) uop$(_O) ureentr$(_O) \ + upad$(_O) uperl$(_O) uperlio$(_O) uperly$(_O) upp$(_O) \ + upp_ctl$(_O) upp_hot$(_O) upp_sys$(_O) upp_pack$(_O) upp_sort$(_O) \ uregcomp$(_O) uregexec$(_O) urun$(_O) \ uscope$(_O) usv$(_O) utaint$(_O) utoke$(_O) \ - uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O) + unumeric$(_O) ulocale$(_O) \ + uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O) uxsutils$(_O) microperl: $(O) $(LD) -o $@ $(O) $(LIBS) 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 patchlevel.h \ - perl.h perlsdio.h perlvars.h perly.h pp.h pp_proto.h proto.h \ - regexp.h scope.h sv.h thrdvar.h thread.h unixish.h utf8.h util.h \ - warnings.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 thrdvar.h \ + thread.h unixish.h utf8.h util.h warnings.h HE = $(H) EXTERN.h @@ -31,10 +33,21 @@ clean: -rm -f $(O) microperl distclean: clean - -rm -f uconfig.h -uconfig.h: uconfig.sh config_h.SH - CONFIG_SH=uconfig.sh CONFIG_H=uconfig.h sh ./config_h.SH +# The microconfiguration. + +regen_uconfig: + $(ENV) CONFIG_SH=uconfig.sh CONFIG_H=uconfig.h sh ./config_h.SH + +# Do not regenerate perly.c and perly.h. + +perly.c: perly.y + -@echo perly.c is uptodate + +perly.h: perly.y + -@echo perly.h is uptodate + +# The microperl objects. uav$(_O): $(HE) av.c $(CC) -c -o $@ $(CFLAGS) av.c @@ -67,7 +80,13 @@ uperlmain$(_O): $(HE) miniperlmain.c $(CC) -c -o $@ $(CFLAGS) miniperlmain.c uop$(_O): $(HE) op.c keywords.h - $(CC) -c -o $@ $(CFLAGS) op.c + $(CC) -c -o $@ $(CFLAGS) -DPERL_EXTERNAL_GLOB op.c + +ureentr$(_O): $(HE) reentr.c + $(CC) -c -o $@ $(CFLAGS) reentr.c + +upad$(_O): $(HE) pad.c + $(CC) -c -o $@ $(CFLAGS) pad.c uperl$(_O): $(HE) perl.c $(CC) -c -o $@ $(CFLAGS) perl.c @@ -90,6 +109,12 @@ upp_hot$(_O): $(HE) pp_hot.c upp_sys$(_O): $(HE) pp_sys.c $(CC) -c -o $@ $(CFLAGS) pp_sys.c +upp_pack$(_O): $(HE) pp_pack.c + $(CC) -c -o $@ $(CFLAGS) pp_pack.c + +upp_sort$(_O): $(HE) pp_sort.c + $(CC) -c -o $@ $(CFLAGS) pp_sort.c + uregcomp$(_O): $(HE) regcomp.c regcomp.h regnodes.h INTERN.h $(CC) -c -o $@ $(CFLAGS) regcomp.c @@ -111,7 +136,13 @@ utaint$(_O): $(HE) taint.c utoke$(_O): $(HE) toke.c keywords.h $(CC) -c -o $@ $(CFLAGS) toke.c -uuniversal$(_O): $(HE) universal.c objXSUB.h XSUB.h +ulocale$(_O): $(HE) locale.c + $(CC) -c -o $@ $(CFLAGS) locale.c + +unumeric$(_O): $(HE) numeric.c + $(CC) -c -o $@ $(CFLAGS) numeric.c + +uuniversal$(_O): $(HE) universal.c XSUB.h $(CC) -c -o $@ $(CFLAGS) universal.c uutf8$(_O): $(HE) utf8.c @@ -123,3 +154,7 @@ uutil$(_O): $(HE) util.c uperlapi$(_O): $(HE) perlapi.c perlapi.h $(CC) -c -o $@ $(CFLAGS) perlapi.c +uxsutils$(_O): $(HE) xsutils.c + $(CC) -c -o $@ $(CFLAGS) xsutils.c + +# That's it, folks!