Boost logo

Boost-Build :

From: Kelly Burkhart (yahoo_at_[hidden])
Date: 2005-04-04 09:10:06


Kelly Burkhart wrote:
> I've noticed that C source is not recompiled when a header it includes
> is touched. If I change the extension of my source from .c to .cpp and
> adjust the Jamfile, everything works properly.

Sorry, premature send. Here's more info:

The projects look like this:

ex.c/ex.cpp:
#include <stdio.h>
#include "ex.h"

int main() { prt(); return 0; }

ex.h:
static void prt() { printf("prt from c\n"); }

Attached are logs generated by running 'bjam -d3' in each project
directory after touching ex.h.

-K
 --------------070007000509040709000203 Content-Type: text/plain;
name="bjamc.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="bjamc.txt"

make -- all
make -- all
time -- all: unbound
make -- <pbin/gcc/debug/threading-multi>ex
make -- <pbin/gcc/debug/threading-multi>ex
bind -- <pbin/gcc/debug/threading-multi>ex: bin/gcc/debug/threading-multi/ex
time -- <pbin/gcc/debug/threading-multi>ex: Mon Apr 4 08:30:24 2005
make -- bin/gcc/debug/threading-multi
make -- bin/gcc/debug/threading-multi
time -- bin/gcc/debug/threading-multi: Mon Apr 4 08:30:24 2005
make -- bin/gcc/debug
make -- bin/gcc/debug
time -- bin/gcc/debug: Mon Apr 4 08:30:24 2005
make -- bin/gcc
make -- bin/gcc
time -- bin/gcc: Mon Apr 4 08:30:24 2005
make -- bin
make -- bin
time -- bin: Mon Apr 4 08:30:24 2005
made stable bin
made stable bin/gcc
made stable bin/gcc/debug
made stable bin/gcc/debug/threading-multi
make -- <pbin/gcc/debug/threading-multi>ex.o
make -- <pbin/gcc/debug/threading-multi>ex.o
bind -- <pbin/gcc/debug/threading-multi>ex.o: bin/gcc/debug/threading-multi/ex.o
time -- <pbin/gcc/debug/threading-multi>ex.o: Mon Apr 4 08:30:24 2005
make -- <l.>ex.c
make -- <l.>ex.c
bind -- <l.>ex.c: ex.c
time -- <l.>ex.c: Mon Apr 4 08:29:39 2005
made stable <l.>ex.c
made stable <pbin/gcc/debug/threading-multi>ex.o
made* stable <pbin/gcc/debug/threading-multi>ex
made stable all
...found 8 targets...
 --------------070007000509040709000203 Content-Type: text/plain;
name="bjamcpp.txt"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
filename="bjamcpp.txt"

make -- all
make -- all
time -- all: unbound
make -- <pbin/gcc/debug/threading-multi>ex
make -- <pbin/gcc/debug/threading-multi>ex
bind -- <pbin/gcc/debug/threading-multi>ex: bin/gcc/debug/threading-multi/ex
time -- <pbin/gcc/debug/threading-multi>ex: Mon Apr 4 08:59:53 2005
make -- bin/gcc/debug/threading-multi
make -- bin/gcc/debug/threading-multi
time -- bin/gcc/debug/threading-multi: Mon Apr 4 08:59:53 2005
make -- bin/gcc/debug
make -- bin/gcc/debug
time -- bin/gcc/debug: Mon Apr 4 08:29:08 2005
make -- bin/gcc
make -- bin/gcc
time -- bin/gcc: Mon Apr 4 08:29:08 2005
make -- bin
make -- bin
time -- bin: Mon Apr 4 08:29:08 2005
made stable bin
made stable bin/gcc
made stable bin/gcc/debug
made stable bin/gcc/debug/threading-multi
make -- <pbin/gcc/debug/threading-multi>ex.o
make -- <pbin/gcc/debug/threading-multi>ex.o
bind -- <pbin/gcc/debug/threading-multi>ex.o: bin/gcc/debug/threading-multi/ex.o
time -- <pbin/gcc/debug/threading-multi>ex.o: Mon Apr 4 08:59:53 2005
make -- <l.-object(c-scanner)@1>ex.cpp
make -- <l.-object(c-scanner)@1>ex.cpp
bind -- <l.-object(c-scanner)@1>ex.cpp: ex.cpp
time -- <l.-object(c-scanner)@1>ex.cpp: Mon Apr 4 08:28:29 2005
make -- <l.>ex.cpp
make -- <l.>ex.cpp
bind -- <l.>ex.cpp: ex.cpp
time -- <l.>ex.cpp: Mon Apr 4 08:28:29 2005
made stable <l.>ex.cpp
make -- <l.-object(c-scanner)@1>ex.cpp
make -- <l.-object(c-scanner)@1>ex.cpp
time -- <l.-object(c-scanner)@1>ex.cpp: unbound
make -- <object(c-scanner)@1>stdio.h
make -- <object(c-scanner)@1>stdio.h
bind -- <object(c-scanner)@1>stdio.h: stdio.h
time -- <object(c-scanner)@1>stdio.h: missing
made stable <object(c-scanner)@1>stdio.h
make -- <object(c-scanner)@1#.>ex.h
make -- <object(c-scanner)@1#.>ex.h
bind -- <object(c-scanner)@1#.>ex.h: ex.h
time -- <object(c-scanner)@1#.>ex.h: Mon Apr 4 09:00:28 2005
made* newer <object(c-scanner)@1#.>ex.h
made stable <l.-object(c-scanner)@1>ex.cpp
made+ old <pbin/gcc/debug/threading-multi>ex.o
made+ update <pbin/gcc/debug/threading-multi>ex
made update all
...found 11 targets...
...updating 2 targets...
gcc.compile.c++ bin/gcc/debug/threading-multi/ex.o

"g++" -Wall -ftemplate-depth-100 -O0 -fno-inline -g -pthread -I"/opt/boost/include/boost-1_32" -c -o "bin/gcc/debug/threading-multi/ex.o" "ex.cpp"

gcc.link bin/gcc/debug/threading-multi/ex

"g++" -o "bin/gcc/debug/threading-multi/ex" "bin/gcc/debug/threading-multi/ex.o" -lrt -g -pthread

...updated 2 targets...
 --------------070007000509040709000203--


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