On Sunday 2010-10-31 16:42, Philip Herron wrote: >> >> While trying to utilize Autotools in a preexisting project that >> previously just relied on Makefiles, I came across ylwrap failing for >> some absurd, unknown reason. I couldn't help but run sh -x and debug it >> piecewise. >> >> So what's ultimately done is running flex inside a temp directory, >> >> flex /home/jengelh/code/iproute2/tc/emp_ematch_lex.l >> >> It turns out flex produces a file called lex.ematch_.c, which is >> something ylwrap so does not expect at all - it only checks for >> what's in pairlist="yy.lex.c emp_ematch_lex.c". >> >> I can use AM_LFLAGS = -o yy.lex.c to work around it, but that feels like >> an ugly hack. What's up with flex here? > >Ylwrap renames your Lex and Yacc files to their respective <source >names.{c,h}> So if your lexer was foo.l it would output foo.c not >lex.yy.c which is what your expecting.
I'm not expecting anything, ylwrap is. For this very rename that ylwrap is supposed to do, it is expecting to see lex.yy.c or <source_name>.c from the flex subcommand it calls, but never gets that.