mirror of
https://github.com/JulianGro/overte.git
synced 2025-04-07 08:23:17 +02:00
Reduce number of gradle files
This commit is contained in:
parent
ddc2548c53
commit
9293391297
9 changed files with 114 additions and 283 deletions
|
@ -3,9 +3,10 @@ setup_hifi_library()
|
|||
link_hifi_libraries(shared networking gl gpu gpu-gles image fbx render-utils physics)
|
||||
target_opengl()
|
||||
target_link_libraries(native-lib android log m)
|
||||
|
||||
set(GVR_ROOT "${HIFI_ANDROID_PRECOMPILED}/gvr/gvr-android-sdk-1.101.0/")
|
||||
target_include_directories(native-lib PRIVATE "${GVR_ROOT}/libraries/headers")
|
||||
target_link_libraries(native-lib "${HIFI_ANDROID_PRECOMPILED}/jni/arm64-v8a/libgvr.so")
|
||||
target_link_libraries(native-lib "${GVR_ROOT}/libraries/libgvr.so")
|
||||
|
||||
# finished libraries
|
||||
# core -> qt
|
||||
|
|
|
@ -8,6 +8,10 @@ buildscript {
|
|||
}
|
||||
}
|
||||
|
||||
plugins {
|
||||
id 'de.undercouch.download' version '3.3.0'
|
||||
}
|
||||
|
||||
allprojects {
|
||||
repositories {
|
||||
jcenter()
|
||||
|
@ -15,42 +19,126 @@ allprojects {
|
|||
}
|
||||
}
|
||||
|
||||
task setupDependencies(type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a'
|
||||
into 'app/src/main/jniLibs/arm64-v8a'
|
||||
|
||||
def baseFolder = new File(HIFI_ANDROID_PRECOMPILED)
|
||||
def jniFolder = new File('app/src/main/jniLibs/arm64-v8a')
|
||||
|
||||
import org.apache.tools.ant.taskdefs.condition.Os
|
||||
|
||||
def baseUrl = 'https://hifi-public.s3.amazonaws.com/austin/android/'
|
||||
def qtFile='qt-5.9.3_linux_armv8-libcpp.tgz'
|
||||
if (Os.isFamily(Os.FAMILY_MAC)) {
|
||||
qtFile = 'qt-5.9.3_osx_armv8-libcpp.tgz'
|
||||
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
qtFile = 'qt-5.9.3_win_armv8-libcpp.tgz'
|
||||
}
|
||||
|
||||
apply from: 'setupQt.gradle'
|
||||
setupDependencies.dependsOn setupQt
|
||||
def packages = [
|
||||
qt: [ file: qtFile, sharedLibFolder: '', includeLibs: ['lib/*.so', 'plugins/*/*.so'] ],
|
||||
bullet: [ file: 'bullet-2.83_armv8-libcpp.tgz' ],
|
||||
draco: [ file: 'draco_armv8-libcpp.tgz' ],
|
||||
gvr: [ file: 'gvrsdk_v1.101.0.tgz' ],
|
||||
openssl: [ file: 'openssl-1.1.0g_armv8.tgz'],
|
||||
polyvox: [ file: 'polyvox_armv8-libcpp.tgz', sharedLibFolder: 'lib', includeLibs: ['Release/libPolyVoxCore.so', 'libPolyVoxUtil.so'] ],
|
||||
tbb: [ file: 'tbb-2018_U1_armv8_libcpp.tgz', sharedLibFolder: 'lib/release', includeLibs: ['libtbb.so', 'libtbbmalloc.so'] ]
|
||||
]
|
||||
|
||||
apply from: 'setupScribe.gradle'
|
||||
setupDependencies.dependsOn setupScribe
|
||||
task downloadDependencies {
|
||||
doLast {
|
||||
packages.each { entry ->
|
||||
def filename = entry.value['file'];
|
||||
def url = baseUrl + filename;
|
||||
download {
|
||||
src url
|
||||
dest new File(baseFolder, filename)
|
||||
onlyIfNewer true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
apply from: 'setupOpenSSL.gradle'
|
||||
setupDependencies.dependsOn setupOpenSSL
|
||||
task extractDependencies(dependsOn: downloadDependencies) {
|
||||
doLast {
|
||||
packages.each { entry ->
|
||||
def folder = entry.key;
|
||||
def filename = entry.value['file'];
|
||||
def localFile = new File(HIFI_ANDROID_PRECOMPILED, filename)
|
||||
def localFolder = new File(HIFI_ANDROID_PRECOMPILED, folder)
|
||||
copy {
|
||||
from tarTree(resources.gzip(localFile))
|
||||
into localFolder
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
apply from: 'setupTBB.gradle'
|
||||
setupDependencies.dependsOn setupTBB
|
||||
task copyDependencies(dependsOn: extractDependencies) {
|
||||
doLast {
|
||||
packages.each { entry ->
|
||||
def packageName = entry.key
|
||||
def currentPackage = entry.value;
|
||||
if (currentPackage.containsKey('sharedLibFolder')) {
|
||||
def localFolder = new File(baseFolder, packageName + '/' + currentPackage['sharedLibFolder'])
|
||||
def tree = fileTree(localFolder);
|
||||
if (currentPackage.containsKey('includeLibs')) {
|
||||
currentPackage['includeLibs'].each { includeSpec -> tree.include includeSpec }
|
||||
}
|
||||
tree.visit { element ->
|
||||
if (!element.file.isDirectory()) {
|
||||
copy { from element.file; into jniFolder }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
apply from: 'setupGVR.gradle'
|
||||
setupDependencies.dependsOn setupGVR
|
||||
task setupScribe(type: Exec) {
|
||||
def scribeFile='scribe_linux_x86_64'
|
||||
def scribeLocalFile='scribe'
|
||||
if (Os.isFamily(Os.FAMILY_MAC)) {
|
||||
scribeFile = 'scribe_osx_x86_64'
|
||||
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
scribeFile = 'scribe_win32_x86_64.exe'
|
||||
scribeLocalFile = 'scribe.exe'
|
||||
}
|
||||
|
||||
apply from: 'setupDraco.gradle'
|
||||
setupDependencies.dependsOn setupDraco
|
||||
doFirst {
|
||||
download {
|
||||
src baseUrl + scribeFile
|
||||
dest new File(baseFolder, scribeLocalFile)
|
||||
onlyIfNewer true
|
||||
}
|
||||
}
|
||||
if (!Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
commandLine 'chmod', 'a+x', HIFI_ANDROID_PRECOMPILED + '/' + scribeLocalFile
|
||||
}
|
||||
}
|
||||
|
||||
apply from: 'setupBullet.gradle'
|
||||
setupDependencies.dependsOn setupBullet
|
||||
|
||||
apply from: 'setupPolyvox.gradle'
|
||||
setupDependencies.dependsOn setupPolyvox
|
||||
|
||||
task copyDependencies(type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a'
|
||||
into 'app/src/main/jniLibs/arm64-v8a'
|
||||
task setupDependencies(dependsOn: [setupScribe, copyDependencies]) {
|
||||
doLast {
|
||||
def gvrLibFolder = new File(HIFI_ANDROID_PRECOMPILED, 'gvr/gvr-android-sdk-1.101.0/libraries');
|
||||
zipTree(new File(HIFI_ANDROID_PRECOMPILED, 'gvr/gvr-android-sdk-1.101.0/libraries/sdk-audio-1.101.0.aar')).visit { element ->
|
||||
if (element.file.toString().endsWith('arm64-v8a/libgvr_audio.so')) {
|
||||
copy { from element.file; into gvrLibFolder }
|
||||
}
|
||||
}
|
||||
zipTree(new File(HIFI_ANDROID_PRECOMPILED, 'gvr/gvr-android-sdk-1.101.0/libraries/sdk-base-1.101.0.aar')).visit { element ->
|
||||
if (element.file.toString().endsWith('arm64-v8a/libgvr.so')) {
|
||||
copy { from element.file; into gvrLibFolder }
|
||||
}
|
||||
}
|
||||
fileTree(gvrLibFolder).visit { element ->
|
||||
if (element.file.toString().endsWith('.so')) {
|
||||
copy { from element.file; into jniFolder }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
task cleanDependencies(type: Delete) {
|
||||
delete HIFI_ANDROID_PRECOMPILED
|
||||
delete 'app/src/main/jniLibs/arm64-v8a'
|
||||
}
|
||||
|
||||
task clean(type: Delete) {
|
||||
|
|
|
@ -1,26 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
def file='bullet-2.83_armv8-libcpp.tgz '
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadBullet(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractBullet(dependsOn: downloadBullet, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'bullet')
|
||||
}
|
||||
|
||||
task setupBullet(dependsOn: extractBullet) { }
|
|
@ -1,26 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
def file='draco_armv8-libcpp.tgz'
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadDraco(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractDraco(dependsOn: downloadDraco, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'draco')
|
||||
}
|
||||
|
||||
task setupDraco(dependsOn: extractDraco) { }
|
|
@ -1,26 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
def file='openssl-1.1.0g_armv8.tgz'
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadOpenSSL(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractOpenSSL(dependsOn: downloadOpenSSL, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'openssl')
|
||||
}
|
||||
|
||||
task setupOpenSSL(dependsOn: extractOpenSSL) { }
|
|
@ -1,38 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
def file='polyvox_armv8-libcpp.tgz'
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadPolyvox(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractPolyvox(dependsOn: downloadPolyvox, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'polyvox')
|
||||
}
|
||||
|
||||
task copyPolyvoxCore(dependsOn: extractPolyvox, type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/polyvox/lib/Release'
|
||||
include 'libPolyVoxCore.so'
|
||||
into HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a'
|
||||
}
|
||||
|
||||
task copyPolyvoxUtil(dependsOn: extractPolyvox, type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/polyvox/lib'
|
||||
include 'libPolyVoxUtil.so'
|
||||
into HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a'
|
||||
}
|
||||
|
||||
task setupPolyvox(dependsOn: [copyPolyvoxCore, copyPolyvoxUtil]) { }
|
|
@ -1,72 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
import org.apache.tools.ant.taskdefs.condition.Os
|
||||
|
||||
def file='qt-5.9.3_linux_armv8-libcpp.tgz'
|
||||
if (Os.isFamily(Os.FAMILY_MAC)) {
|
||||
file = 'qt-5.9.3_osx_armv8-libcpp.tgz'
|
||||
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
file = 'qt-5.9.3_win_armv8-libcpp.tgz'
|
||||
}
|
||||
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadQt(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractQt(dependsOn: downloadQt, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'qt')
|
||||
}
|
||||
|
||||
task copyQtJars(dependsOn: extractQt, type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/qt/jar'
|
||||
include '*.jar'
|
||||
into HIFI_ANDROID_PRECOMPILED + '/jar'
|
||||
}
|
||||
|
||||
task copyQtLibs(dependsOn: extractQt, type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/qt/lib'
|
||||
include 'libQt5AndroidExtras.so'
|
||||
include 'libQt5Concurrent.so'
|
||||
include 'libQt5Core.so'
|
||||
include 'libQt5Gamepad.so'
|
||||
include 'libQt5Gui.so'
|
||||
include 'libQt5MultimediaQuick_p.so'
|
||||
include 'libQt5Multimedia.so'
|
||||
include 'libQt5Network.so'
|
||||
include 'libQt5OpenGL.so'
|
||||
include 'libQt5Qml.so'
|
||||
include 'libQt5QuickControls2.so'
|
||||
include 'libQt5QuickParticles.so'
|
||||
include 'libQt5Quick.so'
|
||||
include 'libQt5QuickTemplates2.so'
|
||||
include 'libQt5QuickWidgets.so'
|
||||
include 'libQt5Script.so'
|
||||
include 'libQt5ScriptTools.so'
|
||||
include 'libQt5Scxml.so'
|
||||
include 'libQt5Svg.so'
|
||||
include 'libQt5WebChannel.so'
|
||||
include 'libQt5WebSockets.so'
|
||||
include 'libQt5WebView.so'
|
||||
include 'libQt5Widgets.so'
|
||||
include 'libQt5XmlPatterns.so'
|
||||
include 'libQt5Xml.so'
|
||||
into HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a'
|
||||
}
|
||||
|
||||
task setupQt(dependsOn: [copyQtLibs, copyQtJars]) {
|
||||
}
|
|
@ -1,39 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
import org.apache.tools.ant.taskdefs.condition.Os
|
||||
|
||||
def file='scribe_linux_x86_64'
|
||||
def localFile='scribe'
|
||||
if (Os.isFamily(Os.FAMILY_MAC)) {
|
||||
file = 'scribe_osx_x86_64'
|
||||
} else if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
file = 'scribe_win32_x86_64.exe'
|
||||
localFile = 'scribe.exe'
|
||||
}
|
||||
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, localFile)
|
||||
|
||||
task filepermission(type: Exec) {
|
||||
if (!Os.isFamily(Os.FAMILY_WINDOWS)) {
|
||||
commandLine 'chmod', '700', '<file_path>'
|
||||
}
|
||||
}
|
||||
|
||||
task downloadScribe(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task setupScribe(dependsOn: downloadScribe, type: Exec) {
|
||||
commandLine 'chmod', 'a+x', destFile
|
||||
}
|
|
@ -1,31 +0,0 @@
|
|||
buildscript {
|
||||
repositories {
|
||||
jcenter()
|
||||
google()
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.android.tools.build:gradle:3.0.1'
|
||||
classpath 'de.undercouch:gradle-download-task:3.3.0'
|
||||
}
|
||||
}
|
||||
|
||||
def file='tbb-2018_U1_armv8_libcpp.tgz'
|
||||
def url='https://hifi-public.s3.amazonaws.com/austin/android/' + file
|
||||
def destFile = new File(HIFI_ANDROID_PRECOMPILED, file)
|
||||
|
||||
task downloadTBB(type: de.undercouch.gradle.tasks.download.Download) {
|
||||
src url
|
||||
dest destFile
|
||||
}
|
||||
|
||||
task extractTBB(dependsOn: downloadTBB, type: Copy) {
|
||||
from tarTree(resources.gzip(destFile))
|
||||
into new File(HIFI_ANDROID_PRECOMPILED, 'tbb')
|
||||
}
|
||||
|
||||
task setupTBB(dependsOn: extractTBB, type: Copy) {
|
||||
from HIFI_ANDROID_PRECOMPILED + '/tbb/lib/release'
|
||||
include 'libtbb.so'
|
||||
include 'libtbbmalloc.so'
|
||||
into HIFI_ANDROID_PRECOMPILED + '/jni/arm64-v8a/'
|
||||
}
|
Loading…
Reference in a new issue