sci-ml/whisper-cpp
Port of OpenAI's Whisper model in C/C++
-
whisper-cpp-1.9.1~amd64 ~arm64blas cuda ffmpeg opencl hip sdl2 vulkan cpu_flags_x86_sse4_2 cpu_flags_x86_avx cpu_flags_x86_avx_vnni cpu_flags_x86_avx2 cpu_flags_x86_bmi2 cpu_flags_x86_avx512f cpu_flags_x86_avx512cd cpu_flags_x86_avx512vl cpu_flags_x86_avx512dq cpu_flags_x86_avx512bw cpu_flags_x86_avx512vbmi cpu_flags_x86_avx512_vnni cpu_flags_x86_avx512_bf16 cpu_flags_x86_fma3 cpu_flags_x86_f16c cpu_flags_x86_amx_tile cpu_flags_x86_amx_int8 cpu_flags_x86_amx_bf16 cpu_flags_arm_asimddp cpu_flags_arm_asimdhp cpu_flags_arm_sve cpu_flags_arm_i8mm cpu_flags_arm_sve2
View
Download
Browse License: MIT Overlay: bentoo
ChangeLog
commit 24355c1170b0ca3cc788763c1adf79611c47e03e
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Jul 19 18:19:15 2026 -0300
add(dev-cpp/safeint-3.0.28a, sci-libs/dlpack-1.3), mod(sci-ml/{llama-cpp, whisper-cpp, stable-diffusion-cpp, ik_llama-cpp}, sci-libs/onnxruntime-bin, .autoupdate/packages.toml)
Story 002 (AI stack foundation), completing work partially captured by
5a315107. That commit swept an intermediate state of this series into an
unrelated bump; this finishes it.
Unblocks sci-libs/onnxruntime: dev-cpp/safeint and sci-libs/dlpack exist
only in ::guru, so as of 5a315107 onnxruntime was uninstallable on every
arch. Both ported header-only, Manifests regenerated from independently
downloaded distfiles and byte-identical to guru's.
ROCm USE flag renamed rocm -> hip across the family. Empirically, and
reproducibly in both directions on two independent packages, naming it
"rocm" makes pkgcheck emit NonsolvableDeps{InDev,InStable} on arm64
profiles while "hip" scans clean, for identical semantics and identical
dependencies. The mechanism is NOT understood and the pruning is not
universal (an equivalent arm64? ( !webm ) guard does not silence
media-libs/libwebm). Recorded as a workaround, not a rule; re-check on
pkgcheck upgrades. See story 002 design D1.4a.
Correctness fixes found while adapting, each a USE flag that pulled real
dependencies and did nothing:
- whisper-cpp: GGML_CLBLAST does not exist in 1.9.1; USE=opencl built
no OpenCL support. Now -DGGML_OPENCL.
- ik_llama-cpp: GGML_HIP is a no-op in that fork (it is GGML_HIPBLAS);
USE=rocm pulled hip and hipBLAS and built zero GPU support.
- whisper-cpp and ik_llama-cpp: -DGGML_NATIVE=OFF alone does not pin
the x86 baseline. INS_ENB leaves AVX/AVX2/FMA/F16C defaulting ON, so
both shipped binaries that SIGILL on pre-Haswell hardware regardless
of CPU_FLAGS_X86. Both now wire the flags explicitly.
- onnxruntime-bin: headers installed flat into /usr/include while the
shipped .pc and CMake config both declare
includedir=${prefix}/include/onnxruntime, and the .pc carried
prefix=/usr/local. Both corrected.
- llama-cpp: unpinned webui fetch (mutable bucket pointer, no Manifest
checksum) removed from all three ebuilds, not just the newest.
arm64 VALIDATION LEVEL — upstream evidence only, NO test build (R1.5).
KEYWORDS="~amd64 ~arm64" on llama-cpp, whisper-cpp, stable-diffusion-cpp,
onnxruntime and onnxruntime-bin rests on upstream source inspection and
dependency keyword surveys. The qemu-user chroot build (story 002 tasks
1.10/1.11) was NOT run: it needs a qemu rebuild with static-user, a
binfmt handler and a stage3. Nothing here asserts arm64 runtime
correctness, and no GPU backend was validated on any architecture.
ik_llama-cpp stays ~amd64 deliberately.
NOT BUILT. No emerge was run for any package in this commit. Every option
name, install path and collision claim was verified by reading pinned
upstream sources, not by execution. The per-package emerge gates (tasks
2.12, 3.11, 4.11, 5.11) remain open.
pkgcheck: llama-cpp, whisper-cpp, ik_llama-cpp, onnxruntime-bin, safeint
and dlpack are clean. stable-diffusion-cpp reports 4 (media-libs/libwebm
is ~amd64-only) and onnxruntime reports 4 (safeint/dlpack kept at ~amd64,
plus dev-python/coloredlogs has no arm64 keyword). Both accepted and
documented.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
commit 5a315107f3ff8696462c6646020302035ffa2ee7
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Jul 19 18:01:25 2026 -0300
add(sci-libs/onnxruntime{,-bin}-1.27.1, sci-ml/{ik_llama-cpp-0_pre20260718, stable-diffusion-cpp-0_pre782, whisper-cpp-1.9.1}), add(metadata/{md5-cache/app-editors/vim-9.2.0810, md5-cache/app-editors/vim-core-9.2.0810, md5-cache/app-portage/bentoolkit-0.14.0, md5-cache/sci-libs/onnxruntime-1.27.1, md5-cache/sci-libs/onnxruntime-bin-1.27.1, md5-cache/sci-ml/ik_llama-cpp-0_pre20260718, md5-cache/sci-ml/stable-diffusion-cpp-0_pre782, md5-cache/sci-ml/whisper-cpp-1.9.1}), mod(sci-ml/{llama-cpp-0_pre10019, llama-cpp-0_pre10057, llama-cpp-0_pre10068}), mod(metadata/{md5-cache/app-portage/bentoolkit-0.13.1, md5-cache/sci-ml/llama-cpp-0_pre10019, md5-cache/sci-ml/llama-cpp-0_pre10057, md5-cache/sci-ml/llama-cpp-0_pre10068}), up(app-editors/{vim, vim-core}-9.2.0807 -> 9.2.0810, app-portage/bentoolkit-0.13.1 -> 0.14.0)
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Jul 19 18:19:15 2026 -0300
add(dev-cpp/safeint-3.0.28a, sci-libs/dlpack-1.3), mod(sci-ml/{llama-cpp, whisper-cpp, stable-diffusion-cpp, ik_llama-cpp}, sci-libs/onnxruntime-bin, .autoupdate/packages.toml)
Story 002 (AI stack foundation), completing work partially captured by
5a315107. That commit swept an intermediate state of this series into an
unrelated bump; this finishes it.
Unblocks sci-libs/onnxruntime: dev-cpp/safeint and sci-libs/dlpack exist
only in ::guru, so as of 5a315107 onnxruntime was uninstallable on every
arch. Both ported header-only, Manifests regenerated from independently
downloaded distfiles and byte-identical to guru's.
ROCm USE flag renamed rocm -> hip across the family. Empirically, and
reproducibly in both directions on two independent packages, naming it
"rocm" makes pkgcheck emit NonsolvableDeps{InDev,InStable} on arm64
profiles while "hip" scans clean, for identical semantics and identical
dependencies. The mechanism is NOT understood and the pruning is not
universal (an equivalent arm64? ( !webm ) guard does not silence
media-libs/libwebm). Recorded as a workaround, not a rule; re-check on
pkgcheck upgrades. See story 002 design D1.4a.
Correctness fixes found while adapting, each a USE flag that pulled real
dependencies and did nothing:
- whisper-cpp: GGML_CLBLAST does not exist in 1.9.1; USE=opencl built
no OpenCL support. Now -DGGML_OPENCL.
- ik_llama-cpp: GGML_HIP is a no-op in that fork (it is GGML_HIPBLAS);
USE=rocm pulled hip and hipBLAS and built zero GPU support.
- whisper-cpp and ik_llama-cpp: -DGGML_NATIVE=OFF alone does not pin
the x86 baseline. INS_ENB leaves AVX/AVX2/FMA/F16C defaulting ON, so
both shipped binaries that SIGILL on pre-Haswell hardware regardless
of CPU_FLAGS_X86. Both now wire the flags explicitly.
- onnxruntime-bin: headers installed flat into /usr/include while the
shipped .pc and CMake config both declare
includedir=${prefix}/include/onnxruntime, and the .pc carried
prefix=/usr/local. Both corrected.
- llama-cpp: unpinned webui fetch (mutable bucket pointer, no Manifest
checksum) removed from all three ebuilds, not just the newest.
arm64 VALIDATION LEVEL — upstream evidence only, NO test build (R1.5).
KEYWORDS="~amd64 ~arm64" on llama-cpp, whisper-cpp, stable-diffusion-cpp,
onnxruntime and onnxruntime-bin rests on upstream source inspection and
dependency keyword surveys. The qemu-user chroot build (story 002 tasks
1.10/1.11) was NOT run: it needs a qemu rebuild with static-user, a
binfmt handler and a stage3. Nothing here asserts arm64 runtime
correctness, and no GPU backend was validated on any architecture.
ik_llama-cpp stays ~amd64 deliberately.
NOT BUILT. No emerge was run for any package in this commit. Every option
name, install path and collision claim was verified by reading pinned
upstream sources, not by execution. The per-package emerge gates (tasks
2.12, 3.11, 4.11, 5.11) remain open.
pkgcheck: llama-cpp, whisper-cpp, ik_llama-cpp, onnxruntime-bin, safeint
and dlpack are clean. stable-diffusion-cpp reports 4 (media-libs/libwebm
is ~amd64-only) and onnxruntime reports 4 (safeint/dlpack kept at ~amd64,
plus dev-python/coloredlogs has no arm64 keyword). Both accepted and
documented.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
commit 5a315107f3ff8696462c6646020302035ffa2ee7
Author: lucascouts <lucascs@protonmail.com>
Date: Sun Jul 19 18:01:25 2026 -0300
add(sci-libs/onnxruntime{,-bin}-1.27.1, sci-ml/{ik_llama-cpp-0_pre20260718, stable-diffusion-cpp-0_pre782, whisper-cpp-1.9.1}), add(metadata/{md5-cache/app-editors/vim-9.2.0810, md5-cache/app-editors/vim-core-9.2.0810, md5-cache/app-portage/bentoolkit-0.14.0, md5-cache/sci-libs/onnxruntime-1.27.1, md5-cache/sci-libs/onnxruntime-bin-1.27.1, md5-cache/sci-ml/ik_llama-cpp-0_pre20260718, md5-cache/sci-ml/stable-diffusion-cpp-0_pre782, md5-cache/sci-ml/whisper-cpp-1.9.1}), mod(sci-ml/{llama-cpp-0_pre10019, llama-cpp-0_pre10057, llama-cpp-0_pre10068}), mod(metadata/{md5-cache/app-portage/bentoolkit-0.13.1, md5-cache/sci-ml/llama-cpp-0_pre10019, md5-cache/sci-ml/llama-cpp-0_pre10057, md5-cache/sci-ml/llama-cpp-0_pre10068}), up(app-editors/{vim, vim-core}-9.2.0807 -> 9.2.0810, app-portage/bentoolkit-0.13.1 -> 0.14.0)

