Author: dnusinow Date: 2005-07-21 22:04:56 -0500 (Thu, 21 Jul 2005) New Revision: 390
Modified: trunk/debian/README trunk/debian/changelog Log: - Document how to use the new quilt-based system in debian/README Modified: trunk/debian/README =================================================================== --- trunk/debian/README 2005-07-22 01:25:28 UTC (rev 389) +++ trunk/debian/README 2005-07-22 03:04:56 UTC (rev 390) @@ -1,4 +1,4 @@ -$Id: README 1695 2004-07-29 07:22:25Z branden $ +$Id$ This file attempts to explain some of the oddities of the X.Org Debian source package by describing the files and directories not usually found in @@ -17,7 +17,8 @@ *** "all", and you may need to add your architecture explicitly to the *** Architecture: fields of some packages. -This package uses DBS, the Debian Build System. +This package uses quilt to manage patches. A basic description of how to use +this is below. Interesting targets supported by the debian/rules file include: debian/rules unpacked Unpacks the source. @@ -29,16 +30,64 @@ this target works before submitting it; it can save the package maintainers a considerable amount of time. - debian/rules make_patch Creates a patch call new.diff in the - package root that is the difference - betwwen a source tree patched with - only the patches from debian/patches - and changes that you make to the tree. - The new.diff is suitable to be moved - into the debian/patches. + debian/rules clean Unpatches the source and removes stampdir, + build-tree, and various patch-related items + debian/rules patch Patches the source with all patches + debian/rules unpatch Unpatches the source with all patches + debian/rules prepare Sets up the directory so you can begin + editing patches. VERY IMPORTANT. +Editing and creating patches: + The first thing you need to do is become familiar with the basics of quilt. + It comes with a pdf tutorial in /usr/share/doc/quilt as well as an excellent + manpage. + + To start, you should be in the top level directory, containing the debian + directory and the xc directory. First, run debian/rules prepare. This will + set up the proper symlinks so that quilt can find the patches it needs to + apply. Once this is done, you will see a symlink named "patches" that will + point to debian/patches. This is because quilt expects the patches directory + to be located at the top level by default. It will set up a ".pc" link as + well, which quilt uses internally to store info (this is why you'll want to + use debian/rules clean to clean up, rather than just rm -rf'ing what you see, + the hidden .pc is easy to forget). It will also create a stampdir that is + used to store stamps so debian/rules knows what its done, as well as logs. + + Now that the directory is set up, you're going to want to do your thing. + Let's start with editing a patch. You'll want to run "quilt push + yourpatchname.diff". You're going to want to make your edits now. If you're + editing a file that wasn't previously included in the patch, be sure to let + quilt know you're doing it by using "quilt add" or "quilt edit". If you're + not sure if you need this, you can run "quilt files" to see if your file is + already in there, or "quilt patches filename" to see if the current patch + edits the specified file. Once you're done editing, run "quilt refresh" to + update your patch. All documentation in the patch header will be retained by + quilt automatically. If you have made a serious edit, you may want to + document it in the header of the patch. + + Alternately, you could be creating a new patch. As above, you'll want to set + up the tree by running debian/rules prepare. You need to decide where your + patch belongs according to the number series specified below. Once you do + this, run "quilt push patch-before-yours" specifying the patch that will be + the last one applied before your new patch. Then run "quilt new patchname" + using the name of the patch (including the appropriate number). Make your + edits to the files. As described above, you'll want to be sure quilt knows + which files you are editing. When you are finished, run "quilt refresh -u -p + 0". This will create a unified diff patch with a strip number of 0. You + should then go in to the patches directory and document your patch. + + You may have a patch that you stole from some other source that you just want + to apply and you don't want to deal with adding files by hand. You can use + "quilt import -n internal-patch-name file-name" where the internal-patch-name + is what you want to call your patch. You'll want to push the patch before + yours, as described above, before doing the import, in order to make sure it + applies in the right sequence. + + Once you're all done with patch work, you'll want to run debian/rules clean + to get rid of the things that had to be set up. + scripts: - Directory containing the internals of Doogie's Build System. If any + Directory containing utility scripts for dealing with the package. If any architecture-specific make variables need to be declared, you may do so debian/scripts/vars.$(ARCH). Modified: trunk/debian/changelog =================================================================== --- trunk/debian/changelog 2005-07-22 01:25:28 UTC (rev 389) +++ trunk/debian/changelog 2005-07-22 03:04:56 UTC (rev 390) @@ -4,6 +4,7 @@ - Incorporate ELF loader patch for arm. Thanks Steve Langasek. Closes: #319298 - Switch from dbs to quilt based on Eugene Konev's work + - Document how to use the system in debian/README Changes by Eugene Konev: - Do not impose selinux on the whole world out there: move selinux -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]