make target 'pbctestfiles': Why not in 'all'?

James E Keenan jkeen at verizon.net
Sat Sep 25 01:19:05 UTC 2010


While testing in the 'gc_massacre' branch, I began to notice the 
following phenomenon:  If I ran 'make' and 'make test' (or 'make smoke') 
as separate commands, I would notice a few 'make' commands being 
executed *before* the first test file ran:

[parrot] 504 $ makesmolderparrot.pl parrot
make -C docs
make[1]: Nothing to be done for `all'.
make -C docs
make[1]: Nothing to be done for `all'.
./parrot -o t/pmc/testlib/annotations.pbc t/pmc/testlib/annotations.pir
./parrot -o t/pmc/testlib/number.pbc t/pmc/testlib/number.pasm
/usr/local/bin/perl t/harness --gc-debug --archive --send-to-smolder
t/configure/001-options.t ................... ok

I had never experienced this in several years of testing Parrot. 
Investigating, I saw that this was the result of recent changes in 
config/gen/makefiles/root.in.  Here is a section of 'svn annotate' for 
that file as of r49301:

  48561   NotFound PBC_TEST_FILES = \
  49024  nwellnhof #IF(has_icu):    t/op/testlib/test_strings.pbc \
  48562   NotFound     t/pmc/testlib/annotations.pbc \
  49024  nwellnhof     t/pmc/testlib/number.pbc
   2430      sfink
  48561   NotFound # pbc files used for several tests
  48561   NotFound pbctestfiles: $(PARROT) $(PBC_TEST_FILES)
  48561   NotFound
  48561   NotFound t/pmc/testlib/number.pbc: t/pmc/testlib/number.pasm
  48561   NotFound       $(PARROT) -o t/pmc/testlib/number.pbc 
t/pmc/testlib/number.pasm
  48561   NotFound
  48562   NotFound t/pmc/testlib/annotations.pbc: 
t/pmc/testlib/annotations.pir
  48562   NotFound       $(PARROT) -o t/pmc/testlib/annotations.pbc 
t/pmc/testlib/annotations.pir
  48562   NotFound
  48987   plobsing t/op/testlib/test_strings.pbc: 
t/op/testlib/test_strings.pir
  48987   plobsing       $(PARROT) -o t/op/testlib/test_strings.pbc 
t/op/testlib/test_strings.pir''
...
   7525        leo # Common prep for all test targets.
  12688   bernhard # We probably need a complete build before running 
the tests.
  48561   NotFound test_prep : all pbctestfiles

Can anyone describe why we are including 'pbctestfiles' in 'test_prep' 
but not in 'all'?

Thank you very much.
kid51



More information about the parrot-dev mailing list