Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
d16bfaf
feat: add platform builds and packages
Gioee May 7, 2026
a57b57a
feat: update Makefile for relative build paths and add adam.swift
Gioee May 8, 2026
acd0c81
feat: enhance Makefile for platform-specific Objective-C compilation …
Gioee May 11, 2026
9f09561
feat: add additional compiler flags for sqlite-memory module
Gioee May 11, 2026
2cd4f70
fix: update Android ARCH error messages to remove armeabi-v7a option
Gioee May 11, 2026
0494266
feat: update Makefile for Android to use C++ driver and static libc++…
Gioee May 11, 2026
8e94871
feat: update Makefile for SQLite extension to use C++ driver and add …
Gioee May 11, 2026
83ffacc
feat: update CFLAGS in Makefiles to use gnu11 standard for compatibility
Gioee May 13, 2026
71d6661
feat: implement portable strndup function for compatibility across pl…
Gioee May 13, 2026
bb34c11
feat: add portable memmem implementation for MinGW compatibility
Gioee May 13, 2026
595feaa
feat: update Vulkan installation process and improve Makefile for sta…
Gioee May 13, 2026
4fc477d
feat: enhance Vulkan installation in CI and improve Makefile for dyna…
Gioee May 13, 2026
cb101aa
feat: update Vulkan installation in CI and enhance Makefile for stati…
Gioee May 13, 2026
f503674
feat: update Makefile for platform-specific linking and library order
Gioee May 13, 2026
19180ce
feat: enhance Makefile to support GPU backends with Vulkan and OpenCL…
Gioee May 13, 2026
242171c
feat: update Makefile to use correct Vulkan library flag for Windows …
Gioee May 14, 2026
4f13bd4
feat: add zlib-dev dependency for linux-musl and docker builds
Gioee May 14, 2026
857c097
feat: update Makefile to correctly link -lz for Linux and Android pla…
Gioee May 14, 2026
73dbc10
feat: add git dependency to Alpine Docker setup in CI workflow
Gioee May 14, 2026
0da300b
feat: configure git safe.directory in Alpine Docker setup for proper …
Gioee May 14, 2026
47fbb98
feat: update linux-musl arm64 test command to skip unit tests in Alpi…
Gioee May 14, 2026
f522cca
feat: update Vulkan installation steps in CI workflow for compatibility
Gioee May 14, 2026
60edb87
feat: update installation command for Vulkan to use glslc package
Gioee May 14, 2026
1b006b1
feat: update CI build configuration to disable sanitizers and refine …
Gioee May 15, 2026
53fc0dc
feat: refine build job naming and update macOS test conditions for be…
Gioee May 15, 2026
6d8d6b9
feat: add macOS x86_64 build step for sqlite3 shell to support archit…
Gioee May 15, 2026
f049c2c
feat: replace mkdir with platform-specific adam_mkdir for cross-platf…
Gioee May 15, 2026
7d0cb22
feat: enhance LLAMA_LIBS to support MinGW Ninja by resolving ggml lib…
Gioee May 15, 2026
36e17ae
feat: enhance Makefile for platform-specific library linking and supp…
Gioee May 15, 2026
bb56d24
feat: improve Windows compatibility by adding _access check and ensur…
Gioee May 18, 2026
1843bb9
feat: create necessary POSIX-style directories for MinGW compatibilit…
Gioee May 18, 2026
b3600d7
feat: ensure existence of POSIX-style directories before running test…
Gioee May 18, 2026
fe736c3
feat: remount Android filesystem as read-write and create /tmp and /v…
Gioee May 18, 2026
d4ea979
fix: update file paths for Android compatibility in tests and define …
Gioee May 19, 2026
5499a13
fix: update shell command for Android compatibility and ensure existe…
Gioee May 19, 2026
380297f
feat: add size-reduction and dead-code elimination flags for SQLite e…
Gioee May 19, 2026
8e85af2
fix: clean code and optimize extension flags
Gioee May 20, 2026
92e2d72
fix: move platform-specific shared-extension filename logic in Makefile
Gioee May 20, 2026
ba2e8d4
fix: update Package.swift checksum handling and add artifact existenc…
Gioee May 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
82 changes: 82 additions & 0 deletions .github/workflows/flutter-package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@
name: publish flutter package
on:
push:
tags:
- '*.*.*'

permissions:
contents: read
id-token: write

jobs:
publish:
runs-on: ubuntu-22.04
name: publish to pub.dev

steps:

- uses: actions/checkout@v4.2.2

- name: download release assets
run: |
VERSION=${GITHUB_REF#refs/tags/}
echo "VERSION=$VERSION" >> $GITHUB_ENV

mkdir -p artifacts
cd artifacts

# Download all platform binaries from the GitHub release
gh release download "$VERSION" --pattern "adam-*.tar.gz"

# Extract all archives
for archive in adam-*.tar.gz; do
name=$(basename "$archive" "-$VERSION.tar.gz")
mkdir -p "$name"
tar -xzf "$archive" -C "$name"
rm "$archive"
done

ls -la
env:
GH_TOKEN: ${{ github.token }}

- uses: dart-lang/setup-dart@v1.7.1

- name: assemble and publish flutter package
run: |
FLUTTER_DIR=packages/flutter

# Android (only arm64 and x64, no arm)
mkdir -p $FLUTTER_DIR/native_libraries/android
cp artifacts/adam-android-arm64-v8a/adam.so $FLUTTER_DIR/native_libraries/android/adam_android_arm64.so
cp artifacts/adam-android-x86_64/adam.so $FLUTTER_DIR/native_libraries/android/adam_android_x64.so

# iOS device
mkdir -p $FLUTTER_DIR/native_libraries/ios
cp artifacts/adam-ios/adam.dylib $FLUTTER_DIR/native_libraries/ios/adam_ios_arm64.dylib

# iOS simulator (keep universal/fat binary as-is)
mkdir -p $FLUTTER_DIR/native_libraries/ios-sim
cp artifacts/adam-ios-sim/adam.dylib $FLUTTER_DIR/native_libraries/ios-sim/adam_ios-sim.dylib

# macOS (separate arch-specific dylibs)
mkdir -p $FLUTTER_DIR/native_libraries/mac
cp artifacts/adam-macos-arm64/adam.dylib $FLUTTER_DIR/native_libraries/mac/adam_mac_arm64.dylib
cp artifacts/adam-macos-x86_64/adam.dylib $FLUTTER_DIR/native_libraries/mac/adam_mac_x64.dylib

# Linux
mkdir -p $FLUTTER_DIR/native_libraries/linux
cp artifacts/adam-linux-cpu-x86_64/adam.so $FLUTTER_DIR/native_libraries/linux/adam_linux_x64.so
cp artifacts/adam-linux-cpu-arm64/adam.so $FLUTTER_DIR/native_libraries/linux/adam_linux_arm64.so

# Windows
mkdir -p $FLUTTER_DIR/native_libraries/windows
cp artifacts/adam-windows-cpu-x86_64/adam.dll $FLUTTER_DIR/native_libraries/windows/adam_windows_x64.dll

# Update version
sed -i "s/^version: .*/version: $VERSION/" $FLUTTER_DIR/pubspec.yaml

# Publish to pub.dev
cd $FLUTTER_DIR
dart pub get
dart pub publish --force
Loading
Loading