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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
------------------------------------------------------
README.source - for ubuntu/debian chromium-browser
Author: Alexander Sack <asac@ubuntu.com>
------------------------------------------------------
Content:
I. Packaging overview
II. Upstream (orig.tar.gz)
III. Get sources for channels (aka dev, beta, release)
IV. Efficient Upstream orig.tar.gz production
V. Patching
------
I. Packaging overview
+ Obtaining latest packaging:
bzr branch lp:~chromium-browser/chromium-browser/chromium-browser.head
+ this gives you a debian/ only bzr branch
+ to suggested way to build is using bzr-builddeb; for that
1. put the orig.tar.gz matching your debian/changelog in --orig-dir
of bzr-builddeb (default: ..)
2. run: bzr bd --merge --dont-purge --builder='debuild -b'
3. this gives you a build tree and the results in --build-dir
and --result-dir
II. Upstream (orig tar)
The package provides means to easily grab the _current_ and the latest
upstream snapshot of chromium.
./debian/rules gets the pristine upstream snapshot for you and then strips
a lots of not used subdirectories - in particular those with potential
licensing issues - before packing things up in a tarball.
The nested tarball is packed using _xz_ do get a minimal result.
Examples on how to get orig.tar.Foo for snapshots:
+ get latest upstream snapshot:
./debian/rules get-orig-source
+ get current upstream snapshot (by changelog):
./debian/rules get-current-source
III. Get sources for channels (aka dev, beta, stable)
The packaging provides a feature to produce orig.tar.gz for release channels,
like dev, beta, and stable builds. To get the latest beta build, append
CHANNEL=beta to your debian/rules line, e.g.:
+ ./debian/rules get-orig-source CHANNEL=beta
IV. Efficient Upstream orig.tar.gz production
The packaging provides a feature to speed up the orig.tar.gz production by
keeping a local mirror of the chromium checkouts; this reduces the
network overhead considerably and allows you to regularly create tarballs
rather quickly. To do that, append LOCAL_BRANCH=/local/chromium/checkout
to your debian/rules invocation, e.g.
+ produce latest upstream snapshot:
./debian/rules get-orig-source LOCAL_BRANCH=/home/asac/chromium/
+ produce current upstream snapshot (by changelog):
./debian/rules get-current-source LOCAL_BRANCH=/home/asac/chromium/
+ produce latest beta channel tarball:
./debian/rules get-orig-source LOCAL_BRANCH=/home/asac/chromium/ CHANNEL=beta
V. Patching
We use quilt for the sake of efficiency to code and update patches.
if you want to create a patch or write a patch, at best kick off a build
and break it after the current patches have been applied. Then set up quilt
and cd into the chromium tree:
export QUILT_PATCHES=`pwd`/debian/patches
cd build-tree/src/
and start working on quilt patches as usual, e.g.
quilt applied
quilt pop
quilt refresh
...
|