Boost logo

Boost-Build :

Subject: Re: [Boost-build] Building projects that need generated header files from other projects ?
From: Meindert Oldenburger (meindert66_at_[hidden])
Date: 2011-06-03 03:59:12


I tried the nightly build, and the problem seems to be disappeared.

Meindert

2011/6/1 Meindert Oldenburger <meindert66_at_[hidden]>

> Hello,
>
> First of all i try to replace the current makefile system with bjam
> Jamfiles. The code base has around 330 makefiles and these makefiles are
> configured for 3 platforms (windows, AIX and Linux). In several projects,
> source code is generated, what is needed for other projects as well.
>
> All seems to work, except if source and header files are generated by
> flex/bison and are needed for other projects, then the compilation, and I,
> are confused.
>
> Example, there lot more of these dependencies.
>
> $(TOP)/appl/econf
> $(TOP)/cfm
>
> Initially i'm building an executable "econf" that needs a library "cfm"
> Jamroot:
> build-project appl ;
>
> Jamfile econf:
> exe econf
> :
> econf.c
> ../../cfm//cfm
> : ;
>
> Jamfile cfm:
> import lex ;
> using bison ;
> lib scanner_expr : scanner.l expr.y : <link>static <include>. ;
> lib cfm
> :
> [ glob *.c : chownnt.c ]
> scanner_expr
> :
> <def-file>cfm.def
> <link>static
> <implicit-dependency>scanner_expr
> ;
>
>
> The following error appears after building from $(TOP):
> ...patience...
> ...found 2218 targets...
> ...updating 16 targets...
> gcc.compile.c build/cfm/gcc-4.5.3/debug/link-static/cfmparse.o
> cfm/cfmparse.c:239:18: fatal error: expr.h: No such file or directory
> compilation terminated.
>
> "g++" -x c -O0 -fno-inline -Wall -pedantic -g -DDLLEXP= -DDLLIMP=
> -I"/usr/include/libxml2" -I"/usr/local/include/zlib" -I"build" -I"include"
> -I"include/msg" -I"rtl/include" -c -o
> "build/cfm/gcc-4.5.3/debug/link-static/cfmparse.o" "cfm/cfmparse.c"
>
> It seems target scanner_expr is not build and there is no compile include:
> -I"build/cfm/gcc-4.5.3/debug/link-static" for the expr.h .
>
>
> I'm lost within the implicit-dependency configuration. How should i do
> this ?
> My idea about bjam is that you could everywhere start your build process,
> is this right ?
>
>
> Regards,
> Meindert
>
>



Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk