mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2026-08-12 22:31:11 +04:00
* test address on Intel-LNL-U7-258V * retry * run address on github * use native build for cpu * this should be runnable everywhere multicore * disable ccache --------- Co-authored-by: Sigbjørn Skjæret <sigbjorn.skjaeret@huggingface.co>
58 lines
2.1 KiB
YAML
58 lines
2.1 KiB
YAML
name: Build relocatable cmake package
|
|
on:
|
|
workflow_dispatch:
|
|
workflow_call:
|
|
|
|
jobs:
|
|
linux:
|
|
runs-on: [self-hosted, Linux]
|
|
steps:
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Build
|
|
run: |
|
|
PREFIX="$(pwd)"/inst
|
|
cmake -S . -B build \
|
|
-DCMAKE_PREFIX_PATH="$PREFIX" \
|
|
-DLLAMA_OPENSSL=OFF \
|
|
-DLLAMA_BUILD_TESTS=OFF \
|
|
-DLLAMA_BUILD_TOOLS=OFF \
|
|
-DLLAMA_BUILD_EXAMPLES=OFF \
|
|
-DLLAMA_BUILD_APP=OFF \
|
|
-DLLAMA_BUILD_IS_DEV=OFF \
|
|
-DCMAKE_BUILD_TYPE=Release
|
|
cmake --build build --config Release -j $(nproc)
|
|
cmake --install build --prefix "$PREFIX" --config Release
|
|
|
|
export LLAMA_CONFIG="$PREFIX"/lib/cmake/llama/llama-config.cmake
|
|
tclsh <<'EOF'
|
|
set build(commit) [string trim [exec git rev-parse --short HEAD]]
|
|
set build(number) [string trim [exec git rev-list --count HEAD]]
|
|
|
|
set cmakelists [read [open "CMakeLists.txt" r]]
|
|
regexp {set\(LLAMA_VERSION_MAJOR\s+(\d+)\)} $cmakelists -> major
|
|
regexp {set\(LLAMA_VERSION_MINOR\s+(\d+)\)} $cmakelists -> minor
|
|
regexp {set\(LLAMA_VERSION_PATCH\s+(\d+)\)} $cmakelists -> patch
|
|
set build(version) "$major.$minor.$patch"
|
|
|
|
set llamaconfig [read [open "$env(LLAMA_CONFIG)" r]]
|
|
set checks [list "set\\(LLAMA_VERSION \\s+$build(version)\\)" \
|
|
"set\\(LLAMA_BUILD_COMMIT\\s+$build(commit)\\)" \
|
|
"set\\(LLAMA_BUILD_NUMBER\\s+$build(number)\\)"]
|
|
|
|
puts -nonewline "Checking llama-config.cmake version... "
|
|
foreach check $checks {
|
|
if {![regexp -expanded -- $check $llamaconfig]} {
|
|
puts "\"$check\" failed!"
|
|
exit 1
|
|
}
|
|
}
|
|
puts "success."
|
|
EOF
|
|
|
|
cd examples/simple-cmake-pkg
|
|
cmake -S . -B build -DCMAKE_PREFIX_PATH="$PREFIX"/lib/cmake
|
|
cmake --build build -j $(nproc)
|