Subject: [bug#55565] [PATCH] gnu: Add python-blis

From: Ludovic Courtès <[email-masked]>
Date: Mon, 13 Jun 2022 12:20:18 +0200

Hi Artyom,

"Artyom V. Poptsov" <[email-masked]> skribis:

> Basically I patched 'blis/benchmark.py' to use "blas_opt_info" instead
> of "blas_ilp64_opt_info" and tests went fine.  An issue with different
> numpy versions I guess?  I also added "blis" and "python-numpy-next" to
> the "native-inputs".

Unfortunately this is not sufficient: the source bundles a copy of BLIS
under ‘blis/_src’ and it starts by building it (which is why it takes so
long), whether or not BLIS is among the inputs.

Could you (1) add a snippet that removes ‘blis/_src’, and (2) see
whether/how ‘setup.py’ can be patched to not build BLIS?  It might be
that commenting out the line that reads:

    cmdclass={"build_ext": ExtensionBuilder},

would be enough, I don’t know.

Anyhow, given that BLIS is the kind of package that’s highly tuned on
our side for performance and reproducibility configuration, it’s
important to not have several copies around.

> +    (native-inputs (list python-numpy-next
> +                         python-pytest
> +                         python-cython
> +                         blis
> +                         python-hypothesis))

NumPy and BLIS should definitely be ‘inputs’, not ‘native-inputs’; not
sure about ‘hypothesis’.

Also, please include a short comment explaining why numpy-next is used
rather than numpy (like “version >= X.Y required”).

Could you send an updated patch?

Sorry that this is providing trickier than we’d like!

Thanks,
Ludo’.