]> git.djapps.eu Git - pkg/ggml/sources/ggml/commit
ci : add github release job (#1334)
authorDaniel Bevenius <redacted>
Thu, 28 Aug 2025 07:10:48 +0000 (09:10 +0200)
committerGitHub <redacted>
Thu, 28 Aug 2025 07:10:48 +0000 (09:10 +0200)
commit83835ffaa0f2e68bc8530bd0a7584711789dc23b
tree36beaec5b572e6b2f85070d20e07448624eb1cf1
parent323951f1bdcdfbd5b5ff3a9a7c3770e63b1a560e
ci : add github release job (#1334)

* ci : add github release job

This commit adds a GitHub Actions workflow to automate the release
process. Currently this will only create an archive of the sources for
ggml when a tag is pushed.

The motivation for this is that when we start releasing versions of ggml
using semantic versioning it can be nice to have the sources needed for
ggml to be deployed as a github release. This enables CMake users that
use `FetchContent` efficiently specify the the zip file instead of
cloning.

Example usage with `FetchContent`:
```cmake
cmake_minimum_required(VERSION 3.14)
project(ggml_example)

set(CMAKE_CXX_STANDARD 17)

include(FetchContent)
FetchContent_Declare(ggml
    URL https://github.com/danbev/ggml/archive/refs/tags/v1.1.5-test.zip
    DOWNLOAD_EXTRACT_TIMESTAMP TRUE
)

FetchContent_MakeAvailable(ggml)

add_executable(ggml_example main.cpp)
target_link_libraries(ggml_example ggml)
```
And with the following `main.cpp` file:
```c++
 #include <iostream>
 #include <ggml.h>

 int main() {
     std::cout << "GGML Version: " << ggml_version() << std::endl;
     return 0;
 }
```
This could then be built using:
```console
$ cmake -S . -B build
$ cmake --build build
$ ./build/ggml_example
GGML Version: 0.0.2472
```
.github/workflows/release.yml [new file with mode: 0644]