1# Local modifications: 2# * removed com.google.android.geo.API_KEY key. This should be added to 3# the manifest files in java/com/android/incallui/calllocation/impl/ 4# and /java/com/android/incallui/maps/impl/ 5# * b/62417801 modify translation string naming convention: 6# $ find . -type d | grep 262 | rename 's/(values)\-([a-zA-Z\+\-]+)\-(mcc262-mnc01)/$1-$3-$2/' 7# * b/37077388 temporarily disable proguard with javac 8# * b/62875795 include manually generated GRPC service class: 9# $ protoc --plugin=protoc-gen-grpc-java=prebuilts/tools/common/m2/repository/io/grpc/protoc-gen-grpc-java/1.0.3/protoc-gen-grpc-java-1.0.3-linux-x86_64.exe \ 10# --grpc-java_out=lite:"packages/apps/Dialer/java/com/android/voicemail/impl/" \ 11# --proto_path="packages/apps/Dialer/java/com/android/voicemail/impl/transcribe/grpc/" "packages/apps/Dialer/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto" 12LOCAL_PATH:= $(call my-dir) 13include $(CLEAR_VARS) 14 15# The base directory for Dialer sources. 16BASE_DIR := java/com/android 17 18# Exclude files incompatible with AOSP. 19EXCLUDE_FILES := \ 20 $(BASE_DIR)/incallui/calllocation/impl/AuthException.java \ 21 $(BASE_DIR)/incallui/calllocation/impl/CallLocationImpl.java \ 22 $(BASE_DIR)/incallui/calllocation/impl/CallLocationModule.java \ 23 $(BASE_DIR)/incallui/calllocation/impl/DownloadMapImageTask.java \ 24 $(BASE_DIR)/incallui/calllocation/impl/GoogleLocationSettingHelper.java \ 25 $(BASE_DIR)/incallui/calllocation/impl/HttpFetcher.java \ 26 $(BASE_DIR)/incallui/calllocation/impl/LocationFragment.java \ 27 $(BASE_DIR)/incallui/calllocation/impl/LocationHelper.java \ 28 $(BASE_DIR)/incallui/calllocation/impl/LocationPresenter.java \ 29 $(BASE_DIR)/incallui/calllocation/impl/LocationUrlBuilder.java \ 30 $(BASE_DIR)/incallui/calllocation/impl/ReverseGeocodeTask.java \ 31 $(BASE_DIR)/incallui/calllocation/impl/TrafficStatsTags.java \ 32 $(BASE_DIR)/incallui/maps/impl/MapsImpl.java \ 33 $(BASE_DIR)/incallui/maps/impl/MapsModule.java \ 34 $(BASE_DIR)/incallui/maps/impl/StaticMapFragment.java \ 35 36# Exclude testing only class, not used anywhere here 37EXCLUDE_FILES += \ 38 $(BASE_DIR)/contacts/common/format/testing/SpannedTestUtils.java 39 40# Exclude build variants for now 41EXCLUDE_FILES += \ 42 $(BASE_DIR)/dialer/constants/googledialer/ConstantsImpl.java \ 43 $(BASE_DIR)/dialer/binary/google/GoogleStubDialerRootComponent.java \ 44 $(BASE_DIR)/dialer/binary/google/GoogleStubDialerApplication.java \ 45 46# * b/62875795 47ifneq ($(wildcard packages/apps/Dialer/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java),) 48$(error Please remove file packages/apps/Dialer/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java ) 49endif 50 51EXCLUDE_RESOURCE_DIRECTORIES := \ 52 java/com/android/incallui/maps/impl/res \ 53 54# All Dialers resources. 55RES_DIRS := $(call all-subdir-named-dirs,res,.) 56RES_DIRS := $(filter-out $(EXCLUDE_RESOURCE_DIRECTORIES),$(RES_DIRS)) 57 58EXCLUDE_MANIFESTS := \ 59 $(BASE_DIR)/dialer/binary/aosp/testing/AndroidManifest.xml \ 60 $(BASE_DIR)/dialer/binary/google/AndroidManifest.xml \ 61 $(BASE_DIR)/incallui/calllocation/impl/AndroidManifest.xml \ 62 $(BASE_DIR)/incallui/maps/impl/AndroidManifest.xml \ 63 64# Dialer manifest files to merge. 65DIALER_MANIFEST_FILES := $(call all-named-files-under,AndroidManifest.xml,.) 66DIALER_MANIFEST_FILES := $(filter-out $(EXCLUDE_MANIFESTS),$(DIALER_MANIFEST_FILES)) 67 68# Merge all manifest files. 69LOCAL_FULL_LIBS_MANIFEST_FILES := \ 70 $(addprefix $(LOCAL_PATH)/, $(DIALER_MANIFEST_FILES)) 71 72LOCAL_SRC_FILES := $(call all-java-files-under, $(BASE_DIR)) 73LOCAL_SRC_FILES += $(call all-proto-files-under, $(BASE_DIR)) 74LOCAL_SRC_FILES := $(filter-out $(EXCLUDE_FILES),$(LOCAL_SRC_FILES)) 75 76LOCAL_PROTOC_FLAGS := --proto_path=$(LOCAL_PATH) 77 78LOCAL_RESOURCE_DIR := $(addprefix $(LOCAL_PATH)/, $(RES_DIRS)) 79 80EXCLUDE_EXTRA_PACKAGES := \ 81 com.android.dialer.binary.aosp.testing \ 82 com.android.dialer.binary.google \ 83 com.android.incallui.calllocation.impl \ 84 com.android.incallui.maps.impl \ 85 86# We specify each package explicitly to glob resource files. 87include ${LOCAL_PATH}/packages.mk 88 89LOCAL_AAPT_FLAGS := $(filter-out $(EXCLUDE_EXTRA_PACKAGES),$(LOCAL_AAPT_FLAGS)) 90LOCAL_AAPT_FLAGS := $(addprefix --extra-packages , $(LOCAL_AAPT_FLAGS)) 91LOCAL_AAPT_FLAGS += \ 92 --auto-add-overlay \ 93 --extra-packages me.leolin.shortcutbadger \ 94 95LOCAL_STATIC_JAVA_LIBRARIES := \ 96 android-common \ 97 android-support-dynamic-animation \ 98 com.android.vcard \ 99 dialer-commons-io-target \ 100 dialer-dagger2-target \ 101 dialer-disklrucache-target \ 102 dialer-gifdecoder-target \ 103 dialer-glide-target \ 104 dialer-grpc-all-target \ 105 dialer-grpc-context-target \ 106 dialer-grpc-core-target \ 107 dialer-grpc-okhttp-target \ 108 dialer-grpc-protobuf-lite-target \ 109 dialer-grpc-stub-target \ 110 dialer-javax-annotation-api-target \ 111 dialer-javax-inject-target \ 112 dialer-libshortcutbadger-target \ 113 dialer-mime4j-core-target \ 114 dialer-mime4j-dom-target \ 115 dialer-error-prone-target \ 116 dialer-guava-target \ 117 dialer-glide-target \ 118 dialer-glide-annotation-target \ 119 dialer-zxing-target \ 120 jsr305 \ 121 libbackup \ 122 libphonenumber \ 123 volley \ 124 125LOCAL_STATIC_ANDROID_LIBRARIES := \ 126 android-support-core-ui \ 127 $(ANDROID_SUPPORT_DESIGN_TARGETS) \ 128 android-support-transition \ 129 android-support-v13 \ 130 android-support-v4 \ 131 android-support-v7-appcompat \ 132 android-support-v7-cardview \ 133 android-support-v7-recyclerview \ 134 135LOCAL_JAVA_LIBRARIES := \ 136 dialer-auto-value-target \ 137 org.apache.http.legacy \ 138 139LOCAL_ANNOTATION_PROCESSORS := \ 140 dialer-auto-value \ 141 dialer-javapoet \ 142 dialer-dagger2 \ 143 dialer-dagger2-compiler \ 144 dialer-dagger2-producers \ 145 dialer-glide-annotation \ 146 dialer-glide-compiler \ 147 dialer-guava \ 148 dialer-javax-annotation-api \ 149 dialer-javax-inject \ 150 151LOCAL_ANNOTATION_PROCESSOR_CLASSES := \ 152 com.google.auto.value.processor.AutoValueProcessor,dagger.internal.codegen.ComponentProcessor,com.bumptech.glide.annotation.compiler.GlideAnnotationProcessor 153 154 155# Begin Bug: 37077388 156LOCAL_DX_FLAGS := --multi-dex 157LOCAL_JACK_FLAGS := --multi-dex native 158 159LOCAL_PROGUARD_ENABLED := disabled 160ifdef LOCAL_JACK_ENABLED 161 162 163# Proguard includes 164LOCAL_PROGUARD_FLAG_FILES := $(call all-named-files-under,proguard.*flags,$(BASE_DIR)) 165LOCAL_PROGUARD_ENABLED := custom 166 167LOCAL_PROGUARD_ENABLED += optimization 168endif 169 170# End Bug: 37077388 171 172LOCAL_SDK_VERSION := system_current 173LOCAL_MODULE_TAGS := optional 174LOCAL_PACKAGE_NAME := Dialer 175LOCAL_CERTIFICATE := shared 176LOCAL_PRIVILEGED_MODULE := true 177LOCAL_USE_AAPT2 := true 178 179# b/37483961 - Jack Not Compiling Dagger Class Properly 180LOCAL_JACK_ENABLED := javac_frontend 181 182include $(BUILD_PACKAGE) 183 184# Cleanup local state 185BASE_DIR := 186EXCLUDE_FILES := 187RES_DIRS := 188DIALER_MANIFEST_FILES := 189EXCLUDE_MANIFESTS := 190EXCLUDE_EXTRA_PACKAGES := 191 192# Create references to prebuilt libraries. 193include $(CLEAR_VARS) 194 195LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := \ 196 dialer-auto-value:../../../prebuilts/tools/common/m2/repository/com/google/auto/value/auto-value/1.5.2/auto-value-1.5.2.jar \ 197 dialer-dagger2-compiler:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger-compiler/2.7/dagger-compiler-2.7.jar \ 198 dialer-dagger2:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger/2.7/dagger-2.7.jar \ 199 dialer-dagger2-producers:../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger-producers/2.7/dagger-producers-2.7.jar \ 200 dialer-glide-annotation:../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/annotation/SNAPSHOT/annotation-SNAPSHOT.jar \ 201 dialer-glide-compiler:../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/compiler/SNAPSHOT/compiler-SNAPSHOT.jar \ 202 dialer-grpc-all:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-all/1.0.3/grpc-all-1.0.3.jar \ 203 dialer-grpc-core:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-core/1.0.3/grpc-core-1.0.3.jar \ 204 dialer-grpc-okhttp:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-okhttp/1.0.3/grpc-okhttp-1.0.3.jar \ 205 dialer-grpc-protobuf-lite:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-protobuf-lite/1.0.3/grpc-protobuf-lite-1.0.3.jar \ 206 dialer-grpc-stub:../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-stub/1.0.3/grpc-stub-1.0.3.jar \ 207 dialer-guava:../../../prebuilts/tools/common/m2/repository/com/google/guava/guava/23.0/guava-23.0.jar \ 208 dialer-javax-annotation-api:../../../prebuilts/tools/common/m2/repository/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar \ 209 dialer-javax-inject:../../../prebuilts/tools/common/m2/repository/javax/inject/javax.inject/1/javax.inject-1.jar \ 210 dialer-javapoet:../../../prebuilts/tools/common/m2/repository/com/squareup/javapoet/1.8.0/javapoet-1.8.0.jar \ 211 212include $(BUILD_HOST_PREBUILT) 213 214# Enumerate target prebuilts to avoid linker warnings like 215# Dialer (java:sdk) should not link to dialer-guava (java:platform) 216include $(CLEAR_VARS) 217 218LOCAL_MODULE_CLASS := JAVA_LIBRARIES 219LOCAL_MODULE := dialer-guava-target 220LOCAL_SDK_VERSION := current 221LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/com/google/guava/guava/23.0/guava-23.0.jar 222LOCAL_UNINSTALLABLE_MODULE := true 223 224include $(BUILD_PREBUILT) 225 226include $(CLEAR_VARS) 227 228LOCAL_MODULE_CLASS := JAVA_LIBRARIES 229LOCAL_MODULE := dialer-error-prone-target 230LOCAL_SDK_VERSION := current 231LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/com/google/errorprone/error_prone_annotations/2.0.18/error_prone_annotations-2.0.18.jar 232LOCAL_UNINSTALLABLE_MODULE := true 233 234include $(BUILD_PREBUILT) 235 236include $(CLEAR_VARS) 237 238LOCAL_MODULE_CLASS := JAVA_LIBRARIES 239LOCAL_MODULE := dialer-dagger2-target 240LOCAL_SDK_VERSION := current 241LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/com/google/dagger/dagger/2.7/dagger-2.7.jar 242LOCAL_UNINSTALLABLE_MODULE := true 243 244include $(BUILD_PREBUILT) 245 246include $(CLEAR_VARS) 247 248LOCAL_MODULE_CLASS := JAVA_LIBRARIES 249LOCAL_MODULE := dialer-disklrucache-target 250LOCAL_SDK_VERSION := current 251LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/disklrucache/SNAPSHOT/disklrucache-SNAPSHOT.jar 252LOCAL_UNINSTALLABLE_MODULE := true 253 254include $(BUILD_PREBUILT) 255 256include $(CLEAR_VARS) 257 258LOCAL_MODULE_CLASS := JAVA_LIBRARIES 259LOCAL_MODULE := dialer-gifdecoder-target 260LOCAL_SDK_VERSION := current 261LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/gifdecoder/SNAPSHOT/gifdecoder-SNAPSHOT.jar 262LOCAL_UNINSTALLABLE_MODULE := true 263 264include $(BUILD_PREBUILT) 265 266include $(CLEAR_VARS) 267 268LOCAL_MODULE_CLASS := JAVA_LIBRARIES 269LOCAL_MODULE := dialer-glide-target 270LOCAL_SDK_VERSION := current 271LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/glide/SNAPSHOT/glide-SNAPSHOT.jar 272LOCAL_UNINSTALLABLE_MODULE := true 273 274include $(BUILD_PREBUILT) 275 276include $(CLEAR_VARS) 277 278LOCAL_MODULE_CLASS := JAVA_LIBRARIES 279LOCAL_MODULE := dialer-glide-annotation-target 280LOCAL_SDK_VERSION := current 281LOCAL_SRC_FILES := ../../../prebuilts/maven_repo/bumptech/com/github/bumptech/glide/annotation/SNAPSHOT/annotation-SNAPSHOT.jar 282LOCAL_UNINSTALLABLE_MODULE := true 283 284include $(BUILD_PREBUILT) 285 286include $(CLEAR_VARS) 287 288LOCAL_MODULE_CLASS := JAVA_LIBRARIES 289LOCAL_MODULE := dialer-javax-annotation-api-target 290LOCAL_SDK_VERSION := current 291LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/javax/annotation/javax.annotation-api/1.2/javax.annotation-api-1.2.jar 292LOCAL_UNINSTALLABLE_MODULE := true 293 294include $(BUILD_PREBUILT) 295 296include $(CLEAR_VARS) 297 298LOCAL_MODULE_CLASS := JAVA_LIBRARIES 299LOCAL_MODULE := dialer-libshortcutbadger-target 300LOCAL_SDK_VERSION := current 301LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/me/leolin/ShortcutBadger/1.1.13/ShortcutBadger-1.1.13.jar 302LOCAL_UNINSTALLABLE_MODULE := true 303 304include $(BUILD_PREBUILT) 305 306include $(CLEAR_VARS) 307 308LOCAL_MODULE_CLASS := JAVA_LIBRARIES 309LOCAL_MODULE := dialer-javax-inject-target 310LOCAL_SDK_VERSION := current 311LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/javax/inject/javax.inject/1/javax.inject-1.jar 312LOCAL_UNINSTALLABLE_MODULE := true 313 314include $(BUILD_PREBUILT) 315 316include $(CLEAR_VARS) 317 318LOCAL_MODULE_CLASS := JAVA_LIBRARIES 319LOCAL_MODULE := dialer-commons-io-target 320LOCAL_SDK_VERSION := current 321LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/commons-io/commons-io/2.4/commons-io-2.4.jar 322LOCAL_UNINSTALLABLE_MODULE := true 323 324include $(BUILD_PREBUILT) 325 326include $(CLEAR_VARS) 327 328LOCAL_MODULE_CLASS := JAVA_LIBRARIES 329LOCAL_MODULE := dialer-mime4j-core-target 330LOCAL_SDK_VERSION := current 331LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/org/apache/james/apache-mime4j-core/0.7.2/apache-mime4j-core-0.7.2.jar 332LOCAL_UNINSTALLABLE_MODULE := true 333 334include $(BUILD_PREBUILT) 335 336include $(CLEAR_VARS) 337 338LOCAL_MODULE_CLASS := JAVA_LIBRARIES 339LOCAL_MODULE := dialer-mime4j-dom-target 340LOCAL_SDK_VERSION := current 341LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/org/apache/james/apache-mime4j-dom/0.7.2/apache-mime4j-dom-0.7.2.jar 342LOCAL_UNINSTALLABLE_MODULE := true 343 344include $(BUILD_PREBUILT) 345 346include $(CLEAR_VARS) 347 348LOCAL_MODULE_CLASS := JAVA_LIBRARIES 349LOCAL_MODULE := dialer-grpc-core-target 350LOCAL_SDK_VERSION := current 351LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-core/1.0.3/grpc-core-1.0.3.jar 352LOCAL_UNINSTALLABLE_MODULE := true 353 354include $(BUILD_PREBUILT) 355 356include $(CLEAR_VARS) 357 358LOCAL_MODULE_CLASS := JAVA_LIBRARIES 359LOCAL_MODULE := dialer-grpc-okhttp-target 360LOCAL_SDK_VERSION := current 361LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-okhttp/1.0.3/grpc-okhttp-1.0.3.jar 362LOCAL_UNINSTALLABLE_MODULE := true 363 364include $(BUILD_PREBUILT) 365 366include $(CLEAR_VARS) 367 368LOCAL_MODULE_CLASS := JAVA_LIBRARIES 369LOCAL_MODULE := dialer-grpc-protobuf-lite-target 370LOCAL_SDK_VERSION := current 371LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-protobuf-lite/1.0.3/grpc-protobuf-lite-1.0.3.jar 372LOCAL_UNINSTALLABLE_MODULE := true 373 374include $(BUILD_PREBUILT) 375 376include $(CLEAR_VARS) 377 378LOCAL_MODULE_CLASS := JAVA_LIBRARIES 379LOCAL_MODULE := dialer-grpc-stub-target 380LOCAL_SDK_VERSION := current 381LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-stub/1.0.3/grpc-stub-1.0.3.jar 382LOCAL_UNINSTALLABLE_MODULE := true 383 384include $(BUILD_PREBUILT) 385 386include $(CLEAR_VARS) 387 388LOCAL_MODULE_CLASS := JAVA_LIBRARIES 389LOCAL_MODULE := dialer-grpc-all-target 390LOCAL_SDK_VERSION := current 391LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-all/1.0.3/grpc-all-1.0.3.jar 392LOCAL_UNINSTALLABLE_MODULE := true 393 394include $(BUILD_PREBUILT) 395 396include $(CLEAR_VARS) 397 398LOCAL_MODULE_CLASS := JAVA_LIBRARIES 399LOCAL_MODULE := dialer-grpc-context-target 400LOCAL_SDK_VERSION := current 401LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/io/grpc/grpc-context/1.0.3/grpc-context-1.0.3.jar 402LOCAL_UNINSTALLABLE_MODULE := true 403 404include $(BUILD_PREBUILT) 405 406include $(CLEAR_VARS) 407 408LOCAL_MODULE_CLASS := JAVA_LIBRARIES 409LOCAL_MODULE := dialer-auto-value-target 410LOCAL_SDK_VERSION := current 411LOCAL_SRC_FILES := ../../../prebuilts/tools/common/m2/repository/com/google/auto/value/auto-value/1.5.2/auto-value-1.5.2.jar 412LOCAL_UNINSTALLABLE_MODULE := true 413 414include $(BUILD_PREBUILT) 415 416include $(CLEAR_VARS) 417 418LOCAL_MODULE_CLASS := JAVA_LIBRARIES 419LOCAL_MODULE := dialer-zxing-target 420LOCAL_SDK_VERSION := current 421LOCAL_SRC_FILES := ../../../external/zxing/core/core.jar 422LOCAL_UNINSTALLABLE_MODULE := true 423 424include $(BUILD_PREBUILT) 425 426include $(CLEAR_VARS) 427 428