Skip to content

Commit 1fc3bc7

Browse files
committed
llama-cpp: bump to 0.0.0-b4793
1 parent 5f2e6bd commit 1fc3bc7

File tree

7 files changed

+61
-117
lines changed

7 files changed

+61
-117
lines changed

packages/llama-cpp/0001-fix-compile-options.patch

Lines changed: 0 additions & 11 deletions
This file was deleted.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
--- a/ggml/src/ggml-backend-reg.cpp
2+
+++ b/ggml/src/ggml-backend-reg.cpp
3+
@@ -493,6 +493,7 @@
4+
if (user_search_path == nullptr) {
5+
search_paths.push_back(L"." + path_separator());
6+
search_paths.push_back(get_executable_path());
7+
+ search_paths.push_back(get_executable_path() + + L".." + path_separator() + L"lib" + path_separator());
8+
} else {
9+
search_paths.push_back(utf8_to_utf16(user_search_path) + path_separator());
10+
}

packages/llama-cpp/0002-impl-missing-functions.patch

Lines changed: 0 additions & 92 deletions
This file was deleted.

packages/llama-cpp/build.sh

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,23 @@
1-
TERMUX_PKG_HOMEPAGE=https://github.com/ggerganov/llama.cpp
2-
TERMUX_PKG_DESCRIPTION="Port of Facebook's LLaMA model in C/C++"
3-
TERMUX_PKG_LICENSE=GPL-3.0
1+
TERMUX_PKG_HOMEPAGE=https://github.com/ggml-org/llama.cpp
2+
TERMUX_PKG_DESCRIPTION="LLM inference in C/C++"
3+
TERMUX_PKG_LICENSE="MIT"
44
TERMUX_PKG_MAINTAINER=@termux
5-
TERMUX_PKG_VERSION=0.0.0-b1094
6-
TERMUX_PKG_SRCURL=https://github.com/ggerganov/llama.cpp/archive/refs/tags/${TERMUX_PKG_VERSION#*-}.tar.gz
7-
TERMUX_PKG_SHA256=315071e1034846e8ed448008cda35da481f056d6495696cb862ef8b94aaae0f6
5+
TERMUX_PKG_VERSION=0.0.0-b4793
6+
TERMUX_PKG_SRCURL=https://github.com/ggml-org/llama.cpp/archive/refs/tags/${TERMUX_PKG_VERSION#*-}.tar.gz
7+
TERMUX_PKG_SHA256=478a776c531da8b83850f2c2cbb1532ca7e9cc0a8071d0fd0c86baa91c558908
88
TERMUX_PKG_AUTO_UPDATE=true
9-
TERMUX_PKG_DEPENDS="libc++, libopenblas, openmpi"
10-
TERMUX_PKG_RECOMMENDS="python-numpy, python-sentencepiece"
9+
TERMUX_PKG_DEPENDS="libc++, libcurl"
10+
TERMUX_PKG_BUILD_DEPENDS="vulkan-headers, opencl-headers, ocl-icd"
11+
TERMUX_PKG_SUGGESTS="llama-cpp-backend-vulkan, llama-cpp-backend-opencl"
1112
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
12-
-DLLAMA_MPI=ON
1313
-DBUILD_SHARED_LIBS=ON
14-
-DLLAMA_BLAS=ON
15-
-DLLAMA_BLAS_VENDOR=OpenBLAS
14+
-DLLAMA_BUILD_TESTS=OFF
15+
-DLLAMA_CURL=ON
16+
-DGGML_BACKEND_DL=ON
17+
-DGGML_OPENMP=OFF
18+
-DGGML_VULKAN=ON
19+
-DGGML_VULKAN_SHADERS_GEN_TOOLCHAIN=$TERMUX_PKG_BUILDER_DIR/host-toolchain.cmake
20+
-DGGML_OPENCL=ON
1621
"
1722

1823
# XXX: llama.cpp uses `int64_t`, but on 32-bit Android `size_t` is `int32_t`.
@@ -31,8 +36,18 @@ termux_pkg_auto_update() {
3136
termux_pkg_upgrade_version "0.0.0-${latest_tag}"
3237
}
3338

39+
termux_step_pre_configure() {
40+
export PATH="$NDK/shader-tools/linux-x86_64:$PATH"
41+
42+
local _libvulkan=vulkan
43+
if [[ "${TERMUX_ON_DEVICE_BUILD}" == "false" && "${TERMUX_PKG_API_LEVEL}" -lt 28 ]]; then
44+
_libvulkan="${TERMUX_STANDALONE_TOOLCHAIN}/sysroot/usr/lib/${TERMUX_HOST_PLATFORM}/28/libvulkan.so"
45+
fi
46+
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" -DVulkan_LIBRARY=${_libvulkan}"
47+
}
48+
3449
termux_step_post_make_install() {
35-
cd "$TERMUX_PREFIX/bin" || exit 1
36-
mv main llama
37-
mv server llama-server
50+
mkdir -p "$TERMUX_PREFIX"/lib
51+
cp -f "$TERMUX_PKG_BUILDDIR"/bin/libggml-opencl.so "$TERMUX_PREFIX"/lib/
52+
cp -f "$TERMUX_PKG_BUILDDIR"/bin/libggml-vulkan.so "$TERMUX_PREFIX"/lib/
3853
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
set (CMAKE_SYSTEM_NAME "Linux" )
2+
set (CMAKE_SYSTEM_PROCESSOR "x86_64")
3+
set (CMAKE_C_COMPILER "gcc")
4+
set (CMAKE_CXX_COMPILER "g++")
5+
set (CMAKE_C_FLAGS "" CACHE STRING "" FORCE)
6+
set (CMAKE_CXX_FLAGS "" CACHE STRING "" FORCE)
7+
set (CMAKE_EXE_LINKER_FLAGS "" CACHE STRING "" FORCE)
8+
set (CMAKE_MODULE_LINKER_FLAGS "" CACHE STRING "" FORCE)
9+
set (CMAKE_SHARED_LINKER_FLAGS "" CACHE STRING "" FORCE)
10+
set (CMAKE_CROSSCOMPILING OFF)
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
TERMUX_SUBPKG_DESCRIPTION="OpenCL Backend for LLaMA.cpp"
2+
TERMUX_SUBPKG_RECOMMENDS="ocl-icd"
3+
TERMUX_SUBPKG_SUGGESTS="opencl-vendor-driver | clvk"
4+
TERMUX_SUBPKG_INCLUDE="
5+
lib/libggml-opencl.so
6+
"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
TERMUX_SUBPKG_DESCRIPTION="Vulkan Backend for LLaMA.cpp"
2+
TERMUX_SUBPKG_RECOMMENDS="vulkan-loader"
3+
TERMUX_SUBPKG_SUGGESTS="vulkan-loader-generic, mesa-vulkan-icd-freedreno"
4+
TERMUX_SUBPKG_INCLUDE="
5+
lib/libggml-vulkan.so
6+
"

0 commit comments

Comments
 (0)