X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fprog_guide%2Fbuild-sdk-meson.rst;h=877a64b061bc214c46a15bdef7c6051c75c35ff4;hb=b54403fd08374dae243bf0a0e90488f51485154e;hp=44d1cafdf035e97b38e665eccc8555931db88007;hpb=8549295db07b1f5777a314ee0b75f768e7ec4913;p=dpdk.git diff --git a/doc/guides/prog_guide/build-sdk-meson.rst b/doc/guides/prog_guide/build-sdk-meson.rst index 44d1cafdf0..877a64b061 100644 --- a/doc/guides/prog_guide/build-sdk-meson.rst +++ b/doc/guides/prog_guide/build-sdk-meson.rst @@ -1,3 +1,6 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright(c) 2018 Intel Corporation. + Installing DPDK Using the meson build system ============================================ @@ -32,7 +35,7 @@ The ``meson`` tool is used to configure a DPDK build. On most Linux distributions this can be got using the local package management system, e.g. ``dnf install meson`` or ``apt-get install meson``. If meson is not available as a suitable package, it can also be installed using the Python -3 ``pip`` tool, e.g. ``pip3 install meson``. Version 0.47.1 of meson is +3 ``pip`` tool, e.g. ``pip3 install meson``. Version 0.49.2 of meson is required - if the version packaged is too old, the latest version is generally available from "pip". @@ -43,6 +46,12 @@ already installed, it too is generally packaged by most Linux distributions. If not available as a package, it can be downloaded as source or binary from https://ninja-build.org/ +It is best advised to go over the following links for the complete dependencies: + +* :doc:`Linux <../linux_gsg/sys_reqs>` +* :doc:`FreeBSD <../freebsd_gsg/build_dpdk>` +* :doc:`Windows <../windows_gsg/build_dpdk>` + Configuring the Build ---------------------- @@ -82,7 +91,7 @@ Project-specific options are passed used -Doption=value:: meson -Denable_docs=true fullbuild # build and install docs - meson -Dmachine=default # use builder-independent baseline -march + meson -Dmachine=generic # use builder-independent baseline -march meson -Ddisable_drivers=event/*,net/tap # disable tap driver and all # eventdev PMDs for a smaller build @@ -102,14 +111,17 @@ Examples of setting some of the same options using meson configure:: meson configure -Denable_trace_fp=true -NOTE: once meson has been run to configure a build in a directory, it -cannot be run again on the same directory. Instead ``meson configure`` -should be used to change the build settings within the directory, and when -``ninja`` is called to do the build itself, it will trigger the necessary -re-scan from meson. +.. note:: -NOTE: machine=default uses a config that works on all supported architectures -regardless of the capabilities of the machine where the build is happening. + once meson has been run to configure a build in a directory, it + cannot be run again on the same directory. Instead ``meson configure`` + should be used to change the build settings within the directory, and when + ``ninja`` is called to do the build itself, it will trigger the necessary + re-scan from meson. + +.. note:: + machine=generic uses a config that works on all supported architectures + regardless of the capabilities of the machine where the build is happening. As well as those settings taken from ``meson configure``, other options such as the compiler to use can be passed via environment variables. For @@ -117,9 +129,11 @@ example:: CC=clang meson clang-build -NOTE: for more comprehensive overriding of compilers or other environment -settings, the tools for cross-compilation may be considered. However, for -basic overriding of the compiler etc., the above form works as expected. +.. note:: + + for more comprehensive overriding of compilers or other environment + settings, the tools for cross-compilation may be considered. However, for + basic overriding of the compiler etc., the above form works as expected. Performing the Build