3 DEFINES = -DPERL_CORE -DPERL_MICRO -DSTANDARD_C -DPERL_USE_SAFE_PUTENV
5 CFLAGS = $(DEFINES) $(OPTIMIZE)
16 O = uav$(_O) udeb$(_O) udoio$(_O) udoop$(_O) udump$(_O) \
17 uglobals$(_O) ugv$(_O) uhv$(_O) umro$(_O)\
18 umg$(_O) uperlmain$(_O) uop$(_O) ureentr$(_O) \
19 upad$(_O) uperl$(_O) uperlio$(_O) uperly$(_O) upp$(_O) \
20 upp_ctl$(_O) upp_hot$(_O) upp_sys$(_O) upp_pack$(_O) upp_sort$(_O) \
21 uregcomp$(_O) uregexec$(_O) urun$(_O) \
22 uscope$(_O) usv$(_O) utaint$(_O) utoke$(_O) \
23 unumeric$(_O) ulocale$(_O) umathoms$(_O) \
24 uuniversal$(_O) uutf8$(_O) uutil$(_O) uperlapi$(_O)
27 $(LD) -o $@ $(O) $(LDFLAGS) $(LIBS)
29 H = av.h uconfig.h cop.h cv.h embed.h embedvar.h form.h gv.h handy.h \
30 hv.h intrpvar.h iperlsys.h mg.h op.h opcode.h opnames.h pad.h \
31 patchlevel.h perl.h perlsdio.h perlvars.h perly.h pp.h \
32 pp_proto.h proto.h reentr.h regexp.h scope.h sv.h \
33 thread.h unixish.h utf8.h util.h uudmap.h warnings.h
38 -rm -f $(O) microperl generate_uudmap$(_X) uudmap.h
42 # The microconfiguration.
44 # Cannot use $$ in the command line itself, so using var expansion instead.
45 Config = '$$Config{$$1}'
47 $(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
49 regen_uconfig uconfig.h: uconfig.sh
50 $(ENV) CONFIG_SH=uconfig.sh CONFIG_H=uconfig.h sh ./config_h.SH
52 # Do not regenerate perly.c and perly.h.
55 -@echo perly.c is uptodate
58 -@echo perly.h is uptodate
60 # The microperl objects.
63 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) av.c
65 udeb$(_O): $(HE) deb.c
66 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) deb.c
68 udoio$(_O): $(HE) doio.c
69 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) doio.c
71 udoop$(_O): $(HE) doop.c
72 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) doop.c
74 udump$(_O): $(HE) dump.c regcomp.h regnodes.h
75 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) dump.c
77 uglobals$(_O): $(H) globals.c INTERN.h perlapi.h
78 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) globals.c
81 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) gv.c
83 umro$(_O): $(HE) mro.c
84 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mro.c
87 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) hv.c
90 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mg.c
92 uperlmain$(_O): $(HE) miniperlmain.c
93 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) miniperlmain.c
95 uop$(_O): $(HE) op.c keywords.h
96 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) -DPERL_EXTERNAL_GLOB op.c
98 ureentr$(_O): $(HE) reentr.c
99 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) reentr.c
101 upad$(_O): $(HE) pad.c
102 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pad.c
104 uperl$(_O): $(HE) perl.c
105 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) perl.c
107 uperlio$(_O): $(HE) perlio.c
108 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) perlio.c
110 uperly$(_O): $(HE) perly.c
111 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) perly.c
114 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp.c
116 upp_ctl$(_O): $(HE) pp_ctl.c
117 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp_ctl.c
119 upp_hot$(_O): $(HE) pp_hot.c
120 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp_hot.c
122 upp_sys$(_O): $(HE) pp_sys.c
123 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp_sys.c
125 upp_pack$(_O): $(HE) pp_pack.c
126 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp_pack.c
128 upp_sort$(_O): $(HE) pp_sort.c
129 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) pp_sort.c
131 uregcomp$(_O): $(HE) regcomp.c regcomp.h regnodes.h INTERN.h
132 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) regcomp.c
134 uregexec$(_O): $(HE) regexec.c regcomp.h regnodes.h
135 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) regexec.c
137 urun$(_O): $(HE) run.c
138 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) run.c
140 uscope$(_O): $(HE) scope.c
141 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) scope.c
144 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) sv.c
146 utaint$(_O): $(HE) taint.c
147 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) taint.c
149 utoke$(_O): $(HE) toke.c keywords.h
150 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) toke.c
152 ulocale$(_O): $(HE) locale.c
153 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) locale.c
155 unumeric$(_O): $(HE) numeric.c
156 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) numeric.c
158 umathoms$(_O): $(HE) mathoms.c
159 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) mathoms.c
161 uuniversal$(_O): $(HE) universal.c XSUB.h
162 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) universal.c
164 uutf8$(_O): $(HE) utf8.c
165 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) utf8.c
167 uutil$(_O): $(HE) util.c
168 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) util.c
170 uperlapi$(_O): $(HE) perlapi.c perlapi.h
171 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) perlapi.c
173 uudmap.h: generate_uudmap$(_X)
174 $(RUN) ./generate_uudmap$(_X) >uudmap.h
176 generate_uudmap$(_O): generate_uudmap.c
177 $(CC) $(CCFLAGS) -o $@ $(CFLAGS) generate_uudmap.c
179 generate_uudmap$(_X): generate_uudmap$(_O)
180 $(LD) -o generate_uudmap $(LDFLAGS) generate_uudmap$(_O) $(LIBS)