On Sun, 25 Aug 2002, Tom Hughes wrote: > In message <20020825155505$[EMAIL PROTECTED]> > Tom Hughes (via RT) <[EMAIL PROTECTED]> wrote: > > > Recent changes to imcc make it require a working Parrot_dlopen but > > unfortunately as things stand it never does work because Configure.pl > > never sets HAS_DLOPEN so Parrot_dlopen is also stubbed out. > > > > There is a second problem in that platform.c only include dlfcn.h if > > a particular symbol is defined but that symbol is not defined until > > parrot.h is included which is after the include of dlfcn.h. > > Here's a patch that addresses both those issues and makes imcc > work again.
Here's a patch that hopefully addresses the makefile issue. imcc.in belongs in config/gen/makefiles/. Could you please try it out to see if it works on your platform? /s
O = ${o} RM_F = ${rm_f} INC=../../include/parrot H_FILES = $(INC)/parrot.h imc.h imcparser.h stacks.h cfg.h \ instructions.h cfg.h debug.h sets.h anyop.h O_FILES = imcparser$(O) imclexer$(O) imc$(O) stacks$(O) symreg$(O) \ instructions$(O) cfg$(O) sets$(O) debug$(O) anyop$(O) \ ../../platform$(O) #DO NOT ADD C COMPILER FLAGS HERE #Add them in Configure.pl--look for the #comment 'ADD C COMPILER FLAGS HERE' CFLAGS = ${ccflags} -I../../include C_LIBS = ${libs} CC = ${cc} PERL = ${perl} MAKE_F=${make} YACC = bison -v -y LEX = flex all : imcc cd ../.. && $(MAKE) shared && $(RM_F) parrot${exe} && $(MAKE) imcparser.c imcparser.h : imcc.y $(YACC) -d -o imcparser.c imcc.y imclexer.c : imcc.l $(HEADERS) $(LEX) imcc.l .c$(O): $(CC) $(CFLAGS) ${cc_exe_out}$@ -c $< clean: $(RM_F) core $(RM_F) $(O_FILES) $(RM_F) imcparser.output $(RM_F) imcc realclean: clean $(RM_F) a.pasm $(RM_F) imcparser.* $(RM_F) imclexer.* imcc: $(O_FILES) $(CC) ${ld_out}imcc $(LDFLAGS) $(O_FILES) $(C_LIBS)
Index: config/gen/makefiles.pl =================================================================== RCS file: /cvs/public/parrot/config/gen/makefiles.pl,v retrieving revision 1.2 diff -u -r1.2 makefiles.pl --- config/gen/makefiles.pl 29 Jul 2002 04:41:24 -0000 1.2 +++ config/gen/makefiles.pl 25 Aug 2002 20:24:36 -0000 @@ -17,6 +17,7 @@ genfile('config/gen/makefiles/miniperl.in', 'languages/miniperl/Makefile'); genfile('config/gen/makefiles/scheme.in', 'languages/scheme/Makefile'); genfile('config/gen/makefiles/perl6.in', 'languages/perl6/Makefile'); + genfile('config/gen/makefiles/imcc.in', 'languages/imcc/Makefile'); } -1; \ No newline at end of file +1;