diff options
-rw-r--r-- | MANIFEST | 2 | ||||
-rwxr-xr-x | Makefile.SH | 5 | ||||
-rwxr-xr-x | Porting/add-package.pl | 4 | ||||
-rw-r--r-- | utils/Makefile.PL (renamed from utils/Makefile.SH) | 69 |
4 files changed, 31 insertions, 49 deletions
@@ -5439,7 +5439,7 @@ utils/json_pp.PL JSON::PP command line utility utils/libnetcfg.PL libnet utils.lst Lists utilities bundled with Perl utils/Makefile Pregenerated from utils/Makefile.SH -utils/Makefile.SH Extract the utility scripts +utils/Makefile.PL Extract the utility scripts utils/perlbug.PL A simple tool to submit a bug report utils/perldoc.PL A simple tool to find & display perl's documentation utils/perlivp.PL installation verification procedure diff --git a/Makefile.SH b/Makefile.SH index e0220dbbda..ccc857c090 100755 --- a/Makefile.SH +++ b/Makefile.SH @@ -622,7 +622,10 @@ x2p/s2p: $x2p_deps x2p/find2perl: $x2p_deps cd x2p; \$(LDLIBPTH) \$(MAKE) find2perl -utilities: $util_deps +utils/Makefile: \$(MINIPERL_EXE) \$(CONFIGPM) utils/Makefile.PL + \$(MINIPERL) -Ilib utils/Makefile.PL + +utilities: utils/Makefile $util_deps @echo " "; echo " Making utilities"; cd utils; \$(LDLIBPTH) \$(MAKE) all !GROK!THIS! diff --git a/Porting/add-package.pl b/Porting/add-package.pl index 88b96fc9df..fc2161d9a9 100755 --- a/Porting/add-package.pl +++ b/Porting/add-package.pl @@ -283,8 +283,8 @@ my @ChangedFiles; push @NewFiles, $file; } - ### add an entry to utils/Makefile.SH for $bin - { my $file = "utils/Makefile.SH"; + ### add an entry to utils/Makefile.PL for $bin + { my $file = "utils/Makefile.PL"; ### not there already? unless( `grep $bin $Repo/$file` ) { diff --git a/utils/Makefile.SH b/utils/Makefile.PL index a4a7e4a9d2..7e33806034 100644 --- a/utils/Makefile.SH +++ b/utils/Makefile.PL @@ -1,49 +1,34 @@ -case $PERL_CONFIG_SH in -'') - if test -f config.sh; then TOP=.; - elif test -f ../config.sh; then TOP=..; - elif test -f ../../config.sh; then TOP=../..; - elif test -f ../../../config.sh; then TOP=../../..; - elif test -f ../../../../config.sh; then TOP=../../../..; - else - echo "Can't find config.sh."; exit 1 - fi - . $TOP/config.sh - ;; -esac -: This forces SH files to create target in same directory as SH file. -: This is so that make depend always knows where to find SH derivatives. -case "$0" in -*/Makefile.SH) cd `expr X$0 : 'X\(.*\)/'` ;; -Makefile.SH) ;; -*) case `pwd` in - */utils) ;; - *) if test -d utils; then cd utils - else echo "Can't figure out where to write output."; exit 1 - fi;; - esac;; -esac - -echo "Extracting utils/Makefile (with variable substitutions)" -rm -f Makefile +#!./miniperl -w +use strict; +use Config; + +if (@ARGV) { + my $dir = shift; + chdir $dir or die "Can't chdir '$dir': $!"; +} + +require 'regen/regen_lib.pl'; + +my $target = 'utils/Makefile'; +print "Extracting $target (with variable substitutions)\n"; +my $fh = open_new($target, undef, undef, 1); + # These use the Cwd extension. For statically-built perls, we # need perl, not just miniperl. -case "$usedl" in - define) perl="../miniperl" ;; - *) perl="../perl" ;; -esac -cat >Makefile <<!GROK!THIS! +my $perl = defined $Config{usedl} ? '../miniperl' : '../perl'; + +print $fh <<"EOT"; # Generated from utils/Makefile.SH. The generated file is # shipped with the source kit for systems such as win32 # which don't do .SH extraction. PERL = $perl REALPERL = ../perl -RUN = $run # Used mainly cross-compilation setups. +RUN = $Config{run} # Used mainly cross-compilation setups. -!GROK!THIS! +EOT -cat >>Makefile <<'!NO!SUBS!' +print $fh <<'EOT'; # Files to be built with variable substitution after miniperl is # available. Dependencies handled manually below (for now). @@ -117,12 +102,6 @@ distclean: clobber veryclean: distclean -rm -f *~ *.org -!NO!SUBS! -$eunicefix Makefile -case `pwd` in -*SH) - $rm -f ../Makefile - $ln Makefile ../Makefile - ;; -esac -rm -f $firstmakefile +EOT + +close_and_rename($fh); |