X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;ds=sidebyside;f=doc%2Fguides%2Fcontributing%2Fcoding_style.rst;h=449b33494bb464543308e72cd8f994a451376eb4;hb=a6a752402dfce8695c258a27da97d5a6d187c49b;hp=b1bf0d15cf2b214cdce88a61428bd7d644a06a05;hpb=77c79de08c15ddf08b7f422ef797b434ff897d64;p=dpdk.git diff --git a/doc/guides/contributing/coding_style.rst b/doc/guides/contributing/coding_style.rst index b1bf0d15cf..449b33494b 100644 --- a/doc/guides/contributing/coding_style.rst +++ b/doc/guides/contributing/coding_style.rst @@ -247,6 +247,15 @@ Structure Declarations * Use of the structures should be by separate variable declarations and those declarations must be extern if they are declared in a header file. * Externally visible structure definitions should have the structure name prefixed by ``rte_`` to avoid namespace collisions. +.. note:: + + Uses of ``bool`` in structures are not preferred as is wastes space and + it's also not clear as to what type size the bool is. A preferred use of + ``bool`` is mainly as a return type from functions that return true/false, + and maybe local variable functions. + + Ref: `LKML `_ + Queues ~~~~~~ @@ -741,8 +750,8 @@ A specialization looks like this: * PF/VF mailbox output: ``type.section.name.mbox`` A real world example is the i40e poll mode driver which exposes two -specializations, one for initialization ``pmd.i40e.init`` and the other for -the remaining driver logs ``pmd.i40e.driver``. +specializations, one for initialization ``pmd.net.i40e.init`` and the other for +the remaining driver logs ``pmd.net.i40e.driver``. Note that specializations have no formatting rules, but please follow a precedent if one exists. In order to see all current log topics and @@ -816,10 +825,10 @@ format. .. code-block:: python sources = files('file1.c', ...) - headers = files('file1.c', ...) + headers = files('file1.h', ...) -The will build based on a number of conventions and assumptions within the DPDK +This will build based on a number of conventions and assumptions within the DPDK itself, for example, that the library name is the same as the directory name in which the files are stored. @@ -843,12 +852,15 @@ allow_experimental_apis build **Default Value = true** Used to optionally compile a library, based on its dependencies or - environment. A simple example of use would be: + environment. When set to "false" the ``reason`` value, explained below, should + also be set to explain to the user why the component is not being built. + A simple example of use would be: .. code-block:: python - if host_machine.system() != 'linux' + if not is_linux build = false + reason = 'only supported on Linux' endif @@ -929,6 +941,13 @@ objs objects that were compiled up as part of another target given in the included library ``meson.build`` file. +reason + **Default Value = ''**. + This variable should be used when a library is not to be built i.e. when + ``build`` is set to "false", to specify the reason why a library will not be + built. For missing dependencies this should be of the form + ``'missing dependency, "libname"'``. + version **Default Value = 1**. Specifies the ABI version of the library, and is used as the major @@ -982,6 +1001,9 @@ pkgconfig_extra_libs using static libraries. Anything added here will be appended to the end of the ``pkgconfig --libs`` output. +reason + As above. + sources [mandatory] As above