[dpdk-dev] [PATCH v4] doc: add contributors guide

Thomas Monjalon thomas.monjalon at 6wind.com
Sun Dec 13 23:35:20 CET 2015


Thanks for this very useful doc, John.

2015-11-20 12:46, John McNamara:
> +* Run ``make install``, ``make examples`` and ``make test`` and build the shared and combined libraries
> +  to ensure the changes haven't broken existing code:
> +
> +  .. code-block:: console
> +
> +     export RTE_TARGET=x86_64-native-linuxapp-gcc
> +
> +     make T=$RTE_TARGET install
> +     make T=$RTE_TARGET install CONFIG_RTE_BUILD_SHARED_LIB=y \
> +                                CONFIG_RTE_BUILD_COMBINE_LIBS=y
> +     make T=$RTE_TARGET examples
> +     make T=$RTE_TARGET test

These commands are superseded by a new syntax and may be replaced by the use
of the script test-build.sh.

> +* Use the imperative of the verb (like instructions to the code base).
> +  For example::
> +
> +     ixgbe: fix compilarion in 32 bit

Typo.
This example is not needed (there is one above).

> +The kernel guidelines tested by ``checkpatch`` don't match the DPDK Coding Style guidelines exactly but
> +they provide a good indication of conformance.
> +Warnings about kernel data types or about split strings can be ignored::
> +
> +   /path/checkpatch.pl --ignore PREFER_KERNEL_TYPES,SPLIT_STRING -q files*.patch

The script checkpatches.sh should be used. It includes a list of options to ignore.

> +Ensure that the code compiles with ``gcc`` and ``clang``::
> +
> +   make T=x86_64-native-linuxapp-gcc   install
> +   make T=x86_64-native-linuxapp-clang install

It may be done with
	scripts/test-build.sh x86_64-native-linuxapp-gcc x86_64-native-linuxapp-clang
My preferred configs are:
	x86_64-native-linuxapp-gcc+shared+next
	x86_64-native-linuxapp-clang+shared+combined
	i686-native-linuxapp-gcc+combined
And these options are common:
	export DPDK_DEP_ZLIB=y
	export DPDK_DEP_PCAP=y
	export DPDK_DEP_SSL=y

> +Confirm that the changes haven't broken any existing code by running ``make install``, ``make examples`` and
> +``make test`` and building the shared and combined libraries:
> +
> +  .. code-block:: console
> +
> +     export RTE_TARGET=x86_64-native-linuxapp-gcc
> +
> +     make T=$RTE_TARGET install
> +     make T=$RTE_TARGET install CONFIG_RTE_BUILD_SHARED_LIB=y \
> +                                CONFIG_RTE_BUILD_COMBINE_LIBS=y
> +     make T=$RTE_TARGET examples
> +     make T=$RTE_TARGET test



More information about the dev mailing list