multi-os-engine

Multi-OS Engine: Create iOS Apps in Java (or Kotlin ... etc.)

Multi-OS Engine

Overview

Multi-OS Engine provides a Java runtime and Java interfaces to iOS platform API to develop native iOS applications with native look and feel, native performance, and portability of common Java logic modules from your Android Apps. It comes fully integrated with Android Studio hosted on macOS or Windows and contains all the development tools needed to develop an iOS app and publish to the App Store.

Getting Started

Building from Source Code

Requirements

  • Apple macOS 10.11
  • Minimum 8GB RAM

Install the 'repo' Tool

mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo

You may also install the repo using brew:

brew install repo

Get the Source Code

Mainline branch:

repo init -u https://github.com/multi-os-engine/manifest.git
repo sync

Note: if you want to get the source code from development branch with initial support of Windows and bitcode, switch to "moe-windows-bitcode" branch:

repo init -u https://github.com/multi-os-engine/manifest.git -b moe-windows-bitcode
repo sync

Installing Homebrew & Dependencies

Install brew from brew.sh, then you can install MOE's dependencies:

brew tap homebrew/versions
brew install autogen autoconf automake libtool pkg-config wget [email protected] cloog cmake jasmin gpg ant maven

cd <repo>/moe/moe-core
brew install file://`pwd`/dependencies/premake5.rb

Building MinGW & LLVM

Building the complete SDK and related tools requires LLVM and MinGW. To build these execute the following:

cd <repo>/prebuilts
./gradlew mingw llvm

This step only needs to be done once (or until MinGW or LLVM components/requirements are changed).

Building Multi-OS Engine Core

The moe/moe-core repo contains the runtime (and some compile time) components of MOE. To build the frameworks and build tools, execute the following:

cd <repo>/moe/moe-core
./gradlew build

Building Multi-OS Engine Tools

The moe/tools repositories contain the tools required to build and run MOE applications.

SDK Publisher: creating a developer SDK:

cd <repo>/moe/tools/master
./gradlew :moe-sdk:devsdk

Gradle Plugin: building and publishing the Gradle plugin to Maven local:

cd <repo>/moe/tools/master
./gradlew :moe-gradle:publishToMavenLocal

Maven Plugin: building and publishing the Maven plugin to Maven local:

cd <repo>/moe/tools/moe.plugin.maven
mvn clean install

IDEA Plugin: building the IDEA plugin:

cd <repo>/moe/tools/master
./gradlew :moe.plugin.idea:build

Eclipse Plugin: building the Eclipse plugin:

cd <repo>/moe/tools/moe.plugin.eclipse
mvn clean install -DBUILD_NUMBER=1

Related Repositories

games

games

:video_game: A list of popular/awesome videos games, add-ons, maps, etc. hosted ...

LGame

LGame

This is free 2d game development framework(Java Game Engine), support JavaSE/And ...

mtasa-blue

mtasa-blue

Multi Theft Auto is an open-source game engine that adds full multiplayer networ ...

Concurrency-concepts

Concurrency-concepts

A guide to concurrency, multi-threading and parallel programming concepts. Expla ...

games

games

:video_game: A list of popular/awesome videos games, add-ons, maps, etc. hosted ...