https://github.com/multi-os-engine/moe-sdk-publisher
Multi-OS Engine: SDK Publisher
https://github.com/multi-os-engine/moe-sdk-publisher
Last synced: 4 months ago
JSON representation
Multi-OS Engine: SDK Publisher
- Host: GitHub
- URL: https://github.com/multi-os-engine/moe-sdk-publisher
- Owner: multi-os-engine
- License: apache-2.0
- Created: 2016-08-15T15:22:56.000Z (almost 10 years ago)
- Default Branch: moe-master
- Last Pushed: 2024-08-18T11:18:17.000Z (almost 2 years ago)
- Last Synced: 2025-03-03T03:14:59.758Z (over 1 year ago)
- Homepage: https://multi-os-engine.org
- Size: 141 KB
- Stars: 1
- Watchers: 8
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Multi-OS Engine SDK Publisher
This project creates a publishable SDK.
### Creating A Developer SDK
For development we recommend packing SDKs with the following method:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:devsdk
```
This will create the SDK structure under the `build` directory, which can be used with the [Gradle plugin](https://github.com/multi-os-engine/moe-plugin-gradle).
This task requires the `moe-core` project to be built.
### Building
Build and publish _release_ version to Maven local repository:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:publishMavenJavaPublicationToMavenLocal
```
Build and publish _snapshot_ version to Maven local repository:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:publishMavenJavaSnapshotPublicationToMavenLocal
```
Build and publish _release_ version to Bintray:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:bintrayUpload \
-Pbintray.user= \
-Pbintray.key=
```
Build and publish _snapshot_ version to Artifactory:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:artifactoryPublish \
-Partifactory.url= \
-Partifactory.key= \
-Partifactory.user= \
-Partifactory.pass=
```
These tasks require the `moe-core` project to be built.
### Packing Debug dex2oat and/or Frameworks
During development, you might want to pack debug versions of dex2oat and MOE.framework. To do this we provide two parameters:
- `moe.moe_core.dex2oat.debug`: pack the debug build of dex2oat instead of the release build.
- `moe.moe_core.sdk.debug`: pack the debug build of the frameworks instead of the release build.
For example, if you want to use a release dex2oat with debug frameworks:
```sh
cd /moe/tools/master
./gradlew :moe-sdk:devsdk -Pmoe.moe_core.sdk.debug
```
This requires debug builds of the frameworks, for more information on how to create them, [visit here](https://github.com/multi-os-engine/moe-core).
### Limit the Build
By default the SDK contains tools executables for running on both Windows and macOS. To limit the SDK to contain tools for one single paltform we provide the following properties:
- `moe.tools.sdk.exclude_mac`: don't build and pack SDK tools for mac.
- `moe.tools.sdk.exclude_win`: don't build and pack SDK tools for windows.
- `moe.tools.sdk.exclude_linux`: don't build and pack SDK tools for linux.
## Notes
Custom SDKs require a customized [Gradle plugin](https://github.com/multi-os-engine/moe-plugin-gradle).