# New Ticket Created by Joshua Hoblitt # Please include the string: [perl #37692] # in the subject line of all future correspondence about this issue. # <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=37692 >
This transaction appears to have no content
This patch does away with the use of $(MAKE_C) in Makefile in favor of using just $(MAKE). I've tested it on x86|amd64/linux but it really should be tested on win32 before it's applied. It is also another step towards getting `make -jN` to work. gen/makefiles/languages.in | 94 ++++++++++++++++++++++----------------------- gen/makefiles/root.in | 30 +++++++------- inter/make.pm | 15 +++++++ 3 files changed, 77 insertions(+), 62 deletions(-) -J --
Index: config/inter/make.pm
===================================================================
--- config/inter/make.pm (revision 10016)
+++ config/inter/make.pm (working copy)
@@ -73,6 +73,21 @@
Parrot::Configure::Data->set($util => $prog);
$Configure::Step::result = 'yes';
+
+ # setup make_C
+ if (Parrot::Configure::Data->get('gmake_version')) {
+ Parrot::Configure::Data->set(make_c => "$prog -C" );
+ } else {
+ # get the default value
+ my $make_c = Parrot::Configure::Data->get('make_c');
+
+ # FIXME this is an ugly hack
+ # replace the value for $(MAKE) with the actual path or we'll end up
+ # with a variable that recursively refers to itself
+ $make_c =~ s/\$\(MAKE\)/$prog/;
+
+ Parrot::Configure::Data->set(make_c => $make_c);
+ }
}
1;
Index: config/gen/makefiles/root.in
===================================================================
--- config/gen/makefiles/root.in (revision 10015)
+++ config/gen/makefiles/root.in (working copy)
@@ -481,7 +481,7 @@
# This is set to MAKE=$make if your $make command doesn't
# do it for you.
${make_set_make}
-MAKE_C = ${make_c}
+MAKE = ${make_c}
# These need to be above lines that define suffix rules to be portable
# (certainly FreeBSD make doesn't grok the .imc.pbc rule otherwise)
@@ -1138,16 +1138,16 @@
@echo "Perldoc is required, but not detected."
docs.dummy :
- $(MAKE_C) docs
+ $(MAKE) docs
docs-clean :
- $(MAKE_C) docs clean
+ $(MAKE) docs clean
html.dummy :
- $(MAKE_C) docs html
+ $(MAKE) docs html
html-clean :
- $(MAKE_C) docs html-clean
+ $(MAKE) docs html-clean
###############################################################################
#
@@ -1159,13 +1159,13 @@
# XXX this dependancy is too broad, and should be narrowed down
dynclasses.dummy : parrot$(EXE)
- $(MAKE_C) dynclasses
+ $(MAKE) dynclasses
dynclasses-test :
- $(MAKE_C) dynclasses test
+ $(MAKE) dynclasses test
dynclasses-clean :
- $(MAKE_C) dynclasses clean
+ $(MAKE) dynclasses clean
###############################################################################
#
@@ -1176,21 +1176,21 @@
compilers : compilers.dummy
compilers.dummy : parrot$(EXE)
- $(MAKE_C) compilers/pge
+ $(MAKE) compilers/pge
languages : languages.dummy
languages.dummy :
- $(MAKE_C) languages
+ $(MAKE) languages
languages-test :
- $(MAKE_C) languages test
+ $(MAKE) languages test
languages-smoke :
- $(MAKE_C) languages smoke
+ $(MAKE) languages smoke
languages-clean :
- $(MAKE_C) languages clean
+ $(MAKE) languages clean
###############################################################################
#
@@ -1199,7 +1199,7 @@
###############################################################################
compilers-clean :
- $(MAKE_C) compilers/pge clean
+ $(MAKE) compilers/pge clean
###############################################################################
#
@@ -1208,7 +1208,7 @@
###############################################################################
editor-clean :
- $(MAKE_C) editor clean
+ $(MAKE) editor clean
###############################################################################
#
Index: config/gen/makefiles/languages.in
===================================================================
--- config/gen/makefiles/languages.in (revision 10015)
+++ config/gen/makefiles/languages.in (working copy)
@@ -3,7 +3,7 @@
# setup of commands
${make_set_make}
PERL = ${perl}
-MAKE_C = ${make_c}
+MAKE = ${make_c}
RM_F = ${rm_f}
# add new languages here
@@ -111,39 +111,39 @@
Zcode.dummy:
# Do nothing. make Zcode requires an Inform compiler
Zcode.test:
- - $(MAKE_C) Zcode test
+ - $(MAKE) Zcode test
Zcode.clean:
- - $(MAKE_C) Zcode clean
+ - $(MAKE) Zcode clean
bc : bc.dummy
bc.dummy:
- - $(MAKE_C) bc
+ - $(MAKE) bc
bc.test:
- - $(MAKE_C) bc test
+ - $(MAKE) bc test
bc.clean:
- - $(MAKE_C) bc clean
+ - $(MAKE) bc clean
befunge : befunge.dummy
befunge.dummy:
- - $(MAKE_C) befunge
+ - $(MAKE) befunge
befunge.test:
- - $(MAKE_C) befunge test
+ - $(MAKE) befunge test
befunge.clean:
- - $(MAKE_C) befunge clean
+ - $(MAKE) befunge clean
bf : bf.dummy
bf.dummy:
- - $(MAKE_C) bf
+ - $(MAKE) bf
bf.test:
- - $(MAKE_C) bf test
+ - $(MAKE) bf test
bf.clean:
- - $(MAKE_C) bf clean
+ - $(MAKE) bf clean
cola : cola.dummy
cola.dummy:
- - $(MAKE_C) cola
+ - $(MAKE) cola
cola.test:
- - $(MAKE_C) cola test
+ - $(MAKE) cola test
cola.clean:
# don't clean cola, as files in MANIFEST are removed
@@ -159,72 +159,72 @@
jako.dummy:
# don't make jako, as tests are executed by default
jako.test:
- - $(MAKE_C) jako test
+ - $(MAKE) jako test
jako.clean:
- - $(MAKE_C) jako clean
+ - $(MAKE) jako clean
lisp: lisp.dummy
lisp.dummy:
- - $(MAKE_C) lisp
+ - $(MAKE) lisp
lisp.test:
- - $(MAKE_C) lisp test
+ - $(MAKE) lisp test
lisp.clean:
- - $(MAKE_C) lisp clean
+ - $(MAKE) lisp clean
m4: m4.dummy
m4.dummy:
- - $(MAKE_C) m4
+ - $(MAKE) m4
m4.test:
- - $(MAKE_C) m4 test
+ - $(MAKE) m4 test
m4.clean:
- - $(MAKE_C) m4 clean
+ - $(MAKE) m4 clean
miniperl : miniperl.dummy
miniperl.dummy:
# miniperl is missing t/harness
-# $(MAKE_C) miniperl
+# $(MAKE) miniperl
miniperl.test:
- - $(MAKE_C) miniperl test
+ - $(MAKE) miniperl test
miniperl.clean:
- - $(MAKE_C) miniperl clean
+ - $(MAKE) miniperl clean
ook : ook.dummy
ook.dummy:
- - $(MAKE_C) ook
+ - $(MAKE) ook
ook.test:
- - $(MAKE_C) ook test
+ - $(MAKE) ook test
ook.clean:
- - $(MAKE_C) ook clean
+ - $(MAKE) ook clean
parrot_compiler: parrot_compiler.dummy
parrot_compiler.dummy:
- - $(MAKE_C) parrot_compiler
+ - $(MAKE) parrot_compiler
parrot_compiler.test:
- - $(MAKE_C) parrot_compiler test
+ - $(MAKE) parrot_compiler test
parrot_compiler.clean:
- - $(MAKE_C) parrot_compiler clean
+ - $(MAKE) parrot_compiler clean
perl6 : perl6.dummy
perl6.dummy:
- - $(MAKE_C) perl6
+ - $(MAKE) perl6
perl6.test:
- - $(MAKE_C) perl6 test
+ - $(MAKE) perl6 test
perl6.clean:
- - $(MAKE_C) perl6 clean
+ - $(MAKE) perl6 clean
punie : punie.dummy
punie.dummy:
- - $(MAKE_C) punie
+ - $(MAKE) punie
punie.test:
- - $(MAKE_C) punie test
+ - $(MAKE) punie test
punie.clean:
- - $(MAKE_C) punie clean
+ - $(MAKE) punie clean
regex: regex.dummy
regex.dummy:
- - $(MAKE_C) regex
+ - $(MAKE) regex
regex.test :
- - $(MAKE_C) regex test
+ - $(MAKE) regex test
regex.clean :
# No target clean for regex
@@ -232,22 +232,22 @@
scheme.dummy:
@echo "SKIPPED: scheme: (nothing to make, but should not default to
make test)"
scheme.test :
- - $(MAKE_C) scheme test
+ - $(MAKE) scheme test
scheme.clean :
- - $(MAKE_C) scheme clean
+ - $(MAKE) scheme clean
tcl: tcl.dummy
tcl.dummy:
- - $(MAKE_C) tcl
+ - $(MAKE) tcl
tcl.test:
- - $(MAKE_C) tcl test
+ - $(MAKE) tcl test
tcl.clean:
- - $(MAKE_C) tcl clean
+ - $(MAKE) tcl clean
urm: urm.dummy
urm.dummy:
- - $(MAKE_C) urm
+ - $(MAKE) urm
urm.test:
- - $(MAKE_C) urm test
+ - $(MAKE) urm test
urm.clean:
- - $(MAKE_C) urm clean
+ - $(MAKE) urm clean
pgpkiWjLnvAAQ.pgp
Description: PGP signature
