Project

General

Profile

Qmpfw » History » Version 8

Pau Escrich, 10/09/2011 09:18 PM

1 1 Pau Escrich
h1. Qmpfw
2 1 Pau Escrich
3 1 Pau Escrich
Qmpfw is a tool for developers to create a development enviroment for qMp.
4 1 Pau Escrich
5 1 Pau Escrich
Basically it consists in one Makefile, so it is called using `make` command.
6 1 Pau Escrich
7 6 Pau Escrich
h3. Download the code
8 6 Pau Escrich
Read Only URL:
9 6 Pau Escrich
10 7 Pau Escrich
    @http://qmp.cat/git/qmpfw.git@
11 6 Pau Escrich
12 6 Pau Escrich
Developer URL:
13 6 Pau Escrich
14 7 Pau Escrich
    @ssh://gitosis@qmp.cat:221/qmpfw.git@
15 6 Pau Escrich
16 2 Pau Escrich
h3. Directory structure
17 2 Pau Escrich
18 8 Pau Escrich
There are several directories and files. This is the functionallity for each of them:
19 1 Pau Escrich
20 8 Pau Escrich
* Makefile: the main makefile
21 8 Pau Escrich
22 8 Pau Escrich
* targets.mk: file which contains all information related with targets. If you want to add a new supported device you must edit it
23 8 Pau Escrich
24 1 Pau Escrich
* build: here you will have all needed sources 
25 5 Pau Escrich
26 1 Pau Escrich
** build/configs: if you do some change in config file using `menuconfig` option, the new config is placed here (and also in destination target)
27 5 Pau Escrich
28 1 Pau Escrich
* dl: download folder for OpenWRT packages
29 5 Pau Escrich
30 1 Pau Escrich
* configs: config files for each kind of hardware. These are the default ones provided by qmpfw
31 8 Pau Escrich
32 8 Pau Escrich
* images: output directory for compiled images, each of them has a different timestamp, so you can have as many as you want
33 1 Pau Escrich
 
34 2 Pau Escrich
h3. Command options
35 2 Pau Escrich
36 1 Pau Escrich
To compile a qMp image from scratch, you need to specify the target (next example with target=rspro):
37 1 Pau Escrich
This command will run all necessary commands to compile the image. After the compilation you can see the OpenWRT code in directory: build/[target]
38 4 Pau Escrich
* make T=rspro build
39 3 Pau Escrich
40 1 Pau Escrich
Also you can specify the number of parallel processes for compilation and the verbose level:
41 1 Pau Escrich
* make V=99 J=2 T=rspro build
42 1 Pau Escrich
43 1 Pau Escrich
To see list of avaiable targets run:
44 1 Pau Escrich
* make list_targets
45 1 Pau Escrich
46 1 Pau Escrich
To update targets (this will update qmp and eigennet feeds, not openwrt source):
47 1 Pau Escrich
48 4 Pau Escrich
49 1 Pau Escrich
This will update all targets
50 4 Pau Escrich
* make update 
51 3 Pau Escrich
52 3 Pau Escrich
This will update only rspro target
53 4 Pau Escrich
* make T=rspro update
54 1 Pau Escrich
55 1 Pau Escrich
To run menuconfig (from openwrt):
56 4 Pau Escrich
* make T=rspro menuconfig
57 1 Pau Escrich
58 1 Pau Escrich
After that, the new config file will be applied to destination target and also it will by copied inside build/configs directory
59 1 Pau Escrich
60 1 Pau Escrich
To run kernel menuconfig (from openwrt):
61 1 Pau Escrich
* make T=rspro kernel_menuconfig
62 1 Pau Escrich
63 8 Pau Escrich
To run the initial checkout:
64 8 Pau Escrich
* make T=rspro checkout
65 1 Pau Escrich
66 1 Pau Escrich
To clean specific target:
67 1 Pau Escrich
* make T=rspro clean
68 1 Pau Escrich
69 1 Pau Escrich
To clean all targets:
70 1 Pau Escrich
* make clean
71 1 Pau Escrich
72 1 Pau Escrich
To configure some general parameters from qMp you can run:
73 1 Pau Escrich
* make config
74 4 Pau Escrich
75 1 Pau Escrich
TODO: This feature is missing
76 1 Pau Escrich
77 1 Pau Escrich