Boost logo

Boost-Build :

Subject: [Boost-build] Building library with flex/bison inputs with dependencies
From: Jim Hague (jim.hague_at_[hidden])
Date: 2015-12-01 11:16:13

Hi all,

I'm building a project with includes the following library rule:

lib e2kmapparse
    : e2kmapyacc.yy e2kmaplex.ll
    : <link>static

As it not usual, e2kmaplex.ll includes a header defining token values
generated by e2kmapyacc.yy. In other words, e2kmaplex.ll starts thus:

#include <cstdlib>
#include <cstring>

#include "e2kmapyacc.hpp"

But it looks like the CPP file output by flex is not scanned for include
dependencies before compiling; so on random -j builds, GCC will be launched
long before Bison is run on e2kmapyacc.yy, with unhappy results.

What's the best way I can ensure that the output from flex is scanned for
include dependencies?

I am using bjam version 2011.12.1.


(I've found pretty much this query in the list archives from 2010, but it
didn't seem to lead to a firm conclusion).

Jim Hague - jim.hague_at_[hidden]          Never trust a computer you can't lift.

Boost-Build list run by bdawes at, david.abrahams at, gregod at, cpdaniel at, john at