X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fcontributing%2Fpatches.rst;h=de493a901dc522c5730075f932bcbe0f1e71b3ce;hb=f74904ce98e84f48e8f3a96b7ad6b6347c3f44b6;hp=2359328eea99fae135d07d304143115bf1d42ab6;hpb=409a346a2e478e8143d150bc72e8bbcbc3ba235b;p=dpdk.git
diff --git a/doc/guides/contributing/patches.rst b/doc/guides/contributing/patches.rst
index 2359328eea..de493a901d 100644
--- a/doc/guides/contributing/patches.rst
+++ b/doc/guides/contributing/patches.rst
@@ -28,9 +28,9 @@ The DPDK development process has the following features:
* All sub-repositories are merged into main repository for ``-rc1`` and ``-rc2`` versions of the release.
* After the ``-rc2`` release all patches should target the main repository.
-The mailing list for DPDK development is `dev@dpdk.org `_.
-Contributors will need to `register for the mailing list `_ in order to submit patches.
-It is also worth registering for the DPDK `Patchwork `_
+The mailing list for DPDK development is `dev@dpdk.org `_.
+Contributors will need to `register for the mailing list `_ in order to submit patches.
+It is also worth registering for the DPDK `Patchwork `_
If you are using the GitHub service, you can link your repository to
the ``travis-ci.org`` build service. When you push patches to your GitHub
@@ -130,12 +130,12 @@ The source code can be cloned using either of the following:
main repository::
git clone git://dpdk.org/dpdk
- git clone http://dpdk.org/git/dpdk
+ git clone https://dpdk.org/git/dpdk
-sub-repositories (`list `_)::
+sub-repositories (`list `_)::
git clone git://dpdk.org/next/dpdk-next-*
- git clone http://dpdk.org/git/next/dpdk-next-*
+ git clone https://dpdk.org/git/next/dpdk-next-*
Make your Changes
-----------------
@@ -182,7 +182,7 @@ A good way of thinking about whether a patch should be split is to consider whet
applied without dependencies as a backport.
It is better to keep the related documentation changes in the same patch
-file as the code, rather than one big documentation patch at then end of a
+file as the code, rather than one big documentation patch at the end of a
patchset. This makes it easier for future maintenance and development of the
code.
@@ -320,7 +320,7 @@ Patch for Stable Releases
~~~~~~~~~~~~~~~~~~~~~~~~~
All fix patches to the master branch that are candidates for backporting
-should also be CCed to the `stable@dpdk.org `_
+should also be CCed to the `stable@dpdk.org `_
mailing list.
In the commit message body the Cc: stable@dpdk.org should be inserted as follows::
@@ -336,6 +336,24 @@ In the commit message body the Cc: stable@dpdk.org should be inserted as follows
For further information on stable contribution you can go to
:doc:`Stable Contribution Guide `.
+Patch Dependencies
+~~~~~~~~~~~~~~~~~~
+
+Sometimes a patch or patchset can depend on another one.
+To help the maintainers and automation tasks, please document this dependency in commit log or cover letter
+with the following syntax:
+
+``Depends-on: series-NNNNN ("Title of the series")`` or ``Depends-on: patch-NNNNN ("Title of the patch")``
+
+Where ``NNNNN`` is patchwork ID for patch or series::
+
+ doc: fix some parameter description
+
+ Update the docs, fixing description of some parameter.
+
+ Signed-off-by: Alex Smith
+ ---
+ Depends-on: series-10000 ("Title of the series")
Creating Patches
----------------
@@ -423,29 +441,22 @@ are loaded from the following files, in order of preference::
~/.config/dpdk/devel.config
/etc/dpdk/devel.config.
-Once the environment variable the script can be run as follows::
+Once the environment variable is set, the script can be run as follows::
devtools/checkpatches.sh ~/patch/
The script usage is::
- checkpatches.sh [-h] [-q] [-v] [patch1 [patch2] ...]]"
-
-Where:
-
-* ``-h``: help, usage.
-* ``-q``: quiet. Don't output anything for files without issues.
-* ``-v``: verbose.
-* ``patchX``: path to one or more patches.
+ checkpatches.sh [-h] [-q] [-v] [-nX|-r range|patch1 [patch2] ...]
Then the git logs should be checked using the ``check-git-log.sh`` script.
The script usage is::
- check-git-log.sh [range]
-
-Where the range is a ``git log`` option.
+ check-git-log.sh [-h] [-nX|-r range]
+For both of the above scripts, the -n option is used to specify a number of commits from HEAD,
+and the -r option allows the user specify a ``git log`` range.
.. _contrib_check_compilation:
@@ -480,6 +491,7 @@ Examples of configs are::
The builds can be modified via the following environmental variables:
* ``DPDK_BUILD_TEST_CONFIGS`` (target1+option1+option2 target2)
+* ``DPDK_BUILD_TEST_DIR``
* ``DPDK_DEP_CFLAGS``
* ``DPDK_DEP_LDFLAGS``
* ``DPDK_DEP_PCAP`` (y/[n])
@@ -504,6 +516,29 @@ Compilation of patches is to be tested with ``devtools/test-meson-builds.sh`` sc
The script internally checks for dependencies, then builds for several
combinations of compilation configuration.
+By default, each build will be put in a subfolder of the current working directory.
+However, if it is preferred to place the builds in a different location,
+the environment variable ``DPDK_BUILD_TEST_DIR`` can be set to that desired location.
+For example, setting ``DPDK_BUILD_TEST_DIR=__builds`` will put all builds
+in a single subfolder called "__builds" created in the current directory.
+Setting ``DPDK_BUILD_TEST_DIR`` to an absolute directory path e.g. ``/tmp`` is also supported.
+
+
+.. _integrated_abi_check:
+
+Checking ABI compatibility
+--------------------------
+
+By default, ABI compatibility checks are disabled.
+
+To enable them, a reference version must be selected via the environment
+variable ``DPDK_ABI_REF_VERSION``.
+
+The ``devtools/test-build.sh`` and ``devtools/test-meson-builds.sh`` scripts
+then build this reference version in a temporary directory and store the
+results in a subfolder of the current working directory.
+The environment variable ``DPDK_ABI_REF_DIR`` can be set so that the results go
+to a different location.
Sending Patches
@@ -541,7 +576,7 @@ If the patch is in relation to a previous email thread you can add it to the sam
git send-email --to dev@dpdk.org --in-reply-to <1234-foo@bar.com> 000*.patch
The Message ID can be found in the raw text of emails or at the top of each Patchwork patch,
-`for example `_.
+`for example `_.
Shallow threading (``--thread --no-chain-reply-to``) is preferred for a patch series.
Once submitted your patches will appear on the mailing list and in Patchwork.