On Thu, 29 Aug 2002, Melvin Smith wrote: > I can live with the warning, as long as it compiles under traditional > lex and flex. Don't waste too much effort polishing imcc since it will be > getting a new interface eventually and might even be rewritten to self-host > on Parrot at some point. (Hey I'm dreaming BIG)
This is all very good. For the moment, however, it'd be nice if we could make the barrier to running languages/perl6 as low as possible, which means making imcc build as portably as possible. I'm also using this as an excuse to learn a bit about Parrot's Configure mechanism. Alas, I've hit another snag, this one having to do with the way makefiles are generated. By default, traditional yacc puts its output files in y.tab.[ch]. Thus my imcc/Makefile currently has $(YACC) -d -v imcc.y mv y.tab.c imcparser.c mv y.tab.h imcparser.h That's no problem, and works with YACC='yacc', 'bison -y', or 'byacc'. However, the intermediate filename 'y.tab.c' isn't necessarily portable, if I remember my Windows and VMS lore correctly. However, those platforms probably have bison, which understands the simpler -o imcparser.c output option. Thus what I'd really like to do here is generate two different makefile fragments, depending on whether or not the user is using bison or (yacc or byacc). With the current substitution-driven makefile.in system, it's not obvious to me how best to do that. Anyone have any suggestions? -- Andy Dougherty [EMAIL PROTECTED] Dept. of Physics Lafayette College, Easton PA 18042