upload tizen1.0 source
[framework/uifw/xorg/lib/libxres.git] / debian / README.source
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 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 quilt is actually invoked by the Debian X packaging through a larger
52 set of scripts called XSFBS. XSFBS brings some other X specific
53 features such as managing dependencies and conflicts due to the video
54 and input driver ABIs.
55 XSFBS itself is maintained in a separate repository at
56   git://git.debian.org/pkg-xorg/xsfbs.git
57 and it is pulled inside the other Debian X repositories when needed.
58
59 The XSFBS patching system requires a build dependency on quilt. Also
60 a dependency on $(STAMP_DIR)/patch has to be added to debian/rules
61 so that the XSFBS patching occurs before the actual build. So the
62 very first target of the build (likely the one running autoreconf)
63 should depend on $(STAMP_DIR)/patch. It should also not depend on
64 anything so that parallel builds are correctly supported (nothing
65 should probably run while patching is being done). And finally, the
66 clean target should depend on the xsfclean target so that patches
67 are unapplied on clean.
68
69 When the upstream sources contain some DFSG-nonfree files, they are
70 listed in text files in debian/prune/ in the "debian-*" branch of
71 the Debian repository. XSFBS' scripts then take care of removing
72 these listed files during the build so as to generate a modified
73 DFSG-free .orig.tar.gz tarball.