Hi John,
On 5 September 2021 5:04:19 am IST, John Goerzen <jgoer...@complete.org> wrote:
>Hello,
>
>I am working on packaging lukechampine.com/blake3.
>
>Its go.mod says:
>
>require (
> github.com/klauspost/cpuid v1.3.1
>)
>
>sid has golang-github-klauspost-cpuid-dev but at version 2.0.6.
>blake3 doesn't compile with it:
>
>src/lukechampine.com/blake3/cpu.go:8:24: cpuid.CPU.AVX2 undefined
>(type cpuid.CPUInfo has no field or method AVX2)
>src/lukechampine.com/blake3/cpu.go:9:24: cpuid.CPU.AVX512F
>undefined (type cpuid.CPUInfo has no field or method AVX512F)
>
>This looks like a change in API v2 of cpuid-dev.
>
>What is the usual path forward here?
>
>In this PARTICULAR case, it probably wouldn't be too bad to patch
>the user of the library, but I'm not sure about the more general
>case.
There can be three ways:
a) Make blake3 compatible with newer version of cpuid
b) downgrade the version of cpuid in unstable
c) provide an old copy of cpuid in a new vendor/ directory in the project
source using multiple orig tarballs
Option 'a' is the best way here. 'b' cannot be done in this case since a few
important packages depend on new upstream of cpuid.
'c' can be done, but it'd be pretty ugly not usually something you'd like to do.
Hope this helps,
Nilesh
--
Sent from my Android device with K-9 Mail. Please excuse my brevity.