Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
43 changes: 43 additions & 0 deletions .github/workflows/android.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Android (GluonFX)

on:
workflow_dispatch:
push:
branches: [ feat/ios-javafx ]
pull_request:
branches: [ feat/ios-javafx ]

jobs:
build-android:
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup GraalVM (Java 17)
uses: graalvm/setup-graalvm@v1
with:
java-version: '17'
distribution: 'graalvm'
github-token: ${{ secrets.GITHUB_TOKEN }}
native-image: true

- name: Cache Gradle
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}

- name: Build Android (GluonFX)
run: ./gradlew -Pgluonfx.target=android android --no-daemon --stacktrace --info

- name: Upload Gluon artifacts
uses: actions/upload-artifact@v4
with:
name: gluonfx-android-artifacts
path: build/gluonfx/**
if-no-files-found: warn


17 changes: 17 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
# Gradle build outputs
/build/
/.gradle/

# Project docs (local only)
trd.md

# IDE
/.idea/
*.iml
/.vscode/

# Logs
*.log

# OS
.DS_Store
# Created by https://www.toptal.com/developers/gitignore/api/intellij,java,macos
# Edit at https://www.toptal.com/developers/gitignore?templates=intellij,java,macos

Expand Down
Binary file removed .gradle/8.13/checksums/checksums.lock
Binary file not shown.
Binary file removed .gradle/8.13/executionHistory/executionHistory.bin
Binary file not shown.
Binary file removed .gradle/8.13/executionHistory/executionHistory.lock
Binary file not shown.
Binary file removed .gradle/8.13/fileChanges/last-build.bin
Binary file not shown.
Binary file removed .gradle/8.13/fileHashes/fileHashes.bin
Binary file not shown.
Binary file removed .gradle/8.13/fileHashes/fileHashes.lock
Binary file not shown.
Binary file removed .gradle/8.13/fileHashes/resourceHashesCache.bin
Binary file not shown.
Empty file removed .gradle/8.13/gc.properties
Empty file.
Binary file removed .gradle/buildOutputCleanup/buildOutputCleanup.lock
Binary file not shown.
2 changes: 0 additions & 2 deletions .gradle/buildOutputCleanup/cache.properties

This file was deleted.

Binary file removed .gradle/file-system.probe
Binary file not shown.
Empty file removed .gradle/vcs-1/gc.properties
Empty file.
28 changes: 28 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
cmake_minimum_required(VERSION 3.20)
project(jui_engine C)

set(CMAKE_POSITION_INDEPENDENT_CODE ON)

add_library(jui_engine SHARED
engine/src/jui_engine_stub.c
engine/src/jni/engine_jni.c
)

target_include_directories(jui_engine PUBLIC engine/include)

find_package(JNI REQUIRED)
target_include_directories(jui_engine PRIVATE ${JNI_INCLUDE_DIRS})
target_link_libraries(jui_engine PRIVATE ${JNI_LIBRARIES})

# Placeholders for platform hosts (headers only for now)
target_include_directories(jui_engine PUBLIC engine/platform/ios engine/platform/android)

if(APPLE)
set_target_properties(jui_engine PROPERTIES OUTPUT_NAME "jui_engine")
elseif(WIN32)
set_target_properties(jui_engine PROPERTIES OUTPUT_NAME "jui_engine")
else()
set_target_properties(jui_engine PROPERTIES OUTPUT_NAME "jui_engine")
endif()


Loading