Project

General

Profile

Qmpfw » History » Version 16

Victor Oncins, 03/08/2012 04:40 PM

1 10 Victor Oncins
h1. qmpfw
2 1 Pau Escrich
3 10 Victor Oncins
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 14 Victor Oncins
    @git clone git://qmp.cat/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 15 Victor Oncins
* @Makefile@: the main makefile
21 8 Pau Escrich
22 15 Victor Oncins
* @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 15 Victor Oncins
* @build@: here you will have all needed sources 
25 5 Pau Escrich
26 15 Victor Oncins
* @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 15 Victor Oncins
* @dl@: download folder for OpenWRT packages
29 5 Pau Escrich
30 15 Victor Oncins
* @configs@: config files for each kind of hardware. These are the default ones provided by qmpfw
31 8 Pau Escrich
32 15 Victor Oncins
* @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 11 Victor Oncins
* @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 11 Victor Oncins
* @make V=99 J=2 T=rspro build@
42 1 Pau Escrich
43 1 Pau Escrich
To see list of avaiable targets run:
44 11 Victor Oncins
* @make list_targets@
45 1 Pau Escrich
46 4 Pau Escrich
This will update all targets
47 11 Victor Oncins
* @make update@ 
48 9 Pau Escrich
(this will update qmp and eigennet feeds, not openwrt source)
49 3 Pau Escrich
50 3 Pau Escrich
This will update only rspro target
51 11 Victor Oncins
* @make T=rspro update@
52 1 Pau Escrich
53 1 Pau Escrich
To run menuconfig (from openwrt):
54 12 Victor Oncins
* @make T=rspro menuconfig@
55 1 Pau Escrich
56 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
57 1 Pau Escrich
58 1 Pau Escrich
To run kernel menuconfig (from openwrt):
59 16 Victor Oncins
* @make T=rspro kernel_menuconfig@
60 1 Pau Escrich
61 8 Pau Escrich
To run the initial checkout:
62 16 Victor Oncins
* @make T=rspro checkout@
63 1 Pau Escrich
64 1 Pau Escrich
To clean specific target:
65 16 Victor Oncins
* @make T=rspro clean@
66 1 Pau Escrich
67 1 Pau Escrich
To clean all targets:
68 16 Victor Oncins
* @make clean@
69 9 Pau Escrich
70 9 Pau Escrich
To clean just qmp packages from a target
71 16 Victor Oncins
* @make T=rspro clean_qmp@
72 1 Pau Escrich
73 1 Pau Escrich
To configure some general parameters from qMp you can run:
74 16 Victor Oncins
* @make config@
75 4 Pau Escrich
76 1 Pau Escrich
TODO: This feature is missing
77 1 Pau Escrich
78 1 Pau Escrich