[svn:parrot] r43296 - in branches/one_make: . compilers/pge compilers/tge config/gen config/gen/makefiles runtime/parrot/library

coke at svn.parrot.org coke at svn.parrot.org
Tue Dec 29 04:42:25 UTC 2009


Author: coke
Date: Tue Dec 29 04:42:24 2009
New Revision: 43296
URL: https://trac.parrot.org/parrot/changeset/43296

Log:
convert tge's recursive make into an include; add some deps in the library.

Added:
   branches/one_make/compilers/tge/Makefile.mak
   branches/one_make/runtime/parrot/library/Makefile.mak
Deleted:
   branches/one_make/config/gen/makefiles/tge.in
Modified:
   branches/one_make/MANIFEST
   branches/one_make/compilers/pge/Makefile.mak
   branches/one_make/compilers/tge/TGE.pir
   branches/one_make/config/gen/makefiles.pm
   branches/one_make/config/gen/makefiles/root.in

Modified: branches/one_make/MANIFEST
==============================================================================
--- branches/one_make/MANIFEST	Tue Dec 29 02:18:28 2009	(r43295)
+++ branches/one_make/MANIFEST	Tue Dec 29 04:42:24 2009	(r43296)
@@ -1,7 +1,7 @@
 # ex: set ro:
 # $Id$
 #
-# generated by tools/dev/mk_manifest_and_skip.pl Tue Dec 29 02:02:34 2009 UT
+# generated by tools/dev/mk_manifest_and_skip.pl Tue Dec 29 04:07:54 2009 UT
 #
 # See below for documentation on the format of this file.
 #
@@ -195,6 +195,7 @@
 compilers/pirc/t/macro.t                                    [test]
 compilers/pirc/t/stmts.t                                    [test]
 compilers/pirc/t/subflags.t                                 [test]
+compilers/tge/Makefile.mak                                  [tge]
 compilers/tge/README                                        []doc
 compilers/tge/TGE.pir                                       [tge]
 compilers/tge/TGE/Compiler.pir                              [tge]
@@ -328,7 +329,6 @@
 config/gen/makefiles/parrot_pc.in                           []
 config/gen/makefiles/pirc.in                                []
 config/gen/makefiles/root.in                                []
-config/gen/makefiles/tge.in                                 []
 config/gen/opengl.pm                                        []
 config/gen/parrot_include.pm                                []
 config/gen/platform.pm                                      []

Modified: branches/one_make/compilers/pge/Makefile.mak
==============================================================================
--- branches/one_make/compilers/pge/Makefile.mak	Tue Dec 29 02:18:28 2009	(r43295)
+++ branches/one_make/compilers/pge/Makefile.mak	Tue Dec 29 04:42:24 2009	(r43296)
@@ -2,10 +2,10 @@
 
 PGE_LIB_PBCS := $(LIBRARY_DIR)/PGE.pbc
 
-## Two-stage build that reuses builtins_gen.pir
+## Two-stage build that reuses builtins_gen.pir ; use the Perl6Grammar.pir
+## of stage one to avoid a circular dependency.
 
 $(LIBRARY_DIR)/PGE.pbc: $(PARROT) \
-    $(LIBRARY_DIR)/PGE/Perl6Grammar.pir \
     compilers/pge/PGE.pir \
     compilers/pge/PGE/Exp.pir \
     compilers/pge/PGE/Match.pir \

Added: branches/one_make/compilers/tge/Makefile.mak
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/one_make/compilers/tge/Makefile.mak	Tue Dec 29 04:42:24 2009	(r43296)
@@ -0,0 +1,16 @@
+
+TGE_LIB_PBCS := $(LIBRARY_DIR)/TGE.pbc
+
+$(LIBRARY_DIR)/TGE.pbc:  \
+    compilers/tge/TGE.pir \
+    compilers/tge/TGE/Rule.pir \
+    compilers/tge/TGE/Parser.pir \
+    compilers/tge/TGE/Grammar.pir \
+    compilers/tge/TGE/Compiler.pir \
+    compilers/tge/TGE/Tree.pir
+	$(PARROT) -o $@ compilers/tge/TGE.pir
+
+compilers/tge/TGE/Parser.pir: $(PARROT) \
+    compilers/tge/TGE/Parser.pg \
+    $(LIBRARY_DIR)/PGE/Perl6Grammar.pbc
+	$(PARROT) $(LIBRARY_DIR)/PGE/Perl6Grammar.pbc --output=$@ compilers/tge/TGE/Parser.pg

Modified: branches/one_make/compilers/tge/TGE.pir
==============================================================================
--- branches/one_make/compilers/tge/TGE.pir	Tue Dec 29 02:18:28 2009	(r43295)
+++ branches/one_make/compilers/tge/TGE.pir	Tue Dec 29 04:42:24 2009	(r43296)
@@ -16,7 +16,7 @@
     # and elsewhere...
 
     .sub _main :main
-        load_bytecode 'TGE.pir'
+        load_bytecode 'TGE.pbc'
 
         # Compile a grammar from the source grammar file
         .local pmc compiler

Modified: branches/one_make/config/gen/makefiles.pm
==============================================================================
--- branches/one_make/config/gen/makefiles.pm	Tue Dec 29 02:18:28 2009	(r43295)
+++ branches/one_make/config/gen/makefiles.pm	Tue Dec 29 04:42:24 2009	(r43296)
@@ -40,8 +40,6 @@
             { SOURCE => 'compilers/ncigen/config/makefiles/ncigen.in' },
         'compilers/nqp/Makefile'     =>
             { SOURCE => 'config/gen/makefiles/nqp.in' },
-        'compilers/tge/Makefile'     =>
-            { SOURCE => 'config/gen/makefiles/tge.in' },
         'compilers/json/Makefile'    =>
             { SOURCE => 'config/gen/makefiles/json.in' },
         'compilers/data_json/Makefile' =>

Modified: branches/one_make/config/gen/makefiles/root.in
==============================================================================
--- branches/one_make/config/gen/makefiles/root.in	Tue Dec 29 02:18:28 2009	(r43295)
+++ branches/one_make/config/gen/makefiles/root.in	Tue Dec 29 04:42:24 2009	(r43296)
@@ -153,7 +153,6 @@
     compilers/json/Makefile \
     compilers/ncigen/Makefile \
     compilers/nqp/Makefile \
-    compilers/tge/Makefile \
     editor/Makefile \
     ext/Makefile \
     src/dynoplibs/Makefile \
@@ -257,6 +256,7 @@
     lib/Parrot/OpLib/core.pm
 
 GEN_LIBRARY := \
+    $(TGE_LIB_PBCS) \
     $(PGE_LIB_PBCS) \
     $(PCT_LIB_PBCS) \
     $(LIBRARY_DIR)/CGI/QueryHash.pbc \
@@ -798,7 +798,7 @@
 	@echo "  dynoplibs-clean:   Proxy for target 'clean' of src/dynoplibs/Makefile"
 	@echo ""
 	@echo "Language implementations:"
-	@echo "  compilers:         Proxy for default target of pge and tge compilers"
+	@echo "  compilers:         Proxy for default target of various compilers"
 	@echo ""
 	@echo "Fetch from source repository:"
 	@echo "  update:            svn update."
@@ -967,11 +967,6 @@
 $(INSTALLABLEPBCTOEXE) : $(PBC_TO_EXE) $(SRC_DIR)/install_config$(O)
 	$(PBC_TO_EXE) pbc_to_exe.pbc --install
 
-
-include compilers/pge/Makefile.mak
-include compilers/pct/Makefile.mak
-include ext/nqp-rx/Makefile.mak
-
 #
 # Parrot Debugger
 #
@@ -1842,13 +1837,11 @@
 compilers : compilers.dummy
 
 compilers.dummy : $(PARROT) $(GEN_LIBRARY)
-	$(MAKE) compilers/tge
 	$(MAKE) compilers/nqp
 	$(MAKE) compilers/json
 	$(MAKE) compilers/data_json
 
 compilers-clean :
-	$(MAKE) compilers/tge clean
 	$(MAKE) compilers/nqp clean
 	$(MAKE) compilers/json clean
 	$(MAKE) compilers/data_json clean
@@ -2750,6 +2743,12 @@
 malloclist: $(SRC_DIR)/core_pmcs.c
 	$(PERL) $(BUILD_TOOLS_DIR)/headerizer.pl --macro=PARROT_MALLOC $(HEADERIZER_O_FILES)
 
+include runtime/parrot/library/Makefile.mak
+include compilers/tge/Makefile.mak
+include compilers/pge/Makefile.mak
+include compilers/pct/Makefile.mak
+include ext/nqp-rx/Makefile.mak
+
 # Local variables:
 #   mode: makefile
 # End:

Deleted: branches/one_make/config/gen/makefiles/tge.in
==============================================================================
--- branches/one_make/config/gen/makefiles/tge.in	Tue Dec 29 04:42:24 2009	(r43295)
+++ /dev/null	00:00:00 1970	(deleted)
@@ -1,61 +0,0 @@
-# Copyright (C) 2005-2009, Parrot Foundation.
-# $Id$
-
-# Setup some commands
-PERL     := @perl@
-RM_F     := @rm_f@
-PARROT   := ../../parrot at exe@
-
-# Where to put things
-PARROT_LIBRARY    := ../../runtime/parrot/library
-PERL6GRAMMAR      := $(PARROT_LIBRARY)/PGE/Perl6Grammar.pbc
-
-# the default target
-all: $(PARROT_LIBRARY)/TGE.pbc
-
-$(PARROT_LIBRARY)/TGE.pbc: TGE.pir TGE/Rule.pir TGE/Parser.pir TGE/Grammar.pir TGE/Compiler.pir TGE/Tree.pir
-	$(PARROT) -o $(PARROT_LIBRARY)/TGE.pbc --output-pbc TGE.pir
-
-TGE/Parser.pir: TGE/Parser.pg
-	$(PARROT) $(PERL6GRAMMAR) --output=TGE/Parser.pir TGE/Parser.pg
-
-# 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:               TGE.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
-	prove -r ../../t/compilers/tge
-
-testclean:
-	$(RM_F) "../../t/compilers/tge/*.pir"
-
-clean: testclean
-	$(RM_F) \
-	    $(PARROT_LIBRARY)/TGE.pbc \
-	    TGE/Parser.pir
-
-realclean: clean
-	$(RM_F) Makefile
-
-distclean: realclean
-
-# Local variables:
-#   mode: makefile
-# End:
-# vim: ft=make:

Added: branches/one_make/runtime/parrot/library/Makefile.mak
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ branches/one_make/runtime/parrot/library/Makefile.mak	Tue Dec 29 04:42:24 2009	(r43296)
@@ -0,0 +1,23 @@
+# Track static dependencies 
+
+# XXX only a partial mapping.
+
+$(LIBRARY_DIR)/PGE/Hs.pbc : \
+    $(LIBRARY_DIR)/PGE.pbc
+
+$(LIBRARY_DIR)/PGE/Glob.pbc : \
+    $(LIBRARY_DIR)/PGE.pbc \
+    $(LIBRARY_DIR)/PGE/Dumper.pbc
+
+$(LIBRARY_DIR)/PGE/Perl6Grammar.pbc : \
+    $(LIBRARY_DIR)/PGE.pbc \
+    $(LIBRARY_DIR)/PGE/Text.pbc \
+    $(LIBRARY_DIR)/PGE/Util.pbc \
+    $(LIBRARY_DIR)/PCT/HLLCompiler.pbc
+
+$(LIBRARY_DIR)/Tcl/Glob.pbc : \
+    $(LIBRARY_DIR)/PGE.pbc \
+    $(LIBRARY_DIR)/PCT/HLLCompiler.pbc
+
+$(LIBRARY_DIR)/P6Object.pbc : \
+    $(LIBRARY_DIR)/dumper.pbc


More information about the parrot-commits mailing list