Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 1 | buildscript { |
| 2 | repositories { |
| 3 | mavenCentral() |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 4 | google() |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 5 | } |
| 6 | dependencies { |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 7 | classpath GRADLE_CLASS_PATH |
| 8 | classpath PROTOBUF_CLASS_PATH |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 9 | } |
| 10 | } |
| 11 | |
| 12 | apply plugin: 'com.android.application' |
| 13 | apply plugin: 'com.google.protobuf' |
| 14 | |
| 15 | android { |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 16 | compileSdkVersion COMPILE_SDK.toInteger() |
| 17 | buildToolsVersion BUILD_TOOLS_VERSION |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 18 | |
| 19 | defaultConfig { |
Sunny Goyal | d297be2 | 2016-05-10 15:35:02 -0700 | [diff] [blame] | 20 | minSdkVersion 21 |
Sunny Goyal | e1ebc08 | 2018-01-26 12:24:10 -0800 | [diff] [blame] | 21 | targetSdkVersion 28 |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 22 | versionCode 1 |
| 23 | versionName "1.0" |
Sunny Goyal | 3d1c0ff | 2015-10-16 17:18:54 -0700 | [diff] [blame] | 24 | |
Vadim Tryshev | a3fd1e5 | 2018-08-24 17:48:25 -0700 | [diff] [blame] | 25 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 26 | vectorDrawables.useSupportLibrary = true |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 27 | } |
| 28 | buildTypes { |
| 29 | debug { |
| 30 | minifyEnabled false |
| 31 | } |
| 32 | } |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 33 | |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 34 | compileOptions { |
| 35 | sourceCompatibility JavaVersion.VERSION_1_8 |
| 36 | targetCompatibility JavaVersion.VERSION_1_8 |
| 37 | } |
| 38 | |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 39 | // The flavor dimensions for build variants (e.g. aospWithQuickstep, aospWithoutQuickstep) |
| 40 | // See: https://developer.android.com/studio/build/build-variants#flavor-dimensions |
| 41 | flavorDimensions "app", "recents" |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 42 | |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 43 | productFlavors { |
| 44 | aosp { |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 45 | dimension "app" |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 46 | applicationId 'com.android.launcher3' |
| 47 | testApplicationId 'com.android.launcher3.tests' |
| 48 | } |
Sunny Goyal | 64a75aa | 2017-07-03 13:50:52 -0700 | [diff] [blame] | 49 | |
| 50 | l3go { |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 51 | dimension "app" |
Sunny Goyal | 64a75aa | 2017-07-03 13:50:52 -0700 | [diff] [blame] | 52 | applicationId 'com.android.launcher3' |
| 53 | testApplicationId 'com.android.launcher3.tests' |
| 54 | } |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 55 | |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 56 | withQuickstep { |
| 57 | dimension "recents" |
Sunny Goyal | d230307 | 2018-08-14 15:21:45 -0700 | [diff] [blame] | 58 | |
| 59 | minSdkVersion 28 |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 60 | } |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 61 | |
| 62 | withoutQuickstep { |
| 63 | dimension "recents" |
| 64 | } |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 65 | } |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 66 | |
| 67 | // Disable release builds for now |
| 68 | android.variantFilter { variant -> |
| 69 | if (variant.buildType.name.endsWith('release')) { |
| 70 | variant.setIgnore(true); |
| 71 | } |
| 72 | } |
| 73 | |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 74 | sourceSets { |
| 75 | main { |
Sunny Goyal | bd82250 | 2016-02-18 15:09:21 -0800 | [diff] [blame] | 76 | res.srcDirs = ['res'] |
Kevin | ab87400 | 2019-01-04 15:55:42 -0800 | [diff] [blame] | 77 | java.srcDirs = ['src', 'src_plugins'] |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 78 | manifest.srcFile 'AndroidManifest-common.xml' |
Sunny Goyal | 2385ebe | 2017-07-19 01:24:07 -0700 | [diff] [blame] | 79 | proto { |
| 80 | srcDir 'protos/' |
| 81 | srcDir 'proto_overrides/' |
| 82 | } |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 83 | } |
Sunny Goyal | 3d1c0ff | 2015-10-16 17:18:54 -0700 | [diff] [blame] | 84 | |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 85 | debug { |
| 86 | manifest.srcFile "AndroidManifest.xml" |
| 87 | } |
| 88 | |
Sunny Goyal | 3d1c0ff | 2015-10-16 17:18:54 -0700 | [diff] [blame] | 89 | androidTest { |
Sunny Goyal | f0ba8b7 | 2016-09-09 15:47:55 -0700 | [diff] [blame] | 90 | res.srcDirs = ['tests/res'] |
Sunny Goyal | d230307 | 2018-08-14 15:21:45 -0700 | [diff] [blame] | 91 | java.srcDirs = ['tests/src', 'tests/tapl'] |
Sunny Goyal | 658058b | 2017-01-21 01:33:02 -0800 | [diff] [blame] | 92 | manifest.srcFile "tests/AndroidManifest-common.xml" |
Sunny Goyal | 3d1c0ff | 2015-10-16 17:18:54 -0700 | [diff] [blame] | 93 | } |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 94 | |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 95 | androidTestDebug { |
| 96 | manifest.srcFile "tests/AndroidManifest.xml" |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 97 | } |
Sunny Goyal | 658058b | 2017-01-21 01:33:02 -0800 | [diff] [blame] | 98 | |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 99 | aosp { |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 100 | java.srcDirs = ['src_flags', 'src_shortcuts_overrides'] |
| 101 | manifest.srcFile "AndroidManifest.xml" |
Sunny Goyal | 658058b | 2017-01-21 01:33:02 -0800 | [diff] [blame] | 102 | } |
Sunny Goyal | 64a75aa | 2017-07-03 13:50:52 -0700 | [diff] [blame] | 103 | |
| 104 | l3go { |
| 105 | res.srcDirs = ['go/res'] |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 106 | java.srcDirs = ['go/src'] |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 107 | manifest.srcFile "go/AndroidManifest.xml" |
Sunny Goyal | 64a75aa | 2017-07-03 13:50:52 -0700 | [diff] [blame] | 108 | } |
| 109 | |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 110 | withoutQuickstep { |
| 111 | java.srcDirs = ['src_ui_overrides'] |
| 112 | } |
| 113 | |
| 114 | withQuickstep { |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 115 | res.srcDirs = ['quickstep/res'] |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 116 | java.srcDirs = ['quickstep/src'] |
Sunny Goyal | 9d34196 | 2017-10-30 10:03:34 -0700 | [diff] [blame] | 117 | manifest.srcFile "quickstep/AndroidManifest.xml" |
Sunny Goyal | 64a75aa | 2017-07-03 13:50:52 -0700 | [diff] [blame] | 118 | } |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 119 | } |
| 120 | } |
| 121 | |
| 122 | repositories { |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 123 | maven { url "../../../prebuilts/fullsdk-darwin/extras/android/m2repository" } |
| 124 | maven { url "../../../prebuilts/fullsdk-linux/extras/android/m2repository" } |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 125 | mavenCentral() |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 126 | google() |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 127 | } |
| 128 | |
| 129 | dependencies { |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 130 | implementation "androidx.dynamicanimation:dynamicanimation:${ANDROID_X_VERSION}" |
| 131 | implementation "androidx.recyclerview:recyclerview:${ANDROID_X_VERSION}" |
| 132 | implementation "androidx.preference:preference:${ANDROID_X_VERSION}" |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 133 | implementation project(':IconLoader') |
Kevin | 34380b4 | 2019-01-04 16:00:36 -0800 | [diff] [blame] | 134 | implementation fileTree(dir: "libs", include: 'launcher_protos.jar') |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 135 | |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 136 | // Recents lib dependency |
| 137 | withQuickstepImplementation fileTree(dir: "quickstep/libs", include: 'sysui_shared.jar') |
Sunny Goyal | 3d1c0ff | 2015-10-16 17:18:54 -0700 | [diff] [blame] | 138 | |
Kevin | 61ad301 | 2019-01-04 16:30:24 -0800 | [diff] [blame^] | 139 | // Required for AOSP to compile. This is already included in the sysui_shared.jar |
| 140 | withoutQuickstepImplementation fileTree(dir: "libs", include: 'plugin_core.jar') |
Sunny Goyal | 7313339 | 2017-11-02 11:04:49 -0700 | [diff] [blame] | 141 | |
Sunny Goyal | 4213783 | 2018-04-23 14:03:04 -0700 | [diff] [blame] | 142 | testImplementation 'junit:junit:4.12' |
| 143 | androidTestImplementation "org.mockito:mockito-core:1.9.5" |
| 144 | androidTestImplementation 'com.google.dexmaker:dexmaker:1.2' |
| 145 | androidTestImplementation 'com.google.dexmaker:dexmaker-mockito:1.2' |
| 146 | androidTestImplementation 'com.android.support.test:runner:1.0.0' |
| 147 | androidTestImplementation 'com.android.support.test:rules:1.0.0' |
| 148 | androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.2' |
Hyunyoung Song | 719eee2 | 2018-11-01 23:12:54 -0700 | [diff] [blame] | 149 | androidTestImplementation "androidx.annotation:annotation:${ANDROID_X_VERSION}" |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 150 | } |
| 151 | |
| 152 | protobuf { |
| 153 | // Configure the protoc executable |
| 154 | protoc { |
| 155 | artifact = 'com.google.protobuf:protoc:3.0.0-alpha-3' |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 156 | |
| 157 | generateProtoTasks { |
| 158 | all().each { task -> |
| 159 | task.builtins { |
| 160 | remove java |
| 161 | javanano { |
Sunny Goyal | 2385ebe | 2017-07-19 01:24:07 -0700 | [diff] [blame] | 162 | option "java_package=launcher_log_extension.proto|com.android.launcher3.userevent.nano" |
Sunny Goyal | 58bcd5a | 2016-11-09 16:24:30 -0800 | [diff] [blame] | 163 | option "java_package=launcher_log.proto|com.android.launcher3.userevent.nano" |
Sunny Goyal | b26d8b6 | 2017-03-07 09:10:06 -0800 | [diff] [blame] | 164 | option "java_package=launcher_dump.proto|com.android.launcher3.model.nano" |
Sunny Goyal | 6c46a6d | 2016-11-23 02:24:32 +0530 | [diff] [blame] | 165 | option "enum_style=java" |
Sunny Goyal | 4a4b49f | 2016-08-25 22:21:40 -0700 | [diff] [blame] | 166 | } |
| 167 | } |
| 168 | } |
| 169 | } |
Sunny Goyal | edf329a | 2015-08-29 23:16:27 -0700 | [diff] [blame] | 170 | } |
| 171 | } |