Attached, find a patch that does a first pass of this.
I skipped the SDL IMC's because one of them gave me trouble, but didn't include them in the root.in
I skipped the PASM files, as they appear to have PIR counterparts.
There are two files that are commented out, as they also gave me trouble.
It seems there are quite a few cases in root.in where $(TEST_PROG) is used, where .${slash}$(TEST_PROG) would probably be better suited.
I'll not apply this directly. Regards.
Dan Sugalski (via RT) wrote:
# New Ticket Created by Dan Sugalski # Please include the string: [perl #31680]
# in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org:80/rt3/Ticket/Display.html?id=31680 >
All the .imc and .pasm files in the library which aren't meant to be .included should get compiled to bytecode as part of parrot's build procedure.
Index: root.in =================================================================== RCS file: /cvs/public/parrot/config/gen/makefiles/root.in,v retrieving revision 1.237 diff -b -u -r1.237 root.in --- root.in 13 Sep 2004 09:17:35 -0000 1.237 +++ root.in 23 Sep 2004 03:20:35 -0000 @@ -164,6 +164,32 @@ GEN_MODULES = lib/Parrot/OpLib/core.pm +GEN_LIBRARY = \ + runtime/parrot/library/config.pbc \ + runtime/parrot/library/Data/Dumper/Base.pbc \ + runtime/parrot/library/Data/Dumper/Default.pbc \ + runtime/parrot/library/Data/Dumper.pbc \ + runtime/parrot/library/Data/Escape.pbc \ + runtime/parrot/library/Data/Sort.pbc \ + runtime/parrot/library/dumper.pbc \ + runtime/parrot/library/Getopt/Long.pbc \ + runtime/parrot/library/libpcre.pbc \ + runtime/parrot/library/ncurses.pbc \ + runtime/parrot/library/parrotlib.pbc \ + runtime/parrot/library/pcre.pbc \ + runtime/parrot/library/Stream/Base.pbc \ + runtime/parrot/library/Stream/Buffer.pbc \ + runtime/parrot/library/Stream/Combiner.pbc \ + runtime/parrot/library/Stream/Coroutine.pbc \ + runtime/parrot/library/Stream/Filter.pbc \ + runtime/parrot/library/Stream/Lines.pbc \ + runtime/parrot/library/Stream/ParrotIO.pbc \ + runtime/parrot/library/Stream/Replay.pbc \ + runtime/parrot/library/Stream/Sub.pbc \ + runtime/parrot/library/Stream/Writer.pbc + #runtime/parrot/library/Data/Replace.pbc \ + #runtime/parrot/library/postgres.pbc \ + # the dependencies of jit_emit.h are done explicitely # including this file in GEN_HEADERS causses unnecessary recompile of all FLUID_FILES = \ @@ -171,10 +197,12 @@ $(GEN_HEADERS) \ $(GEN_SOURCES) \ $(GEN_MODULES) \ + $(GEN_LIBRARY) \ $(INC)/jit_emit.h \ runtime/parrot/include/parrotlib.pbc + ############################################################################### # # OTHER FILE GROUPS: @@ -412,6 +440,9 @@ .c$(O) : @$(PERL) tools/dev/cc_flags.pl ./CFLAGS $(CC) "" $(CFLAGS) -I$(@D) ${cc_o_out}$@ -c $< +%.pbc:%.imc + @.${slash}$(TEST_PROG) -o $@ $< + ############################################################################### # # USER TARGETS: @@ -420,7 +451,7 @@ # ############################################################################### -all : flags_dummy $(TEST_PROG) runtime/parrot/include/parrotlib.pbc runtime/parrot/include/config.fpmc docs $(LIBNCI_SO) +all : flags_dummy $(TEST_PROG) runtime/parrot/include/parrotlib.pbc runtime/parrot/include/config.fpmc docs $(LIBNCI_SO) $(GEN_LIBRARY) .SUFFIXES : .c .h .pmc .dump $(O) .str