Subject: Re: [PATCH v4 0/5] meson: wire up support for benchmarks

From: Patrick Steinhardt <[email-masked]>
Date: Fri, 25 Apr 2025 10:26:03 +0200

On Fri, Apr 25, 2025 at 10:06:12AM +0200, Christian Couder wrote:
> On Fri, Apr 25, 2025 at 9:28 AM Patrick Steinhardt <[email-masked]> wrote:
> > Range-diff versus v3:
> >
> > 1:  2375a16c2c0 = 1:  174804805c2 t/perf: fix benchmarks with alternate repo formats
> > 2:  69782035246 = 2:  41faa3d9b3b t/perf: use configured PERL_PATH
> > 3:  cca40e9dd0e = 3:  87ea3ab1a45 t/perf: fix benchmarks with out-of-tree builds
> 
> In https://lore.kernel.org/git/[email-masked]/ you said you
> would try to paraphrase some explanations about how GIT_BUILD_DIR is
> computed, but it looks like there aren't any changes in the patch
> since the previous version :-(

There were, but not in this version:

3:  d03ca0c0630 ! 3:  a66bc5aaf51 t/perf: fix benchmarks with out-of-tree builds
    @@ Commit message
         assumption breaks with both CMake and Meson, where the build directory
         can be located in an arbitrary place.

    -    Adapt the script so that it works with out-of-tree builds. This prepares
    -    us for wiring up benchmarks in Meson.
    +    Adapt the script so that it works with out-of-tree builds. Most
    +    importantly, this requires us to figure out the location of the build
    +    directory:
    +
    +      - When running benchmarks via our Makefile the build directory is the
    +        same as the source directory. We already know to derive the test
    +        directory ("t/") via `$(pwd)/..`, which works because we chdir into
    +        "t/perf" before executing benchmarks. We can thus derive the build
    +        directory by appending another "/.." to that path.
    +
    +      - When running benchmarks via Meson the build directory is located at
    +        an arbitrary location. The build system thus has to make the path
    +        known by exporting the `GIT_BUILD_DIR` environment variable.
    +
    +    This change prepares us for wiring up benchmarks in Meson.

The changes were already part of v3, so you have to look at the diff
versus v2.

Patrick