2 Notes for util-linux-ng developers
3 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
7 * "./autogen.sh" generates all necessary files (run it after checkout from
10 * "make distclean" removes all unnecessary files, but code is still possible
11 recompile by "./configure; make"
13 * "make dist-gzip" (or -bzip2) creates tarball which is possible use without
19 * send your patches to the mailing list or to upstream maintainer
20 (see the AUTHORS file)
24 * don't include generated (autotools) stuff to your patches
25 (hint: use git-clean [-X])
27 * patches are delivered via email only. Downloading them from internet
30 * one patch per email, with the changelog in the body of the email.
32 * Subject: [PATCH] subsystem: description
34 * if someone else wrote the patch, they should be credited (and blamed)
35 for it. To communicate this, add a line:
37 From: John Doe <jdoe@wherever.com>
39 * add a Signed-off-by line (hint: use "git commit -s")
41 The sign-off is a simple line at the end of the explanation for the
42 patch, which certifies that you wrote it or otherwise have the right to
43 pass it on as a open-source patch. The rules are pretty simple: if you
44 can certify the below:
46 By making a contribution to this project, I certify that:
48 (a) The contribution was created in whole or in part by me and I
49 have the right to submit it under the open source license
50 indicated in the file; or
52 (b) The contribution is based upon previous work that, to the best
53 of my knowledge, is covered under an appropriate open source
54 license and I have the right under that license to submit that
55 work with modifications, whether created in whole or in part
56 by me, under the same open source license (unless I am
57 permitted to submit under a different license), as indicated
60 (c) The contribution was provided directly to me by some other
61 person who certified (a), (b) or (c) and I have not modified it.
63 (d) I understand and agree that this project and the contribution
64 are public and that a record of the contribution (including all
65 personal information I submit with it, including my sign-off) is
66 maintained indefinitely and may be redistributed consistent with
67 this project or the open source license(s) involved.
69 then you just add a line saying
71 Signed-off-by: Random J Developer <random@developer.example.org>
73 using your real name (sorry, no pseudonyms or anonymous contributions.)
76 * for more details see:
79 http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt
83 * the preferred coding style is based on the linux kernel Documentation/CodingStyle.
86 http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=Documentation/CodingStyle
89 SCM (source code management):
91 git clone git://git.kernel.org/pub/scm/utils/util-linux-ng/util-linux-ng.git util-linux-ng
94 * maintenance (stable) branch
95 - created for every <major>.<minor> release
96 - branch name: stable/v<major>.<minor>
99 - created for <major>.<minor>.<maint> release for critical/security bugs only
100 - this branch is optional
101 - branch name: stable/v<major>.<minor>.<maint>
104 - the status of this branch is: "it works for me". It means useful
105 but not well tested patches.
106 - it's source for occasional snapshots
107 - for long-term development or invasive changes should be an active
108 development forked into a separate branch (topic branches) from the
111 * A new tag object is created for:
112 - every release, tag name: v<version>
116 - tag v2.13.1 is typo. Please, ignore this tag.