[svn:parrot] r43313 - in branches/one_make: . compilers/nqp compilers/nqp/bootstrap compilers/nqp/t compilers/pge config/gen config/gen/makefiles ext/nqp-rx

coke at svn.parrot.org coke at svn.parrot.org
Wed Dec 30 03:59:26 UTC 2009


Author: coke
Date: Wed Dec 30 03:59:16 2009
New Revision: 43313
URL: https://trac.parrot.org/parrot/changeset/43313

Log:
Convert compiler/nqp's recursive make to an include.

Added:
   branches/one_make/compilers/nqp/Makefile.mak
Deleted:
   branches/one_make/config/gen/makefiles/nqp.in
Modified:
   branches/one_make/MANIFEST
   branches/one_make/MANIFEST.SKIP
   branches/one_make/compilers/nqp/   (props changed)
   branches/one_make/compilers/nqp/bootstrap/nqp.pir
   branches/one_make/compilers/nqp/nqp.pir
   branches/one_make/compilers/nqp/t/harness
   branches/one_make/compilers/pge/Makefile.mak
   branches/one_make/config/gen/makefiles.pm
   branches/one_make/config/gen/makefiles/root.in
   branches/one_make/ext/nqp-rx/Makefile.mak

Modified: branches/one_make/MANIFEST
==============================================================================
--- branches/one_make/MANIFEST	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/MANIFEST	Wed Dec 30 03:59:16 2009	(r43313)
@@ -1,7 +1,7 @@
 # ex: set ro:
 # $Id$
 #
-# generated by tools/dev/mk_manifest_and_skip.pl Tue Dec 29 05:35:29 2009 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Wed Dec 30 00:50:24 2009 UT
 #
 # See below for documentation on the format of this file.
 #
@@ -82,6 +82,7 @@
 compilers/ncigen/t/parse_00.t                               [test]
 compilers/ncigen/t/parse_01.t                               [test]
 compilers/ncigen/t/parse_02.t                               [test]
+compilers/nqp/Makefile.mak                                  [nqp]
 compilers/nqp/README.pod                                    []doc
 compilers/nqp/TODO.pod                                      [nqp]
 compilers/nqp/bootstrap/actions.pm                          [nqp]
@@ -325,7 +326,6 @@
 config/gen/makefiles/dynpmc_pl.in                           []
 config/gen/makefiles/editor.in                              []
 config/gen/makefiles/ext.in                                 []
-config/gen/makefiles/nqp.in                                 []
 config/gen/makefiles/parrot_embed_pl.in                     []
 config/gen/makefiles/parrot_pc.in                           []
 config/gen/makefiles/pirc.in                                []

Modified: branches/one_make/MANIFEST.SKIP
==============================================================================
--- branches/one_make/MANIFEST.SKIP	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/MANIFEST.SKIP	Wed Dec 30 03:59:16 2009	(r43313)
@@ -1,6 +1,6 @@
 # ex: set ro:
 # $Id$
-# generated by tools/dev/mk_manifest_and_skip.pl Tue Dec 29 05:56:23 2009 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Wed Dec 30 00:50:24 2009 UT
 #
 # This file should contain a transcript of the svn:ignore properties
 # of the directories in the Parrot subversion repository. (Needed for
@@ -201,8 +201,6 @@
 ^compilers/ncigen/src/gen_grammar\.pir$
 ^compilers/ncigen/src/gen_grammar\.pir/
 # generated from svn:ignore of 'compilers/nqp/'
-^compilers/nqp/Makefile$
-^compilers/nqp/Makefile/
 ^compilers/nqp/nqp\.pbc$
 ^compilers/nqp/nqp\.pbc/
 # generated from svn:ignore of 'compilers/nqp/bootstrap/'

Added: branches/one_make/compilers/nqp/Makefile.mak
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/one_make/compilers/nqp/Makefile.mak	Wed Dec 30 03:59:16 2009	(r43313)
@@ -0,0 +1,34 @@
+NQP_LIB_PBCS := compilers/nqp/nqp.pbc
+
+NQP_SOURCES := \
+    compilers/nqp/nqp.pir \
+    compilers/nqp/src/Grammar.pg \
+    compilers/nqp/src/Grammar/Actions.pir \
+    compilers/nqp/src/builtins.pir \
+    compilers/nqp/src/Grammar_gen.pir
+
+compilers/nqp/nqp.pbc : $(PARROT) $(NQP_SOURCES) \
+    $(LIBRARY_DIR)/PCT.pbc \
+    $(LIBRARY_DIR)/PGE.pbc
+
+compilers/nqp/src/Grammar_gen.pir : $(PARROT) $(LIBRARY_DIR)/PGE/Perl6Grammar.pir compilers/nqp/src/Grammar.pg $(LIBRARY_DIR)/PCT/HLLCompiler.pbc
+	$(PARROT) $(LIBRARY_DIR)/PGE/Perl6Grammar.pir --output=$@ compilers/nqp/src/Grammar.pg
+
+# Developer target to regnerate bootstrap. Unused?
+nqp-boot: \
+    compilers/nqp/bootstrap/nqp.pir \
+    compilers/nqp/bootstrap/gen_actions.pir
+
+compilers/nqp/bootstrap/gen_actions.pir : $(PARROT) \
+    compilers/nqp/nqp.pbc \
+    compilers/nqp/bootstrap/actions.pm
+	$(PARROT) compilers/nqp/nqp.pbc --output=$@ --target=pir \
+	    compilers/nqp/bootstrap/actions.pm
+
+compilers/nqp/bootstrap/nqp.pbc : $(LIBRARY)/PCT.pbc
+
+NQP_CLEANUPS := \
+    nqp.pbc \
+    src/Grammar_gen.pir \
+    bootstrap/gen_actions.pir \
+    bootstrap/nqp.pbc

Modified: branches/one_make/compilers/nqp/bootstrap/nqp.pir
==============================================================================
--- branches/one_make/compilers/nqp/bootstrap/nqp.pir	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/compilers/nqp/bootstrap/nqp.pir	Wed Dec 30 03:59:16 2009	(r43313)
@@ -52,9 +52,9 @@
     $P1 = $P0.'command_line'(args)
 .end
 
-.include 'src/builtins.pir'
-.include 'src/Grammar_gen.pir'
-.include 'bootstrap/gen_actions.pir'
+.include 'compilers/nqp/src/builtins.pir'
+.include 'compilers/nqp/src/Grammar_gen.pir'
+.include 'compilers/nqp/bootstrap/gen_actions.pir'
 
 
 .namespace []

Modified: branches/one_make/compilers/nqp/nqp.pir
==============================================================================
--- branches/one_make/compilers/nqp/nqp.pir	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/compilers/nqp/nqp.pir	Wed Dec 30 03:59:16 2009	(r43313)
@@ -22,11 +22,11 @@
     .tailcall $P0.'command_line'(args, 'encoding'=>'utf8', 'transcode'=>'ascii')
 .end
 
-.include 'src/Grammar_gen.pir'
+.include 'compilers/nqp/src/Grammar_gen.pir'
 
-.include 'src/Grammar/Actions.pir'
+.include 'compilers/nqp/src/Grammar/Actions.pir'
 
-.include 'src/builtins.pir'
+.include 'compilers/nqp/src/builtins.pir'
 
 # Local Variables:
 #   mode: pir

Modified: branches/one_make/compilers/nqp/t/harness
==============================================================================
--- branches/one_make/compilers/nqp/t/harness	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/compilers/nqp/t/harness	Wed Dec 30 03:59:16 2009	(r43313)
@@ -4,5 +4,10 @@
 
 use FindBin;
 use lib qw( . lib ../lib ../../lib ../../../lib );
-use Parrot::Test::Harness language => 'nqp', compiler => 'nqp.pbc';
+use Parrot::Test::Harness
+    language  => 'nqp',
+    exec      => [ './parrot', 'compilers/nqp/nqp.pbc' ],
+    files     => [ 'compilers/nqp/t/*.t' ];
 
+    #arguments => [ '--files' ],
+    #verbosity => 1,

Modified: branches/one_make/compilers/pge/Makefile.mak
==============================================================================
--- branches/one_make/compilers/pge/Makefile.mak	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/compilers/pge/Makefile.mak	Wed Dec 30 03:59:16 2009	(r43313)
@@ -13,7 +13,8 @@
     compilers/pge/PGE/Perl6Regex.pir \
     compilers/pge/PGE/OPTable.pir \
     compilers/pge/PGE/P5Regex.pir \
-    compilers/pge/PGE/builtins.pg
+    compilers/pge/PGE/builtins.pg \
+    $(LIBRARY_DIR)/PCT/HLLCompiler.pbc
 	$(PERL) -e "" > compilers/pge/PGE/builtins_gen.pir
 	$(PARROT) -o $@ compilers/pge/PGE.pir
 	$(PARROT) $(LIBRARY_DIR)/PGE/Perl6Grammar.pir --output=compilers/pge/PGE/builtins_gen.pir compilers/pge/PGE/builtins.pg

Modified: branches/one_make/config/gen/makefiles.pm
==============================================================================
--- branches/one_make/config/gen/makefiles.pm	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/config/gen/makefiles.pm	Wed Dec 30 03:59:16 2009	(r43313)
@@ -38,8 +38,6 @@
 
         'compilers/ncigen/Makefile'  =>
             { SOURCE => 'compilers/ncigen/config/makefiles/ncigen.in' },
-        'compilers/nqp/Makefile'     =>
-            { SOURCE => 'config/gen/makefiles/nqp.in' },
         'compilers/data_json/Makefile' =>
             { SOURCE => 'config/gen/makefiles/data_json.in' },
         'compilers/pirc/Makefile'    =>

Deleted: branches/one_make/config/gen/makefiles/nqp.in
==============================================================================
--- branches/one_make/config/gen/makefiles/nqp.in	Wed Dec 30 03:59:16 2009	(r43312)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,81 +0,0 @@
-# Copyright (C) 2007-2009, Parrot Foundation.
-# $Id$
-
-# Setup some commands
-PERL     := @perl@
-RM_F     := @rm_f@
-PARROT   := ../../parrot at exe@
-
-PARROT_LIBRARY := @build_dir@/runtime/parrot/library
-PGE_LIBRARY    := @build_dir@/runtime/parrot/library/PGE
-
-all: nqp.pbc
-
-SOURCES := \
-  nqp.pir \
-  src/Grammar.pg \
-  src/Grammar/Actions.pir \
-  src/builtins.pir
-
-BOOTSRC := \
-  bootstrap/nqp.pir \
-  bootstrap/actions.pm
-
-# the default target
-nqp.pbc: $(PARROT) $(PGE_LIBRARY)/Perl6Grammar.pir $(SOURCES)
-	$(PARROT) $(PARROT_ARGS) $(PGE_LIBRARY)/Perl6Grammar.pir \
-	    --output=src/Grammar_gen.pir src/Grammar.pg
-	$(PARROT) -o nqp.pbc nqp.pir
-
-boot: $(BOOTSRC)
-	$(PARROT) nqp.pbc \
-	    --output=bootstrap/gen_actions.pir \
-	    --target=pir \
-	    bootstrap/actions.pm
-	$(PARROT) --output-pbc -o bootstrap/nqp.pbc bootstrap/nqp.pir
-
-# This is a listing of all targets, that are meant to be called by users
-help:
-	@echo ""
-	@echo "Following targets are available for the user:"
-	@echo ""
-	@echo "  all:               nqp.pbc"
-	@echo "                     This is the default."
-	@echo "Testing:"
-	@echo "  test:              Run the test suite."
-	@echo "  testclean:         Clean up test results."
-	@echo ""
-	@echo "Cleaning:"
-	@echo "  clean:             Basic cleaning up."
-	@echo "  realclean:         Removes also files generated by 'Configure.pl'"
-	@echo "  distclean:         Removes also anything built, in theory"
-	@echo ""
-	@echo "Misc:"
-	@echo "  help:              Print this help message."
-	@echo ""
-
-test: all
-	$(PERL) t/harness t
-
-# this target has nothing to do
-testclean:
-
-CLEANUPS := \
-  nqp.pbc \
-  src/Grammar_gen.pir \
-  bootstrap/gen_actions.pir \
-  bootstrap/nqp.pbc
-
-
-clean:
-	$(RM_F) $(CLEANUPS)
-
-realclean: clean
-	$(RM_F) Makefile
-
-distclean: realclean
-
-# Local variables:
-#   mode: makefile
-# End:
-# vim: ft=make:

Modified: branches/one_make/config/gen/makefiles/root.in
==============================================================================
--- branches/one_make/config/gen/makefiles/root.in	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/config/gen/makefiles/root.in	Wed Dec 30 03:59:16 2009	(r43313)
@@ -151,7 +151,6 @@
     docs/Makefile \
     compilers/data_json/Makefile \
     compilers/ncigen/Makefile \
-    compilers/nqp/Makefile \
     editor/Makefile \
     ext/Makefile \
     src/dynoplibs/Makefile \
@@ -584,9 +583,6 @@
 #UNLESS(win32).S$(O) : # suffix rule (limited support)
 #UNLESS(win32)	@$(PERL) tools/dev/cc_flags.pl $(CUR_DIR)/CFLAGS $(CC) "" $(CFLAGS) -I$(@D) @cc_o_out@$@ -c $<
 
-# XXX These obviously require parrot: had trouble adding parrot as a dependency
-# here, though. Ignored on Mac OS X, at least.
-
 .pir.pbc : # suffix rule (limited support)
 	$(PARROT) -o $@ $<
 
@@ -680,10 +676,6 @@
 .pmc.c : # suffix rule (limited support)
 	$(PMC2CC) $<
 
-# not all makes might understand this, so the rules are generated
-#src/pmc/pmc_%.h : src/pmc/%.c
-#	$(PMC2CC) $<
-
 vtable.dump : src/vtable.tbl
 	$(PMC2CV)
 
@@ -1708,16 +1700,14 @@
 compilers : compilers.dummy
 
 compilers.dummy : $(PARROT) $(GEN_LIBRARY)
-	$(MAKE) compilers/nqp
 	$(MAKE) compilers/data_json
 
 compilers-clean :
-	$(MAKE) compilers/nqp clean
 	$(MAKE) compilers/data_json clean
 	$(MAKE) compilers/pirc clean
 
 ext-clean:
-	$(RM_RF) $(NQP_LIB_PBCS) parrot-nqp*
+	$(RM_RF) $(NQPRX_LIB_PBCS) parrot-nqp*
 
 ###############################################################################
 #
@@ -1793,8 +1783,8 @@
 	$(PERL) t/harness $(EXTRA_TEST_ARGS)
 
 # Test the NQP compiler
-nqp_test : test_prep
-	$(MAKE) compilers/nqp test
+nqp_test : test_prep compilers/nqp/nqp.pbc
+	$(PERL) compilers/nqp/t/harness
 
 # run the test suite, create a TAP archive and send it off to smolder
 smolder_test : test_prep
@@ -1950,6 +1940,7 @@
 	$(RM_F) $(FLUID_FILES_1)
 	$(RM_F) $(FLUID_FILES_2)
 	$(RM_RF) lib/Parrot/OpLib
+	$(RM_F) $(NQP_CLEANUPS)
 
 prog-clean :
 	$(RM_F) \
@@ -2607,6 +2598,7 @@
 	$(PERL) $(BUILD_TOOLS_DIR)/headerizer.pl --macro=PARROT_MALLOC $(HEADERIZER_O_FILES)
 
 include runtime/parrot/library/Makefile.mak
+include compilers/nqp/Makefile.mak
 include compilers/pge/Makefile.mak
 include compilers/pct/Makefile.mak
 include compilers/tge/Makefile.mak

Modified: branches/one_make/ext/nqp-rx/Makefile.mak
==============================================================================
--- branches/one_make/ext/nqp-rx/Makefile.mak	Tue Dec 29 14:27:16 2009	(r43312)
+++ branches/one_make/ext/nqp-rx/Makefile.mak	Wed Dec 30 03:59:16 2009	(r43313)
@@ -1,6 +1,6 @@
 ## XXX does not cover .includes of core .pasm files
 
-NQP_LIB_PBCS := \
+NQPRX_LIB_PBCS := \
     $(LIBRARY_DIR)/Regex.pbc \
     $(LIBRARY_DIR)/HLL.pbc \
     $(LIBRARY_DIR)/P6Regex.pbc \
@@ -25,8 +25,8 @@
 parrot-nqp.pbc : $(LIBRARY_DIR)/nqp-rx.pbc
 	$(CP) $(LIBRARY_DIR)/nqp-rx.pbc $@
 
-$(NQP) : $(NQP_LIB_PBCS) $(PBC_TO_EXE) parrot-nqp.pbc
+$(NQP) : $(NQPRX_LIB_PBCS) $(PBC_TO_EXE) parrot-nqp.pbc
 	$(PBC_TO_EXE) parrot-nqp.pbc
 
-$(INSTALLABLENQP) : $(NQP_LIB_PBCS) $(SRC_DIR)/install_config$(O) $(PBC_TO_EXE) parrot-nqp.pbc
+$(INSTALLABLENQP) : $(NQPRX_LIB_PBCS) $(SRC_DIR)/install_config$(O) $(PBC_TO_EXE) parrot-nqp.pbc
 	$(PBC_TO_EXE) parrot-nqp.pbc --install


More information about the parrot-commits mailing list