Index: perl-5.8.8/Makefile.SH =================================================================== --- perl-5.8.8.orig/Makefile.SH 2006-01-24 23:49:44.000000000 +1100 +++ perl-5.8.8/Makefile.SH 2007-06-14 13:29:37.000000000 +1000 @@ -43,12 +43,12 @@ true) # Prefix all runs of 'miniperl' and 'perl' with # $ldlibpth so that ./perl finds *this* shared libperl. - case "$LD_LIBRARY_PATH" in - '') - ldlibpth="LD_LIBRARY_PATH=`pwd`";; - *) - ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";; - esac +# case "$LD_LIBRARY_PATH" in +# '') +# ldlibpth="LD_LIBRARY_PATH=`pwd`";; +# *) +# ldlibpth="LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}";; +# esac pldlflags="$cccdlflags" static_target='static_pic' @@ -108,7 +108,8 @@ ldlibpth='' ;; *) - eval "ldlibpth=\"$ldlibpthname=`pwd`:\$$ldlibpthname\"" +# We compile in the library path in OE from cross-compile, so lets not do this +# eval "ldlibpth=\"$ldlibpthname=`pwd`:\$$ldlibpthname\"" ;; esac # Strip off any trailing :'s @@ -129,18 +130,7 @@ # INSTALL file, under "Building a shared perl library". # If there is no pre-existing $libperl, we don't need # to do anything further. - if test -f $archlib/CORE/$libperl; then - 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" - fi + echo linux libraries overwritten by cross-compile patches ;; os390) test -f /bin/env && ldlibpth="/bin/env $ldlibpth" ;; @@ -401,9 +391,19 @@ .c.s: $(CCCMDSRC) -S $*.c -all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make - @echo " "; - @echo " Everything is up to date. Type '$(MAKE) test' to run test suite." +#all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) extra.pods $(private) $(unidatafiles) $(public) $(dynamic_ext) $(nonxs_ext) extras.make +# @echo " "; +# @echo " Everything is up to date. Type '$(MAKE) test' to run test suite." + +all: $(FIRSTMAKEFILE) miniperl$(EXE_EXT) + +more: extra.pods $(private) $(public) + +more2: $(dynamic_ext) + +more3: $(nonxs_ext) + +more4: extras.make .PHONY: all compile translators utilities @@ -413,10 +413,10 @@ cd x2p; $(MAKE) compile; cd pod; $(MAKE) compile; -translators: miniperl$(EXE_EXT) $(CONFIGPM) FORCE +translators: $(CONFIGPM) FORCE @echo " "; echo " Making x2p stuff"; cd x2p; $(LDLIBPTH) $(MAKE) all -utilities: miniperl$(EXE_EXT) $(CONFIGPM) $(plextract) lib/lib.pm FORCE +utilities: $(CONFIGPM) $(plextract) lib/lib.pm FORCE @echo " "; echo " Making utilities"; cd utils; $(LDLIBPTH) $(MAKE) all @@ -550,7 +550,7 @@ case "$useshrplib" in true) $spitshell >>Makefile <<'!NO!SUBS!' - $(LD) -o $@ $(SHRPLDFLAGS) perl$(OBJ_EXT) $(obj) $(libs) + $(LD) -o $@ $(SHRPLDFLAGS) perl$(OBJ_EXT) $(obj) $(libs) -Wl,-soname,libperl.so.5 !NO!SUBS! case "$osname" in aix) @@ -591,7 +591,9 @@ $(CC) -o miniperl $(CLDFLAGS) \ `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs) - $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest + mv -f miniperl miniperl-target + ln -s hostperl miniperl +# $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest !NO!SUBS! ;; next4*) @@ -599,7 +601,9 @@ miniperl: $& miniperlmain$(OBJ_EXT) $(LIBPERL) opmini$(OBJ_EXT) $(CC) -o miniperl `echo $(obj) | sed 's/ op$(OBJ_EXT) / /'` \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) perl$(OBJ_EXT) $(libs) - $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest + mv -f miniperl miniperl-target + ln -s hostperl miniperl +# $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest !NO!SUBS! ;; darwin*) @@ -620,7 +624,9 @@ -@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 + mv -f miniperl miniperl-target + ln -s hostperl miniperl +# $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest !NO!SUBS! ;; *) @@ -629,7 +635,9 @@ -@rm -f miniperl.xok $(LDLIBPTH) $(CC) $(CLDFLAGS) -o miniperl \ miniperlmain$(OBJ_EXT) opmini$(OBJ_EXT) $(LLIBPERL) $(libs) - $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest + mv -f miniperl miniperl-target + ln -s hostperl miniperl +# $(LDLIBPTH) ./miniperl -w -Ilib -MExporter -e '<?>' || $(MAKE) minitest !NO!SUBS! ;; esac @@ -766,7 +774,7 @@ # We need to autosplit in two steps because VOS can't handle so many args # .PHONY: preplibrary -preplibrary: miniperl$(EXE_EXT) $(CONFIGPM) lib/lib.pm $(PREPLIBRARY_LIBPERL) +preplibrary: $(CONFIGPM) lib/lib.pm $(PREPLIBRARY_LIBPERL) @sh ./makedir lib/auto @echo " AutoSplitting perl library" $(LDLIBPTH) ./miniperl -Ilib -e 'use AutoSplit; \ @@ -775,35 +783,35 @@ autosplit_lib_modules(@ARGV)' lib/*/*.pm $(MAKE) lib/re.pm -lib/Config.pod: config.sh miniperl$(EXE_EXT) configpm Porting/Glossary +lib/Config.pod: config.sh configpm Porting/Glossary $(LDLIBPTH) ./miniperl -Ilib configpm --heavy=lib/Config_heavy.pl lib/Config.pm $(CONFIGPM): lib/Config.pod -lib/ExtUtils/Miniperl.pm: miniperlmain.c miniperl$(EXE_EXT) minimod.pl $(CONFIGPM) +lib/ExtUtils/Miniperl.pm: miniperlmain.c minimod.pl $(CONFIGPM) $(LDLIBPTH) ./miniperl minimod.pl > lib/ExtUtils/Miniperl.pm lib/re.pm: ext/re/re.pm cp ext/re/re.pm lib/re.pm -$(plextract): miniperl$(EXE_EXT) $(CONFIGPM) x2p/s2p +$(plextract): $(CONFIGPM) x2p/s2p @-rm -f $@ $(LDLIBPTH) ./miniperl -I`pwd`/lib $@.PL -x2p/s2p: miniperl$(EXE_EXT) $(CONFIGPM) x2p/s2p.PL +x2p/s2p: $(CONFIGPM) x2p/s2p.PL cd x2p; $(LDLIBPTH) $(MAKE) s2p -lib/lib.pm: miniperl$(EXE_EXT) $(CONFIGPM) +lib/lib.pm: $(CONFIGPM) @-rm -f $@ $(LDLIBPTH) ./miniperl -Ilib lib/lib_pm.PL unidatafiles $(unidatafiles): uni.data -uni.data: miniperl$(EXE_EXT) $(CONFIGPM) lib/unicore/mktables +uni.data: $(CONFIGPM) lib/unicore/mktables cd lib/unicore && $(LDLIBPTH) ../../miniperl -I../../lib mktables -w touch uni.data -extra.pods: miniperl$(EXE_EXT) +extra.pods: -@test -f extra.pods && rm -f `cat extra.pods` -@rm -f extra.pods -@for x in `grep -l '^=[a-z]' README.* | grep -v README.vms` ; do \ @@ -850,18 +858,7 @@ INSTALL_DEPENDENCE = all install.perl: $(INSTALL_DEPENDENCE) installperl - if [ -n "$(COMPILE)" ]; \ - then \ - cd utils; $(MAKE) compile; \ - cd ../x2p; $(MAKE) compile; \ - cd ../pod; $(MAKE) compile; \ - else :; \ - fi - $(LDLIBPTH) ./perl installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS) - $(MAKE) extras.install - -install.man: all installman - $(LDLIBPTH) ./perl installman --destdir=$(DESTDIR) $(INSTALLFLAGS) + ./hostperl -Ifake_config_library -Ilib -MConfig installperl $(INSTALLFLAGS) $(STRIPFLAGS) # XXX Experimental. Hardwired values, but useful for testing. # Eventually Configure could ask for some of these values. @@ -978,16 +975,16 @@ # # DynaLoader may be needed for extensions that use Makefile.PL. -$(DYNALOADER): miniperl$(EXE_EXT) preplibrary FORCE +$(DYNALOADER): preplibrary FORCE @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) -d_dummy $(dynamic_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE +d_dummy $(dynamic_ext): preplibrary $(DYNALOADER) FORCE @$(LDLIBPTH) sh ext/util/make_ext dynamic $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) -s_dummy $(static_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE +s_dummy $(static_ext): preplibrary $(DYNALOADER) FORCE @$(LDLIBPTH) sh ext/util/make_ext $(STATIC) $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) -n_dummy $(nonxs_ext): miniperl$(EXE_EXT) preplibrary $(DYNALOADER) FORCE +n_dummy $(nonxs_ext): preplibrary $(DYNALOADER) FORCE @$(LDLIBPTH) sh ext/util/make_ext nonxs $@ MAKE=$(MAKE) LIBPERL_A=$(LIBPERL) .PHONY: clean _tidy _mopup _cleaner1 _cleaner2 \ @@ -1125,7 +1122,7 @@ test_prep_pre: preplibrary utilities $(nonxs_ext) -test_prep: test_prep_pre miniperl$(EXE_EXT) $(unidatafiles) perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL) +test_prep: test_prep_pre $(unidatafiles) perl$(EXE_EXT) $(dynamic_ext) $(TEST_PERL_DLL) PERL=./perl $(MAKE) _test_prep _test_tty: @@ -1238,7 +1235,7 @@ # Can't depend on lib/Config.pm because that might be where miniperl # is crashing. -minitest: miniperl$(EXE_EXT) lib/re.pm minitest.prep +minitest: lib/re.pm minitest.prep - cd t && (rm -f perl$(EXE_EXT); $(LNS) ../miniperl$(EXE_EXT) perl$(EXE_EXT)) \ && $(LDLIBPTH) ./perl TEST -minitest base/*.t comp/*.t cmd/*.t run/*.t io/*.t op/*.t uni/*.t </dev/tty