1 |
On Tue, 30 Jan 2007 08:41:56 +0100 Luca Barbato <lu_zero@g.o> |
2 |
wrote: |
3 |
| Ciaran McCreesh wrote: |
4 |
| > On Tue, 30 Jan 2007 08:30:40 +0100 Luca Barbato <lu_zero@g.o> |
5 |
| > wrote: |
6 |
| > | Ciaran McCreesh wrote: |
7 |
| > | > What is the best way to handle packages that require parts of |
8 |
| > | > tr1? The options appear to be: |
9 |
| > | |
10 |
| > | * have the application bundle a static implementation and switch |
11 |
| > | to system on at configure time as done for other libs? |
12 |
| > |
13 |
| > At something like five megs of code per application? |
14 |
| |
15 |
| fine by me. (5mb if you use everything, less if you use just certain |
16 |
| bits I hope) |
17 |
|
18 |
If you're using boost as your source (pretty much the only way that |
19 |
doesn't involve either paying money or only supporting compilers that |
20 |
already ship tr1 anyway), pulling in even a little bit of the library |
21 |
will almost certainly require a large chunk of boost. For example, to |
22 |
use just the shared_ptr code, bcp says you need: |
23 |
|
24 |
* boost.config (250KBytes) |
25 |
* the boost preprocessor library (2MBytes) |
26 |
* the boost type traits library (670KBytes) |
27 |
* the boost metaprogramming library (200KBytes) |
28 |
* various other random smaller things |
29 |
|
30 |
bringing it up to 3.3MBytes of code, about 3.2MBytes of which is |
31 |
compiler bug workarounds and boost-review-process-induced mutual |
32 |
masturbation. |
33 |
|
34 |
The entire <tr1/memory> implementation that's shipped with g++-4.1, |
35 |
meanwhile, is something like 30KBytes. Unfortunately it only works |
36 |
g++-4.1, so it's no use for bundling as part of an application. |
37 |
|
38 |
-- |
39 |
Ciaran McCreesh |
40 |
Mail : ciaranm at ciaranm.org |
41 |
Web : http://ciaranm.org/ |
42 |
Paludis, the secure package manager : http://paludis.pioto.org/ |