Grep Android Version from CMake

This commit is contained in:
Florian Märkl 2019-11-01 17:59:38 +01:00
commit 5d8ce70ff7
No known key found for this signature in database
GPG key ID: 125BC8A5A6A1E857
4 changed files with 22 additions and 4 deletions

2
android/.gitignore vendored
View file

@ -12,3 +12,5 @@
/captures /captures
.externalNativeBuild .externalNativeBuild
.cxx .cxx
/app/release
keystore.jks

View file

@ -3,6 +3,20 @@ apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt' apply plugin: 'kotlin-kapt'
def rootCMakeLists = "../../CMakeLists.txt"
def rootCMakeListsContent = file(rootCMakeLists).text
static def grepVersionComponent(content, varname) {
def match = content =~ /set\($varname ([0-9]+)\)/
if(!match.find())
throw new GradleException("Failed to find $varname in CMakeLists.txt")
return match.group(1)
}
def chiakiVersionMajor = grepVersionComponent(rootCMakeListsContent, "CHIAKI_VERSION_MAJOR")
def chiakiVersionMinor = grepVersionComponent(rootCMakeListsContent, "CHIAKI_VERSION_MINOR")
def chiakiVersionPatch = grepVersionComponent(rootCMakeListsContent, "CHIAKI_VERSION_PATCH")
def chiakiVersion = "$chiakiVersionMajor.$chiakiVersionMinor.$chiakiVersionPatch"
println("Determined Chiaki Version: $chiakiVersion")
android { android {
compileSdkVersion 29 compileSdkVersion 29
buildToolsVersion "29.0.2" buildToolsVersion "29.0.2"
@ -11,7 +25,7 @@ android {
minSdkVersion 21 minSdkVersion 21
targetSdkVersion 29 targetSdkVersion 29
versionCode 1 versionCode 1
versionName "1.0" versionName chiakiVersion
externalNativeBuild { externalNativeBuild {
cmake { cmake {
arguments "-DCHIAKI_ENABLE_TESTS=OFF", arguments "-DCHIAKI_ENABLE_TESTS=OFF",
@ -26,12 +40,12 @@ android {
externalNativeBuild { externalNativeBuild {
cmake { cmake {
version "3.10.2+" version "3.10.2+"
path "../../CMakeLists.txt" path rootCMakeLists
} }
} }
buildTypes { buildTypes {
release { release {
minifyEnabled false minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
} }
} }

View file

@ -19,3 +19,5 @@
# If you keep the line number information, uncomment this to # If you keep the line number information, uncomment this to
# hide the original source file name. # hide the original source file name.
#-renamesourcefileattribute SourceFile #-renamesourcefileattribute SourceFile
-dontobfuscate

View file

@ -1,7 +1,7 @@
// Top-level build file where you can add configuration options common to all sub-projects/modules. // Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript { buildscript {
ext.kotlin_version = '1.3.41' ext.kotlin_version = '1.3.50'
repositories { repositories {
google() google()
jcenter() jcenter()