Boost logo

Boost :

From: bjorn_at_[hidden]
Date: 2005-09-25 19:03:30

On Saturday 24 September 2005 21:38, Bjørn Roald wrote:
> John Maddock said:
> > I guess the we'd just have to try it and see if any current libraries
> > break
> > this idiom.
> I will try some more ...

I did some testing with my modified bcp tool,

First I called bcp to copy some modules to /tmp/bcp and replace namespace
boost with spoost "spooked boost" :)

[bjorn_at_frodo boost]$ tools/bcp/run/bcp --cvs --namespace=spoost filesystem
program_options boost-build.jam build Jamrules project-root.jam /tmp/bcp/
[bjorn_at_frodo debug]$ cd /tmp/bcp/
[bjorn_at_frodo bcp]$ ls -l
total 44
drwxrwxr-x 3 bjorn bjorn 4096 Sep 25 23:47 bin
-r--r--r-- 1 bjorn bjorn 482 Sep 25 23:44 boost-build.jam
-r--r--r-- 1 bjorn bjorn 616 Sep 25 23:44 boost.css
-r--r--r-- 1 bjorn bjorn 6308 Sep 25 23:44 boost.png
-r--r--r-- 1 bjorn bjorn 435 Sep 25 23:44 Jamrules
drwxrwxr-x 9 bjorn bjorn 4096 Sep 25 23:40 libs
-r--r--r-- 1 bjorn bjorn 75 Sep 25 23:44 project-root.jam
drwxrwxr-x 18 bjorn bjorn 4096 Sep 25 23:44 spoost
drwxrwxr-x 3 bjorn bjorn 4096 Sep 25 23:45 stage
drwxrwxr-x 3 bjorn bjorn 4096 Sep 25 23:44 tools

I then compiled
with plain "bjam" command in those directories
no errors during build and test run as far as I saw.

here are some checks I did on one of the test programs afterwords

[bjorn_at_frodo bcp]$
cd /tmp/bcp/bin/boost/libs/program_options/test/parsers_test.test/gcc/debug
[bjorn_at_frodo debug]$ ldd ./parsers_test => /usr/lib/ (0x00101000) => /lib/tls/ (0x009b6000) => /lib/ (0x0098e000) => /lib/tls/ (0x00a69000)
        /lib/ (0x0099c000)
[bjorn_at_frodo debug]$ ./parsers_test
Running 1 test case...

*** No errors detected
[bjorn_at_frodo debug]$ nm -C ./parsers_test | grep boost | wc
      0 0 0
[bjorn_at_frodo debug]$ nm -C ./parsers_test | grep spoost | wc
   2491 35631 785706

Note that there are no "boost" string in any binary symbols, while all 2491
boost symbols references are renamed "spoost" in binary.

I also attached two source files so you can see the effect on the source.

As far as I can see, I have successfully demonstrated feasability of
an automated production line of boost library with modification to its

A few questions before I go on to the next step:

Is there a simple way of getting bcp to copy all of boost, i.e. without having
to list all modules?
And then; how do I run test on all of "spoost" and generate test reports that
are suitable for evaluation? I guess there is a target in of
some sort I can try.


Boost list run by bdawes at, gregod at, cpdaniel at, john at