cvsuser 03/10/02 06:24:16
Modified: config/gen/makefiles imcc.in root.in
Log:
build imcc as parrot - 5: more Makefile cleanup
Revision Changes Path
1.32 +4 -80 parrot/config/gen/makefiles/imcc.in
Index: imcc.in
===================================================================
RCS file: /cvs/public/parrot/config/gen/makefiles/imcc.in,v
retrieving revision 1.31
retrieving revision 1.32
diff -u -w -r1.31 -r1.32
--- imcc.in 2 Oct 2003 12:01:15 -0000 1.31
+++ imcc.in 2 Oct 2003 13:24:16 -0000 1.32
@@ -1,93 +1,17 @@
-O = ${o}
-A = ${a}
-EXE = ${exe}
-PARROTLIB = ${blib_lib_libparrot_a}
-
RM_F = ${rm_f}
-INC=../../include/parrot
-
-H_FILES = $(INC)/parrot.h imc.h stacks.h cfg.h \
- instructions.h cfg.h debug.h sets.h symreg.h \
- pbc.h optimizer.h parser.h imcparser.h
-
-
-IMCC_O_FILES = imcparser$(O) imclexer$(O) imc$(O) stacks$(O) symreg$(O) \
- instructions$(O) cfg$(O) sets$(O) debug$(O) \
- optimizer$(O) pbc$(O) main$(O) parser_util$(O) jit$(O) pcc$(O)
-
-
-O_FILES = $(IMCC_O_FILES) ../../$(PARROTLIB)
-
-#DO NOT ADD C COMPILER FLAGS HERE
-#Add them in Configure.pl--look for the
-#comment 'ADD C COMPILER FLAGS HERE'
-
-CFLAGS = ${ccflags} ${cc_debug} ${ccwarn} ${cc_hasjit} ${cg_flag} -I../../include
-
-C_LIBS = ${libs}
-
-CC = ${cc}
-PERL = ${perl}
-YACC = ${yacc}
-LEX = ${lex}
-TOUCH = perl -e ${PQ}open(A,q{>>},$$_) or die foreach @ARGV${PQ}
-
-LD = ${ld}
-LD_SHARED = ${ld_shared}
-LD_OUT = ${ld_out}
-LINK = ${link}
-LINKFLAGS=${linkflags} ${ld_debug}
-
-#
-# This is set to MAKE=$make if your $make command doesn't
-# do it for you.
-#
-${make_set_make}
-MAKE_C = ${make_c}
-
-all : flags_dummy imcc${exe}
-
-flags_dummy:
- echo Compiling with:
- @$(PERL) ../../tools/dev/cc_flags.pl ./CFLAGS echo $(CFLAGS) xx$(O) -c xx.c
-
-../../$(PARROTLIB):
- $(MAKE_C) ../.. $(PARROTLIB)
-
-# The .flag files are needed because we are keeping some derived files in CVS,
-# which does not keep accurate timestamps on the files, relative to each other.
-# Note that YACC or LEX may be null commands, so we must `touch` all the
-# target files, instead of just the .flag files.
-imcc.y.flag imcparser.c imcparser.h: imcc.y
- $(YACC) imcc.y -d -o imcparser.c
- $(TOUCH) imcc.y.flag imcparser.c imcparser.h
-
-imcc.l.flag imclexer.c: imcc.l
- $(LEX) -oimclexer.c imcc.l
- $(TOUCH) imcc.l.flag imclexer.c
-
-.c$(O):
- @$(PERL) ../../tools/dev/cc_flags.pl ./CFLAGS $(CC) $(CFLAGS) ${cc_exe_out}$@
-c $<
-
-$(IMCC_O_FILES) : $(H_FILES)
+all :
+ @echo "Don't make imcc, make parrot"
clean:
$(RM_F) core \
- $(IMCC_O_FILES) \
+ *${o} \
imcparser.output \
- imcc${exe} \
t/*/*.out t/*/*.imc \
t/*/*.pbc t/*/*.o t/*/*.stabs.s t/*/*.pasm
realclean: clean
- $(RM_F) a.pasm \
- imcparser.* \
- imclexer.*
-
-imcc${exe}: $(O_FILES)
- $(LINK) $(LD_OUT)imcc${exe} $(LINKFLAGS) $(O_FILES) $(C_LIBS)
-test: imcc${exe}
+test:
$(PERL) t/harness
1.132 +4 -2 parrot/config/gen/makefiles/root.in
Index: root.in
===================================================================
RCS file: /cvs/public/parrot/config/gen/makefiles/root.in,v
retrieving revision 1.131
retrieving revision 1.132
diff -u -w -r1.131 -r1.132
--- root.in 2 Oct 2003 12:01:15 -0000 1.131
+++ root.in 2 Oct 2003 13:24:16 -0000 1.132
@@ -90,14 +90,16 @@
GEN_HEADERS = $(INC)/vtable.h $(INC)/oplib/core_ops.h \
$(INC)/oplib/core_ops_prederef.h \
- $(INC)/oplib/core_ops_switch.h $(INC)/jit_emit.h
+ $(INC)/oplib/core_ops_switch.h
GEN_SOURCES = core_ops.c core_ops_prederef.c fingerprint.c nci.c \
core_ops_switch.c jit_cpu.c exec_cpu.c
GEN_MODULES = lib/Parrot/OpLib/core.pm
-FLUID_FILES = $(GEN_OPSFILES) $(GEN_HEADERS) $(GEN_SOURCES) $(GEN_MODULES)
+# the dependencies of jit_emit.h are done explicitely
+# including this file in GEN_HEADERS causses unnecessary recompile of all
+FLUID_FILES = $(GEN_OPSFILES) $(GEN_HEADERS) $(GEN_SOURCES) $(GEN_MODULES)
$(INC)/jit_emit.h
###############################################################################