|
Packit Service |
3b8507 |
How to submit patches into the NASM
|
|
Packit Service |
3b8507 |
===================================
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Actually the rules are pretty simple
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Obtaining the source code
|
|
Packit Service |
3b8507 |
-------------------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
The NASM sources are tracked by Git SCM at http://repo.or.cz/w/nasm.git
|
|
Packit Service |
3b8507 |
repository. You either could download packed sources or use git tool itself
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
git clone git://repo.or.cz/nasm.git
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Changin the source code
|
|
Packit Service |
3b8507 |
-----------------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
When you change the NASM source code keep in mind -- we prefer tabs and
|
|
Packit Service |
3b8507 |
indentations to be 4 characters width, space filled.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Other "rules" could be learned from NASM sources -- just make your code
|
|
Packit Service |
3b8507 |
to look similar.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Producing patch
|
|
Packit Service |
3b8507 |
---------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
There are at least two ways to make it right.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
1) git format-patch
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
You might need to read documentation on Git SCM how to prepare patch
|
|
Packit Service |
3b8507 |
for mail submission. Take a look on http://book.git-scm.com/ and/or
|
|
Packit Service |
3b8507 |
http://git-scm.com/documentation for details. It should not be hard
|
|
Packit Service |
3b8507 |
at all.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
2) Use "diff -up"
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Use "diff -up" or "diff -uprN" to create patches.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Signing your work
|
|
Packit Service |
3b8507 |
-----------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
To improve tracking of who did what we've introduced a "sign-off" procedure
|
|
Packit Service |
3b8507 |
on patches that are being emailed around.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
The sign-off is a simple line at the end of the explanation for the
|
|
Packit Service |
3b8507 |
patch, which certifies that you wrote it or otherwise have the right to
|
|
Packit Service |
3b8507 |
pass it on as a open-source patch. The rules are pretty simple: if you
|
|
Packit Service |
3b8507 |
can certify the below:
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Developer's Certificate of Origin 1.1
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
By making a contribution to this project, I certify that:
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
(a) The contribution was created in whole or in part by me and I
|
|
Packit Service |
3b8507 |
have the right to submit it under the open source license
|
|
Packit Service |
3b8507 |
indicated in the file; or
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
(b) The contribution is based upon previous work that, to the best
|
|
Packit Service |
3b8507 |
of my knowledge, is covered under an appropriate open source
|
|
Packit Service |
3b8507 |
license and I have the right under that license to submit that
|
|
Packit Service |
3b8507 |
work with modifications, whether created in whole or in part
|
|
Packit Service |
3b8507 |
by me, under the same open source license (unless I am
|
|
Packit Service |
3b8507 |
permitted to submit under a different license), as indicated
|
|
Packit Service |
3b8507 |
in the file; or
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
(c) The contribution was provided directly to me by some other
|
|
Packit Service |
3b8507 |
person who certified (a), (b) or (c) and I have not modified
|
|
Packit Service |
3b8507 |
it.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
(d) I understand and agree that this project and the contribution
|
|
Packit Service |
3b8507 |
are public and that a record of the contribution (including all
|
|
Packit Service |
3b8507 |
personal information I submit with it, including my sign-off) is
|
|
Packit Service |
3b8507 |
maintained indefinitely and may be redistributed consistent with
|
|
Packit Service |
3b8507 |
this project or the open source license(s) involved.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
then you just add a line saying
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Signed-off-by: Random J Developer <random@developer.example.org>
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
using your real name (please, no pseudonyms or anonymous contributions if
|
|
Packit Service |
3b8507 |
it possible)
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
An example of patch message
|
|
Packit Service |
3b8507 |
---------------------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
From: Random J Developer <random@developer.example.org>
|
|
Packit Service |
3b8507 |
Subject: [PATCH] Short patch description
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Long patch description (could be skipped if patch
|
|
Packit Service |
3b8507 |
is trivial enough)
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Signed-off-by: Random J Developer <random@developer.example.org>
|
|
Packit Service |
3b8507 |
---
|
|
Packit Service |
3b8507 |
Patch body here
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Mailing patches
|
|
Packit Service |
3b8507 |
---------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
The patches should be sent to NASM development mailing list
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
nasm-devel@lists.sourceforge.net
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Please make sure the email client you're using doesn't screw
|
|
Packit Service |
3b8507 |
your patch (line wrapping and so on).
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Wait for response
|
|
Packit Service |
3b8507 |
-----------------
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
Be patient. Most NASM developers are pretty busy people so if
|
|
Packit Service |
3b8507 |
there is no immediate response on your patch -- don't
|
|
Packit Service |
3b8507 |
be surprised, sometimes a patch may fly around a week(s) before
|
|
Packit Service |
3b8507 |
gets reviewed. But definitely the patches will not go to /dev/null.
|
|
Packit Service |
3b8507 |
|
|
Packit Service |
3b8507 |
---
|
|
Packit Service |
3b8507 |
With best regards,
|
|
Packit Service |
3b8507 |
NASM-team
|