author | Mathieu Lacage <mathieu.lacage@sophia.inria.fr> |
Sat, 26 Mar 2011 12:40:34 +0100 | |
changeset 6 | 4e53c776f061 |
permissions | -rw-r--r-- |
6
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
1 |
How do you get started with bake ? |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
2 |
================================== |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
3 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
4 |
A typical user session to build everything::: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
5 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
6 |
wget http://www.nsnam.org/bakeconf.xml |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
7 |
bake configure -a |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
8 |
bake download |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
9 |
bake build |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
10 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
11 |
The result: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
12 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
13 |
* bakefile.xml: contains output of configuration step |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
14 |
* 'source' directory: contains downloaded code: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
15 |
** one file per tarball downloaded |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
16 |
** one directory per module |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
17 |
** one directory/objdir per module which contains all object files built |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
18 |
* 'build' directory: contains the libraries, headers, and binaries installed by each module |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
19 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
20 |
A more advanced user::: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
21 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
22 |
wget http://www.nsnam.org/bakeconf.xml |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
23 |
mkdir opt |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
24 |
cd opt |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
25 |
bake configure -c ../bakeconf.xml -a --sourcedir=../source --builddir=. --objdir=opt --set=CFLAGS=-O3 |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
26 |
bake download |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
27 |
bake build |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
28 |
# now, build debug version |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
29 |
cd .. |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
30 |
mkdir dbg |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
31 |
cd dbg |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
32 |
bake configure -c ../bakeconf.xml -a --sourcedir=../source --builddir=. --objdir=dbg --set=CFLAGS=-O0 |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
33 |
bake build |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
34 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
35 |
The result: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
36 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
37 |
* opt/bakefile.xml contains optimized build configuration |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
38 |
* dbg/bakefile.xml contains debug build configuration |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
39 |
* source contains all source code: |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
40 |
** source/module/opt contains optimized object files |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
41 |
** source/module/dbg contains debug object files |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
42 |
* opt/ contains headers, libraries, binaries for optimized build |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
43 |
* dbg/ contains headers, libraries, binaries for debug build |
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
44 |
|
4e53c776f061
quick intro to using bake
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff
changeset
|
45 |