-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathdoc
64 lines (57 loc) · 2.16 KB
/
doc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
Supported commands:
prepare_sources Prepare sources
generate_spec Generate spec file
build_rpm Build rpm
build_iso Build iso
Prepare sources:
In current directory commad will make:
1) Write file "module.config" with config template
2) Create directory structure for rpm build
.
├─── rpm
├── BUILD
├── BUILDROOT
├── RPMS
├── SOURCES
├── SPECS
└── SRPMS
3) Create directory "src" for module source code
4) Create directory "patches" for patches
5) Create directory "firmware" for firmware binary files
Generate Spec:
Steps required by user:
Before generate spec run prepare_sources command
Edit module.config file
Command will make:
1) Check if spec already exist, when yes write warning and continue!!!
2) Add patches from src/patches directory into spec
3) Add firmwares from src/firmware directory into spec
4) Create spec in rpm/SPECS directory with values defined in config
Build RPM:
Steps required by user:
Successfully done generate_spec command
Command will make:
1) Stage1: Prepare source
a) Check makefile
b) Pack source code from src into source archive
c) Pack firmware files from firmware and add into source archive
d) Write source archive into rpm/SOURCES
e) Copy patches from patches into rpm/SOURCES
2) Stage2: Build SRPMs and RPMs
a) Just run rpmbuild
Steps in spec file:
a) Build modules
b) Generate depmod.conf
c) Generate greylist.txt
d) Install modules, depmod.conf, greylist.txt, Module.symvers-%{_target_cpu}
e) Run find-requires, find-provides
f) Post phase: call weak-modules --add-modules
g) Write final rpm, srpm
Build ISO:
1) Collect rpms/srpms for all arches
NOTE: srpms will be skiped if it is not enabled in config!
2) Prepare iso filesystem
3) Prepare repository
4) Add rpms/srpms into repository
5) Write repository into iso
6) Cleanup temp directories