Commit | Line | Data |
---|---|---|
7217e0ca ML |
1 | ------------------------------------------------------ |
2 | Quick Guide To Patching This Package For The Impatient | |
3 | ------------------------------------------------------ | |
4 | ||
5 | 1. Make sure you have quilt installed | |
6 | 2. Unpack the package as usual with "dpkg-source -x" | |
7 | 3. Run the "patch" target in debian/rules | |
8 | 4. Create a new patch with "quilt new" (see quilt(1)) | |
9 | 5. Edit all the files you want to include in the patch with "quilt edit" | |
10 | (see quilt(1)). | |
11 | 6. Write the patch with "quilt refresh" (see quilt(1)) | |
12 | 7. Run the "clean" target in debian/rules | |
13 | ||
14 | Alternatively, instead of using quilt directly, you can drop the patch in to | |
15 | debian/patches and add the name of the patch to debian/patches/series. | |
16 | ||
17 | ------------------------------------ | |
18 | Guide To The X Strike Force Packages | |
19 | ------------------------------------ | |
20 | ||
21 | The X Strike Force team maintains X packages in git repositories on | |
22 | git.debian.org in the pkg-xorg subdirectory. Most upstream packages | |
23 | are actually maintained in git repositories as well, so they often | |
24 | just need to be pulled into git.debian.org in a "upstream-*" branch. | |
25 | Otherwise, the upstream sources are manually installed in the Debian | |
26 | git repository. | |
27 | ||
28 | The .orig.tar.gz upstream source file could be generated using this | |
29 | "upstream-*" branch in the Debian git repository but it is actually | |
30 | copied from upstream tarballs directly. | |
31 | ||
32 | Due to X.org being highly modular, packaging all X.org applications | |
33 | as their own independent packages would have created too many Debian | |
34 | packages. For this reason, some X.org applications have been grouped | |
35 | into larger packages: xutils, xutils-dev, x11-apps, x11-session-utils, | |
36 | x11-utils, x11-xfs-utils, x11-xkb-utils, x11-xserver-utils. | |
37 | Most packages, including the X.org server itself and all libraries | |
38 | and drivers are, however maintained independently. | |
39 | ||
40 | The Debian packaging is added by creating the "debian-*" git branch | |
41 | which contains the aforementioned "upstream-*" branch plus the debian/ | |
42 | repository files. | |
43 | When a patch has to be applied to the Debian package, two solutions | |
44 | are involved: | |
45 | * If the patch is available in one of the upstream branches, it | |
46 | may be git'cherry-picked into the Debian repository. In this | |
47 | case, it appears directly in the .diff.gz. | |
48 | * Otherwise, the patch is added to debian/patches/ which is managed | |
49 | with quilt as documented in /usr/share/doc/quilt/README.source. | |
50 | ||
51 | ---------------------------------------------- | |
52 | Updating xorg-server to a new upstream release | |
53 | ---------------------------------------------- | |
54 | ||
55 | * The abibumpcheck target helps us notice any ABI bump: | |
56 | - A major ABI bump means drivers have to be rebuilt. | |
57 | - A minor ABI bump means the version in serverminver has to be | |
58 | bumped. | |
59 | Reference documentation about dependencies is available at: | |
60 | http://pkg-xorg.alioth.debian.org/reference/dependencies.html | |
61 | * We have to keep track of the SDK_REQUIRED_MODULES variable in | |
62 | configure.ac. It is used to determine xorg-server.pc's dependencies | |
63 | so xserver-xorg-dev's dependencies have to be adjusted when this | |
64 | variable changes. This variable is set to a list of modules, but is | |
65 | updated a few times. It's probably a good idea to use: | |
66 | git grep SDK_REQUIRED_MODULES= -- configure.ac |