X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fprog_guide%2Fdev_kit_build_system.rst;h=74dba4dd1692c4dd756ec9d03ec0a50c905ec2bc;hb=770fabcd36ec11d64544e86ed7d2dda9f5c64daf;hp=ad032c5f9638e1e3b4d728a513829f9a29bc89bf;hpb=feb9f680cd2c1df3d47bf4c05dc872467176e1e3;p=dpdk.git diff --git a/doc/guides/prog_guide/dev_kit_build_system.rst b/doc/guides/prog_guide/dev_kit_build_system.rst index ad032c5f96..74dba4dd16 100644 --- a/doc/guides/prog_guide/dev_kit_build_system.rst +++ b/doc/guides/prog_guide/dev_kit_build_system.rst @@ -1,32 +1,5 @@ -.. BSD LICENSE - Copyright(c) 2010-2014 Intel Corporation. All rights reserved. - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - - * Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in - the documentation and/or other materials provided with the - distribution. - * Neither the name of Intel Corporation nor the names of its - contributors may be used to endorse or promote products derived - from this software without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2010-2014 Intel Corporation. .. _Development_Kit_Build_System: @@ -58,13 +31,13 @@ Each build directory contains include files, libraries, and applications. A build directory is specific to a configuration that includes architecture + execution environment + toolchain. It is possible to have several build directories sharing the same sources with different configurations. -For instance, to create a new build directory called my_sdk_build_dir using the default configuration template config/defconfig_x86_64-linuxapp, +For instance, to create a new build directory called my_sdk_build_dir using the default configuration template config/defconfig_x86_64-linux, we use: .. code-block:: console cd ${RTE_SDK} - make config T=x86_64-native-linuxapp-gcc O=my_sdk_build_dir + make config T=x86_64-native-linux-gcc O=my_sdk_build_dir This creates a new my_sdk_build_dir directory. After that, we can compile by doing: @@ -79,49 +52,6 @@ which is equivalent to: make O=my_sdk_build_dir -The content of the my_sdk_build_dir is then: - -:: - - -- .config # used configuration - - -- Makefile # wrapper that calls head Makefile - # with $PWD as build directory - - - -- build #All temporary files used during build - +--app # process, including . o, .d, and .cmd files. - | +-- test # For libraries, we have the .a file. - | +-- test.o # For applications, we have the elf file. - | `-- ... - +-- lib - +-- librte_eal - | `-- ... - +-- librte_mempool - | +-- mempool-file1.o - | +-- .mempool-file1.o.cmd - | +-- .mempool-file1.o.d - | +-- mempool-file2.o - | +-- .mempool-file2.o.cmd - | +-- .mempool-file2.o.d - | `-- mempool.a - `-- ... - - -- include # All include files installed by libraries - +-- librte_mempool.h # and applications are located in this - +-- rte_eal.h # directory. The installed files can depend - +-- rte_spinlock.h # on configuration if needed (environment, - +-- rte_atomic.h # architecture, ..) - `-- \*.h ... - - -- lib # all compiled libraries are copied in this - +-- librte_eal.a # directory - +-- librte_mempool.a - `-- \*.a ... - - -- app # All compiled applications are installed - + --test # here. It includes the binary in elf format - Refer to :ref:`Development Kit Root Makefile Help ` for details about make commands that can be used from the root of DPDK. @@ -135,7 +65,7 @@ To compile an application, the user must set the RTE_SDK and RTE_TARGET environm .. code-block:: console export RTE_SDK=/opt/DPDK - export RTE_TARGET=x86_64-native-linuxapp-gcc + export RTE_TARGET=x86_64-native-linux-gcc cd /path/to/my_app For a new application, the user must create their own Makefile that includes some .mk files, such as @@ -243,8 +173,6 @@ Objects Misc ^^^^ -* rte.doc.mk: Documentation in the development kit framework - * rte.gnuconfigure.mk: Build an application that is configure-based. * rte.subdir.mk: Build several directories in the development kit framework. @@ -276,7 +204,7 @@ Creates the following symbol: Which ``dpdk-pmdinfogen`` scans for. Using this information other relevant bits of data can be exported from the object file and used to produce a hardware support description, that ``dpdk-pmdinfogen`` then encodes into a -json formatted string in the following format: +JSON formatted string in the following format: .. code-block:: c @@ -318,7 +246,7 @@ Useful Variables Provided by the Build System * RTE_TOOLCHAIN: Defines the toolchain (gcc , icc). It is the same value as CONFIG_RTE_TOOLCHAIN but without the double-quotes around the string. -* RTE_EXEC_ENV: Defines the executive environment (linuxapp). +* RTE_EXEC_ENV: Defines the executive environment (linux). It is the same value as CONFIG_RTE_EXEC_ENV but without the double-quotes around the string. * RTE_KERNELDIR: This variable contains the absolute path to the kernel sources that will be used to compile the kernel modules.