[PATCH v3 0/8] expand list of optional libraries
Morten Brørup
mb at smartsharesystems.com
Mon Aug 14 20:33:59 CEST 2023
> From: Bruce Richardson [mailto:bruce.richardson at intel.com]
> Sent: Monday, 14 August 2023 20.21
>
> This patchset contains changes to DPDK to make the build more
> configurable
> overall. The changes can be grouped into two areas:
>
> * Firstly, there are changes to make the build of the unit tests more
> flexible and maintainable. These 5 patches switch the unit tests from
> having separate hard-coded lists of files and tests, with lots of
> conditional logic to add/remove items from the list, to instead being
> a single list of files and dependencies per-file. The actual lists of
> test-suites are built up dynamically from the list of files whose
> dependencies are met and therefore will be part of the build.
> This rework enables...
> * The second set of patches which expands the list of libraries which
> can be disabled at build-time, while still giving a successful build
> of DPDK. Overall, after this set is applied, the list of optional
> libraries in DPDK is approx doubled in size. [15 additions giving
> 31 optional libs]
>
> NOTES:
> * as stated in the RFC, the test binary moves in the build as a result
> of this set - from app/test/dpdk-test to app/dpdk-test.
> * running the suites of tests no longer works after patch 4 until patch
> 5 is applied. If this is an issue, the two patches can be merged on
> apply. However, the individual tests are still runnable through the
> test binary - it's only through "meson test" that there are issues, so
> I'm keeping the patches separate since each is relatively complex in
> its
> own right.
> * A number of files in the test directory were not being built, and seem
> to have never been built with meson. This requires separate work,
> outside
> the scope of the patchset to fix.
> * Similarly, some unit tests were never added to test suites. These can
> now be found by using grep to find the old REGISTER_TEST_COMMAND
> macro.
> Again, adding orphan tests to suites is outside the scope of this set.
>
> V3:
> - Create symlink to old path to test binary, to ensure all automated CI,
> and any other use of the test binary still works.
>
> V2:
> - Changes since RFC:
> - merged two previous sets - reworking test build, and disabling
> libs - into one, since they depend on each other
> - Reworked the list of dependencies for each file in the tests,
> so that files that depend on other files have those deps called
> out.
> - Added list of external dependencies to the test builds
> - For disabling libs, merged patches disabling individual libs
> together into one patch, since all unit test build changes were
> unnecessary. This made each patch a single-line addition to
> the optional list in lib/meson.build.
Series-acked-by: Morten Brørup <mb at smartsharesystems.com>
More information about the dev
mailing list