summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2009-01-22 17:19:50 +0000
committerNicholas Clark <nick@ccl4.org>2009-01-23 17:03:45 +0000
commitbf799c6455f928b1043103098647499d1b2e96ff (patch)
treee008019de1b68875e488b1d574694ac7b7e33a35
parent7c7ad0a9c4e0756d4edd2aeba764543bb19cf4be (diff)
downloadperl-bf799c6455f928b1043103098647499d1b2e96ff.tar.gz
Add a perlmini.o and perlmini.c akin to opmini.o and opmini.c, for ./miniperl
This will allow a defined order for generating git_version.h and then perl.o
-rw-r--r--Makefile.SH52
1 files changed, 31 insertions, 21 deletions
diff --git a/Makefile.SH b/Makefile.SH
index 6480b947d6..fb1bf7f4c0 100644
--- a/Makefile.SH
+++ b/Makefile.SH
@@ -51,6 +51,7 @@ linklibperl_nonshr=''
shrpldflags='$(LDDLFLAGS)'
ldlibpth=''
DPERL_EXTERNAL_GLOB='-DPERL_EXTERNAL_GLOB'
+DPERL_IS_MINIPERL='-DPERL_IS_MINIPERL'
case "$useshrplib" in
true)
# Prefix all runs of 'miniperl' and 'perl' with
@@ -449,13 +450,15 @@ c3 = taint.c toke.c util.c deb.c run.c universal.c xsutils.c pad.c globals.c
c4 = perlio.c perlapi.c numeric.c mathoms.c locale.c pp_pack.c pp_sort.c
c5 = $(madlysrc) $(mallocsrc)
-c = $(c1) $(c2) $(c3) $(c4) $(c5) miniperlmain.c perlmain.c opmini.c
+c = $(c1) $(c2) $(c3) $(c4) $(c5) miniperlmain.c perlmain.c opmini.c perlmini.c
-obj1 = $(madlyobj) $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) op$(OBJ_EXT) pad$(OBJ_EXT) regcomp$(OBJ_EXT) dump$(OBJ_EXT) util$(OBJ_EXT) mg$(OBJ_EXT) reentr$(OBJ_EXT) mro$(OBJ_EXT)
-obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) perl$(OBJ_EXT) run$(OBJ_EXT) pp_hot$(OBJ_EXT) sv$(OBJ_EXT) pp$(OBJ_EXT) scope$(OBJ_EXT) pp_ctl$(OBJ_EXT) pp_sys$(OBJ_EXT)
+obj0 = op$(OBJ_EXT) perl$(OBJ_EXT)
+obj1 = $(madlyobj) $(mallocobj) gv$(OBJ_EXT) toke$(OBJ_EXT) perly$(OBJ_EXT) pad$(OBJ_EXT) regcomp$(OBJ_EXT) dump$(OBJ_EXT) util$(OBJ_EXT) mg$(OBJ_EXT) reentr$(OBJ_EXT) mro$(OBJ_EXT)
+obj2 = hv$(OBJ_EXT) av$(OBJ_EXT) run$(OBJ_EXT) pp_hot$(OBJ_EXT) sv$(OBJ_EXT) pp$(OBJ_EXT) scope$(OBJ_EXT) pp_ctl$(OBJ_EXT) pp_sys$(OBJ_EXT)
obj3 = doop$(OBJ_EXT) doio$(OBJ_EXT) regexec$(OBJ_EXT) utf8$(OBJ_EXT) taint$(OBJ_EXT) deb$(OBJ_EXT) universal$(OBJ_EXT) xsutils$(OBJ_EXT) globals$(OBJ_EXT) perlio$(OBJ_EXT) perlapi$(OBJ_EXT) numeric$(OBJ_EXT) mathoms$(OBJ_EXT) locale$(OBJ_EXT) pp_pack$(OBJ_EXT) pp_sort$(OBJ_EXT)
-ndt_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
+mini_obj = $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
+ndt_obj = $(obj0) $(obj1) $(obj2) $(obj3) $(ARCHOBJS)
obj = $(ndt_obj) $(DTRACE_O)
lintflags = \
@@ -578,6 +581,13 @@ opmini.c: op.c
opmini\$(OBJ_EXT): opmini.c
\$(CCCMD) \$(PLDLFLAGS) $DPERL_EXTERNAL_GLOB opmini.c
+perlmini.c: perl.c
+ \$(RMS) perlmini.c
+ \$(CPS) perl.c perlmini.c
+
+perlmini\$(OBJ_EXT): perlmini.c
+ \$(CCCMD) \$(PLDLFLAGS) $DPERL_IS_MINIPERL perlmini.c
+
globals\$(OBJ_EXT): uudmap.h
uudmap.h: generate_uudmap\$(HOST_EXE_EXT)
@@ -634,9 +644,9 @@ $(LIBPERL_NONSHR): $(obj)
$(RMS) $(LIBPERL_NONSHR)
$(AR) rcu $(LIBPERL_NONSHR) $(obj)
-$(MINIPERL_NONSHR): $(LIBPERL_NONSHR) miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT)
+$(MINIPERL_NONSHR): $(LIBPERL_NONSHR) miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT)
$(CC) $(LDFLAGS) -o $(MINIPERL_NONSHR) miniperlmain$(OBJ_EXT) \
- opmini$(OBJ_EXT) $(LIBPERL_NONSHR) $(LIBS)
+ opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(LIBPERL_NONSHR) $(LIBS)
MINIPERLEXP = $(MINIPERL_NONSHR)
@@ -755,18 +765,18 @@ $(LIBPERL): $& $(obj) $(DYNALOADER) $(LIBPERLEXPORT)
case "${osname}${osvers}" in
aix*|beos*)
$spitshell >>$Makefile <<'!NO!SUBS!'
-miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
+miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(mini_obj) opmini$(OBJ_EXT) perlmini$(OBJ_EXT)
$(CC) -o miniperl$(EXE_EXT) $(CLDFLAGS) \
- `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
- miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
+ $(mini_obj) \
+ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
$(LDLIBPTH) $(RUN) ./miniperl$(HOST_EXE_EXT) -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
!NO!SUBS!
;;
next4*)
$spitshell >>$Makefile <<'!NO!SUBS!'
-miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
- $(CC) -o miniperl$(EXE_EXT) `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
- miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
+miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(mini_obj) perlmini$(OBJ_EXT) opmini$(OBJ_EXT)
+ $(CC) -o miniperl$(EXE_EXT) $(mini_obj) \
+ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
$(LDLIBPTH) $(RUN) ./miniperl$(HOST_EXE_EXT) -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
!NO!SUBS!
;;
@@ -784,21 +794,21 @@ NAMESPACEFLAGS = -force_flat_namespace
;;
esac
$spitshell >>$Makefile <<'!NO!SUBS!'
-miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
+miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(mini_obj) opmini$(OBJ_EXT) perlmini$(OBJ_EXT)
-@rm -f miniperl.xok
$(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o miniperl$(EXE_EXT) \
- `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
- miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
+ $(mini_obj) \
+ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
$(LDLIBPTH) $(RUN) ./miniperl$(HOST_EXE_EXT) -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
!NO!SUBS!
;;
*)
$spitshell >>$Makefile <<'!NO!SUBS!'
-miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(obj) opmini$(OBJ_EXT)
+miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(mini_obj) opmini$(OBJ_EXT) perlmini$(OBJ_EXT)
-@rm -f miniperl.xok
$(LDLIBPTH) $(CC) $(CLDFLAGS) -o miniperl$(EXE_EXT) \
- `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \
- miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(libs)
+ $(mini_obj) \
+ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perlmini$(OBJ_EXT) $(libs)
$(LDLIBPTH) $(RUN) ./miniperl$(HOST_EXE_EXT) -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest
!NO!SUBS!
;;
@@ -1203,11 +1213,11 @@ veryclean: cleanup_unpacked_files _verycleaner _mopup _clobber
# Do not 'make _mopup' directly.
_mopup:
- rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c opmini.c uudmap.h generate_uudmap$(EXE_EXT)
+ rm -f *$(OBJ_EXT) *$(LIB_EXT) all perlmain.c opmini.c perlmini.c uudmap.h generate_uudmap$(EXE_EXT)
-rmdir .depending
-@test -f extra.pods && rm -f `cat extra.pods`
-@test -f vms/README_vms.pod && rm -f vms/README_vms.pod
- -rm -f perl.exp ext.libs extra.pods uni.data opmini.o
+ -rm -f perl.exp ext.libs extra.pods uni.data opmini.o perlmini.o
-rm -f perl.export perl.dll perl.libexp perl.map perl.def
-rm -f perl.loadmap miniperl.loadmap perl.prelmap miniperl.prelmap
-rm -f perl.third lib*.so.perl.third perl.3log t/perl.third t/perl.3log
@@ -1537,7 +1547,7 @@ tags: TAGS
perl emacs/e2ctags.pl TAGS > tags
ctags:
- ctags -f Tags -N --totals --languages=c --langmap=c:+.h --exclude=opmini.c *.c *.h
+ ctags -f Tags -N --totals --languages=c --langmap=c:+.h --exclude=opmini.c --exclude=perlmini.c *.c *.h
# AUTOMATICALLY GENERATED MAKE DEPENDENCIES--PUT NOTHING BELOW THIS LINE
# If this runs make out of memory, delete /usr/include lines.