From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 20703A00E6 for ; Wed, 7 Aug 2019 17:47:25 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 3A24C2BD3; Wed, 7 Aug 2019 17:47:24 +0200 (CEST) Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by dpdk.org (Postfix) with ESMTP id 2B2F62BCE for ; Wed, 7 Aug 2019 17:47:22 +0200 (CEST) Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 75A533067289; Wed, 7 Aug 2019 15:47:21 +0000 (UTC) Received: from localhost.localdomain (unknown [10.18.25.137]) by smtp.corp.redhat.com (Postfix) with ESMTP id 864525C21A; Wed, 7 Aug 2019 15:47:20 +0000 (UTC) To: Agalya Babu RadhaKrishnan , dev@dpdk.org Cc: reshma.pattan@intel.com, john.mcnamara@intel.com, marko.kovacevic@intel.com, bruce.richardson@intel.com, jananeex.m.parthasarathy@intel.com, Hari Kumar Vemula References: <1559822385-21684-1-git-send-email-hari.kumarx.vemula@intel.com> <1565186178-15950-1-git-send-email-agalyax.babu.radhakrishnan@intel.com> From: Michael Santana Francisco Organization: Red Hat Message-ID: <83a8b50e-3ca1-e91b-8c37-2330b8ca2a42@redhat.com> Date: Wed, 7 Aug 2019 11:47:20 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 MIME-Version: 1.0 In-Reply-To: <1565186178-15950-1-git-send-email-agalyax.babu.radhakrishnan@intel.com> Content-Language: en-US X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.48]); Wed, 07 Aug 2019 15:47:21 +0000 (UTC) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH v7] doc: add meson ut info in prog guide X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: msantana@redhat.com List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 8/7/19 9:56 AM, Agalya Babu RadhaKrishnan wrote: > From: Hari Kumar Vemula > > Add a programmer's guide section for meson ut > > Signed-off-by: Hari Kumar Vemula > Acked-by: Bruce Richardson > --- > v7: Updated v6 patch comments > v6: Updated comments > v5: Modified > v4: Typos corrected > v3: Modified > v2: Removed enhancement details > --- > .../prog_guide/build-sdk-meson.rst} | 7 +- > doc/guides/prog_guide/index.rst | 2 + > doc/guides/prog_guide/meson_ut.rst | 92 +++++++++++++++++++ > 3 files changed, 98 insertions(+), 3 deletions(-) > rename doc/{build-sdk-meson.txt => guides/prog_guide/build-sdk-meson.rst} (97%) > create mode 100644 doc/guides/prog_guide/meson_ut.rst > > diff --git a/doc/build-sdk-meson.txt b/doc/guides/prog_guide/build-sdk-meson.rst > similarity index 97% > rename from doc/build-sdk-meson.txt > rename to doc/guides/prog_guide/build-sdk-meson.rst > index fc7fe37b5..34c363694 100644 > --- a/doc/build-sdk-meson.txt > +++ b/doc/guides/prog_guide/build-sdk-meson.rst > @@ -1,5 +1,5 @@ > -INSTALLING DPDK USING THE MESON BUILD SYSTEM > ---------------------------------------------- > +Installing DPDK Using the meson build system > +============================================ > > Summary > -------- > @@ -162,7 +162,8 @@ command:: > > For example if the target machine is arm64 we can use the following > command:: > - meson arm-build --cross-file config/arm/arm64_armv8_linux_gcc > + > + meson arm-build --cross-file config/arm/arm64_armv8_linux_gcc > > where config/arm/arm64_armv8_linux_gcc contains settings for the compilers > and other build tools to be used, as well as characteristics of the target > diff --git a/doc/guides/prog_guide/index.rst b/doc/guides/prog_guide/index.rst > index 692409af8..0bab96c58 100644 > --- a/doc/guides/prog_guide/index.rst > +++ b/doc/guides/prog_guide/index.rst > @@ -60,6 +60,8 @@ Programmer's Guide > source_org > dev_kit_build_system > dev_kit_root_make_help > + build-sdk-meson > + meson_ut > extend_dpdk > build_app > ext_app_lib_make_help > diff --git a/doc/guides/prog_guide/meson_ut.rst b/doc/guides/prog_guide/meson_ut.rst > new file mode 100644 > index 000000000..18392ce04 > --- /dev/null > +++ b/doc/guides/prog_guide/meson_ut.rst > @@ -0,0 +1,92 @@ > +.. SPDX-License-Identifier: BSD-3-Clause > + Copyright(c) 2018-2019 Intel Corporation. > + > +Running DPDK Unit Tests with Meson > +================================== > + > +This section describes how to run test cases with the DPDK meson build system. > + > +Steps to build and run unit test cases using meson can be referred > +in :doc:`build-sdk-meson` I think this is misleading. As far as I can see build-sdk-meson doesn't provide any details as to how to "run" test cases. I think you meant to say build-sdk-meson has the steps to build dpdk, or something among those lines > + > +Grouping of test cases > +---------------------- > + > +Testcases have been grouped into four different groups. space between Test and cases. I prefer not having to use the word 'group' twice in the same sentence, it just sounds awkward to me. I would do s/different groups/different test suites/ > + > +* Fast tests. > +* Performance tests. > +* Driver tests. > +* Tests which produce lists of objects as output, and therefore that need > + manual checking. > + > +Testcases can be run in parallel or non-parallel mode using the ``is_parallel`` argument space between Test and cases. I would also mention that by default all tests run serially for better stability > +of ``test()`` in meson.build > + > +These tests can be run using the argument to ``meson test`` as > +``--suite project_name:label``. > + > +For example:: > + > + $ meson test --suite DPDK:fast-tests I would also somehow mention that these examples only work when your current working directory is the build directory. If you are not in the build directory you need to pass the -C flag, so like: $ meson test -C --suite DPDK:fast-tests the build path can either be a relative path or an absolute path, but I would skip this detail > + > +The project name is optional so the following is equivalent to the previous > +command:: > + > + $ meson test --suite fast-tests > + > +The meson command to list all available tests:: > + > + $ meson test --list > + > + > +Dealing with skipped test cases > +------------------------------- > + > +Some unit test cases have a dependency on external libraries, driver modules > +or config flags, without which the test cases cannot be run. Such test cases > +will be reported as skipped if they cannot run. To enable those test cases, > +the user should ensure the required dependencies are met. Below are a few > +possible causes why tests may be skipped and how they may be resolved: > + > +#. Optional external libraries are not found. > +#. Config flags for the dependent library are not enabled. > +#. Dependent driver modules are not installed on the system. #. Note enough processing cores. Some tests are skipped on machines with 2 or 4 cores The rest lgtm Acked-by: Michael Santana > > + > +To help find missing libraries, the user can specify additional search paths > +for those libraries as below: > + > +* Single path:: > + > + $ export LIBRARY_PATH=path > + > +* Multiple paths:: > + > + $ export LIBRARY_PATH=path1:path2:path3 > + > +Some functionality may be disabled due to library headers being missed as part > +of the build. To specify an additional search path for headers at > +configuration time, use one of the commands below: > + > +* Single path:: > + > + $ CFLAGS=-I/path meson build > + > +* Multiple paths:: > + > + $ CFLAGS=`-I/path1 -I/path2 meson build` > + > +Below are some examples that show how to export libraries and their header > +paths. > + > +To specify a single library at a time:: > + > + $ export LIBRARY_PATH=/root/wireless_libs/zuc/ > + $ CFLAGS=-I/root/wireless_libs/zuc/include meson build > + > +To specify multiple libraries at a time:: > + > + $ export LIBRARY_PATH=/path/zuc/:/path/libsso_kasumi/build/ > + $ CFLAGS=-I/path/zuc/include \ > + -I/path/libsso_kasumi/include \ > + meson build