Summary: Makefile putting parser into header
                 Project: Warzone Resurrection Project
            Submitted by: shevek
            Submitted on: Friday 05/25/2007 at 20:12
                Category: None
                Severity: 5 - Blocker
                Priority: 5 - Normal
                  Status: None
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
                 Release: svn
        Operating System: GNU/Linux



The .tab.h file contains the entire parser. This is getting included into the
lexer, and causing a link failure for duplicate symbols. This is why:

      1 %.tab.h %.tab.c: %.y
      2     $(YACC) $(YFLAGS) $(AM_YFLAGS) -o$@ $<

This expands to:
bison -y  -d -oaudp_parser.tab.h audp_parser.y

which is not what is desired. We want -oaudi_parser.tab.c and let the .h file
be an auxiliary.

Perhaps what you mean is
$(YACC) $(YFLAGS) $(AM_YFLAGS) -o$*.tab.c $<

Can't work out how this ever built - I went back through the history and they
all fail now. But there's the fix anyway.


Reply to this item at:


  Message sent via/by Gna!

Warzone-dev mailing list

Reply via email to