Files
zeekay e830255ea3 ops/code: the native HQC link is opt-in again (-tags=lux_hqc_native)
cgo says a C compiler is available. It does not say libluxgpu_hqc and
lux/gpu/hqc.h are installed. code_cpu.go declared the second fact as the
first, so any consumer that turns cgo on for an unrelated reason — blst,
say — had to carry a luxgpu install or fail to compile:

  ops/code/code_cpu.go:102:10: fatal error: lux/gpu/hqc.h:
  No such file or directory

Two facts, two predicates. This restores the pairing ops/code carried
through v1.2.4 and that every other optional native link in accel still
uses: crypto_secp256k1_cgo.go and ops/crypto/crypto_msm_native.go behind
lux_crypto_native, ops/fhe/cgo.go behind luxfhe, internal/capi/real.go
behind lux_accel_real. ops/code was the lone file keyed on bare cgo.

code_nocgo.go covers the complement, so a plain cgo build now reports
ErrNativeHQCUnavailable — the error the API already documents — instead
of failing to build. -tags=lux_hqc_native links the native oracle
unchanged.

Verified: build + test at CGO=0; CGO=1 with and without the tag; both
again under -tags=accel. Full suite green.
2026-08-21 00:08:45 -07:00
..
2026-03-03 14:59:07 -08:00