X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=Makefile.SH;h=77d67b4dca528908988c378bcc31ae5ce70744e8;hb=5838c20cbc655050024f8cc4f3747da54d859745;hp=9fa3257f60226798a11735942ca5ff8d05070aed;hpb=60d790016f9a602e57865a57da59741adc77fbe4;p=p5sagit%2Fp5-mst-13.2.git diff --git a/Makefile.SH b/Makefile.SH index 9fa3257..77d67b4 100644 --- a/Makefile.SH +++ b/Makefile.SH @@ -96,26 +96,33 @@ true) ldlibpth=`echo $ldlibpth | sed 's/:*$//'` ;; esac - ;; -*) pldlflags='' - static_target='static' - ;; -esac -case "$ldlibpth" in -# Protect any spaces -*" "*) ldlibpth=`echo $ldlibpth|sed 's/ /\\\\ /g'` ;; -esac + case "$ldlibpth" in + # Protect any spaces + *" "*) ldlibpth=`echo $ldlibpth|sed 's/ /\\\\ /g'` ;; + esac -case "$osname" in -linux) - case "$useshrplib" in - true) - ldlibpth="LD_PRELOAD=\"\$\$LD_PRELOAD `pwd`/$libperl\" $ldlibpth" - ;; + case "$osname" in + linux) + rm -f preload + cat <<'EOT' > preload +#! /bin/sh +lib=$1 +shift +test -r $lib && export LD_PRELOAD="$lib $LD_PRELOAD" +exec "$@" +EOT + chmod 755 preload + ldlibpth="$ldlibpth `pwd`/preload `pwd`/$libperl" + ;; + os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" + ;; esac + ;; -os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" + +*) pldlflags='' + static_target='static' ;; esac @@ -457,7 +464,7 @@ PERLEXPORT = perl.exp esac $spitshell >>Makefile <<'!NO!SUBS!' perl.exp: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH) - ./$(MINIPERLEXP) makedef.pl PLATFORM=aix | sort -u | sort -f > perl.exp.tmp + ./$(MINIPERLEXP) makedef.pl PLATFORM=aix CC_FLAGS="$(OPTIMIZE)" | sort -u | sort -f > perl.exp.tmp sh mv-if-diff perl.exp.tmp perl.exp !NO!SUBS! @@ -467,7 +474,7 @@ os2) MINIPERLEXP = miniperl perl5.def: $(MINIPERLEXP) makedef.pl config.sh $(SYM) $(SYMH) miniperl.map - ./$(MINIPERLEXP) makedef.pl PLATFORM=os2 -DPERL_DLL=$(PERL_DLL) > perl.exp.tmp + ./$(MINIPERLEXP) makedef.pl PLATFORM=os2 -DPERL_DLL=$(PERL_DLL) CC_FLAGS="$(OPTIMIZE)" > perl.exp.tmp sh mv-if-diff perl.exp.tmp perl5.def !NO!SUBS! @@ -539,11 +546,32 @@ miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '' || $(MAKE) minitest !NO!SUBS! ;; + darwin*) + case "$osvers" in + [1-6].*) ;; + *) case "$ldflags" in + *"-flat_namespace"*) ;; + *) # to allow opmini.o to override stuff in libperl.dylib + $spitshell >>Makefile <>Makefile <<'!NO!SUBS!' +miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) + -@rm -f miniperl.xok + $(CC) $(CLDFLAGS) $(NAMESPACEFLAGS) -o miniperl \ + miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(LLIBPERL) $(libs) + $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '' || $(MAKE) minitest +!NO!SUBS! + ;; *) $spitshell >>Makefile <<'!NO!SUBS!' miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) -@rm -f miniperl.xok - $(LDLIBPTH) $(CC) $(CLDFLAGS) -o miniperl \ + $(CC) $(CLDFLAGS) -o miniperl \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(LLIBPERL) $(libs) $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '' || $(MAKE) minitest !NO!SUBS! @@ -554,18 +582,18 @@ miniperl$(EXE_EXT): $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) perl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) -@rm -f miniperl.xok - $(SHRPENV) $(LDLIBPTH) $(CC) -o perl$(PERL_SUFFIX) $(PERL_PROFILE_LDFLAGS) $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) + $(SHRPENV) $(CC) -o perl$(PERL_SUFFIX) $(PERL_PROFILE_LDFLAGS) $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) # Purify/Quantify Perls. pureperl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) - $(SHRPENV) $(LDLIBPTH) purify $(CC) -o pureperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) + $(SHRPENV) purify $(CC) -o pureperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) purecovperl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) - $(SHRPENV) $(LDLIBPTH) purecov $(CC) -o purecovperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) + $(SHRPENV) purecov $(CC) -o purecovperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) quantperl$(EXE_EXT): $& perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) - $(SHRPENV) $(LDLIBPTH) quantify $(CC) -o quantperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) + $(SHRPENV) quantify $(CC) -o quantperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) # Third Degree Perl (Tru64 only) @@ -652,7 +680,7 @@ microperl: # has been invoked correctly. suidperl$(EXE_EXT): $& sperl$(OBJ_EXT) perlmain$(OBJ_EXT) $(LIBPERL) $(DYNALOADER) $(static_ext) ext.libs $(PERLEXPORT) - $(SHRPENV) $(LDLIBPTH) $(CC) -o suidperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) + $(SHRPENV) $(CC) -o suidperl $(CLDFLAGS) $(CCDLFLAGS) perlmain$(OBJ_EXT) sperl$(OBJ_EXT) $(DYNALOADER) $(static_ext) $(LLIBPERL) `cat ext.libs` $(libs) !NO!SUBS! @@ -853,6 +881,15 @@ regen_pods: FORCE regen_all: $(PERLYVMS) regen regen_pods +.PHONY: manisort manicheck + +manisort: FORCE + LC_ALL=C sort -fc MANIFEST || (echo "WARNING: re-sorting MANIFEST"; \ + LC_ALL=C sort -fo MANIFEST MANIFEST) + +manicheck: FORCE + perl Porting/manicheck + # Extensions: # Names added to $(dynamic_ext) or $(static_ext) or $(nonxs_ext) will # automatically get built. There should ordinarily be no need to change @@ -944,6 +981,7 @@ _cleaner2: rm -f lib/.exists lib/*/.exists lib/*/*/.exists rm -f h2ph.man pstruct rm -rf .config + rm -f preload rm -f testcompile compilelog -rmdir lib/B lib/Data lib/Digest rm -rf lib/Encode @@ -996,7 +1034,7 @@ makedepend: makedepend.SH config.sh test_tty test-tty _test_tty test_notty test-notty _test_notty \ utest ucheck test.utf8 check.utf8 test.torture torturetest \ test.third check.third utest.third ucheck.third test_notty.third \ - test.deparse test_notty.deparse \ + test.deparse test_notty.deparse test_harness \ minitest coretest # Cannot delegate rebuilding of t/perl to make @@ -1215,6 +1253,11 @@ os390|posix-bc) -e 's/y\.tab/perly/g' perly.c >perly.tmp && mv perly.tmp perly.c xxx="$xxx perly.c" fi + case "$osname:$usethreads" in + os390:define) + sed -e 's@^extern int yychar, yyerrflag;@/* extern int yychar, yyerrflag; */@' perly.c > perly.tmp && mv perly.tmp perly.c + ;; + esac if cmp -s y.tab.h perly.h; then rm -f y.tab.h else