It's probably due to FLEX 2.5.4a being the newest version available in Cygwin?
"/cygdrive/c/work/urjtag/trunk/jtag/src/bsdl/bsdl_flex.l", line 118: unrecognized %option: bison-bridge
"/cygdrive/c/work/urjtag/trunk/jtag/src/bsdl/bsdl_flex.l", line 119: unrecognized %option: reentrant
As a workaround, the BSDL part can be disabled during "configure" using the --disable-bsdl option.
Logged In: YES
user_id=156321
Originator: NO
Right, apart from the mentioned options, the BSDL lexer makes use of a couple of advanced flex features that aren't available with 2.5.4a.
In contrast to the bison-locations issue with the SVF lexer, these aren't optional but mandatory for the parsing functionality. flex 2.5.33 is the minimum this time.
Workaround: configure --disable-bsdl
Fix: Upgrade to 2.5.33 or later
I could add a check for flex >= 2.5.33 to configure.ac and check for the presence of bsdl_flex.c if flex is too old:
if (flex >= 2.5.33)
<all ok>
else if (src/bsdl/bsdl_flex.c exists)
<all ok>
else
<disable BSDL>
Logged In: YES
user_id=478715
Originator: YES
That check would be a perfect solution + a note about flex versions could be made in UrJTAG.txt in the section about requirements for compiling source from Subversion
Logged In: YES
user_id=156321
Originator: NO
configure has been updated to exclude BSDL if flex is not recent enough (r930). If bsdl_flex.c exists, configure assumes that things are properly prepared and doesn't care about flex' version.
--enable-bsdl/--disable-bsdl still overrides this detection at any time.