diff options
author | Paul Duffin <paulduffin@google.com> | 2015-11-26 13:58:41 +0000 |
---|---|---|
committer | Paul Duffin <paulduffin@google.com> | 2015-11-26 13:58:41 +0000 |
commit | 87182e06b8f6ec9a11ed6ebcaf74444e79b18ae2 (patch) | |
tree | 96f12ed13cb09aa18028f0ada9939cbf4f01efc6 /Android.mk | |
parent | 88876dbb9545bf276a6be98a67d069abe8ead82e (diff) | |
download | dagger2-87182e06b8f6ec9a11ed6ebcaf74444e79b18ae2.tar.gz |
Update dagger2 and improve build file
Updates daggers2 to a later version, reverts change that adds a
dependency on Guava v19 as AOSP currently only has v18. See
README.android for more details.
Made a couple of changes to the build to make it reusable.
1) Added dagger2_annotation_processor.mk to define values that
are needed by modules that depend on dagger2.
2) Added java_annotation_processor.mk to do the magic needed to
make the annotation processors work properly.
Change-Id: Ie0e8b0e34c961f64ccd0a45bd93a7ea6a216ddf3
Diffstat (limited to 'Android.mk')
-rw-r--r-- | Android.mk | 31 |
1 files changed, 14 insertions, 17 deletions
diff --git a/Android.mk b/Android.mk index f88f64120..08419f01d 100644 --- a/Android.mk +++ b/Android.mk @@ -24,7 +24,7 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := JAVA_LIBRARIES LOCAL_SRC_FILES := $(call all-java-files-under, core/src/main/java/) -LOCAL_STATIC_JAVA_LIBRARIES := \ +LOCAL_JAVA_LIBRARIES := \ dagger2-inject-host \ guavalib @@ -41,12 +41,11 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := JAVA_LIBRARIES LOCAL_SRC_FILES := $(call all-java-files-under, producers/src/main/java/) -LOCAL_STATIC_JAVA_LIBRARIES := \ +LOCAL_JAVA_LIBRARIES := \ dagger2-host \ dagger2-inject-host \ guavalib -#LOCAL_JACK_ENABLED := disabled include $(BUILD_HOST_JAVA_LIBRARY) # build dagger2 compiler host jar @@ -59,6 +58,10 @@ LOCAL_MODULE_TAGS := optional LOCAL_MODULE_CLASS := JAVA_LIBRARIES LOCAL_SRC_FILES := $(call all-java-files-under, compiler/src/main/java/) +# Manually include META-INF/services/javax.annotation.processing.Processor +# as the AutoService processor doesn't work properly. +LOCAL_JAVA_RESOURCE_DIRS := resources + LOCAL_STATIC_JAVA_LIBRARIES := \ dagger2-host \ dagger2-auto-common-host \ @@ -73,12 +76,12 @@ LOCAL_STATIC_JAVA_LIBRARIES := \ # Disable the default discovery for annotation processors and explicitly specify # the path and classes needed. This is needed because otherwise it breaks a code # indexing tool that doesn't, as yet do automatic discovery. -PROCESSOR_JARS := \ - $(LOCAL_PATH)/../../out/host/common/obj/JAVA_LIBRARIES/guavalib_intermediates/javalib.jar \ - $(LOCAL_PATH)/lib/auto-common-1.0-20151022.071545-39$(COMMON_JAVA_PACKAGE_SUFFIX) \ - $(LOCAL_PATH)/lib/auto-factory-1.0-20150915.183854-35$(COMMON_JAVA_PACKAGE_SUFFIX) \ - $(LOCAL_PATH)/lib/auto-service-1.0-rc2$(COMMON_JAVA_PACKAGE_SUFFIX) \ - $(LOCAL_PATH)/lib/auto-value-1.0$(COMMON_JAVA_PACKAGE_SUFFIX) \ +PROCESSOR_LIBRARIES := \ + dagger2-auto-common-host \ + dagger2-auto-factory-host \ + dagger2-auto-service-host \ + dagger2-auto-value-host \ + guavalib PROCESSOR_CLASSES := \ com.google.auto.factory.processor.AutoFactoryProcessor \ @@ -86,14 +89,8 @@ PROCESSOR_CLASSES := \ com.google.auto.value.processor.AutoAnnotationProcessor \ com.google.auto.value.processor.AutoValueProcessor -LOCAL_JAVACFLAGS += -processorpath $(subst $(space),:,$(strip $(PROCESSOR_JARS))) +include $(LOCAL_PATH)/java_annotation_processors.mk -# Specify only one processor class per -processor option as -# the indexing tool does not parse the -processor value as a -# comma separated list. -LOCAL_JAVACFLAGS += $(foreach class,$(PROCESSOR_CLASSES),-processor $(class)) - -#LOCAL_JACK_ENABLED := disabled include $(BUILD_HOST_JAVA_LIBRARY) # Build host dependencies. @@ -106,6 +103,6 @@ LOCAL_PREBUILT_JAVA_LIBRARIES := \ dagger2-auto-service-host:lib/auto-service-1.0-rc2$(COMMON_JAVA_PACKAGE_SUFFIX) \ dagger2-auto-value-host:lib/auto-value-1.0$(COMMON_JAVA_PACKAGE_SUFFIX) \ dagger2-google-java-format:lib/google-java-format-0.1-20151017.042846-2$(COMMON_JAVA_PACKAGE_SUFFIX) \ - dagger2-inject-host:lib/javax-inject$(COMMON_JAVA_PACKAGE_SUFFIX) \ + dagger2-inject-host:lib/javax-inject$(COMMON_JAVA_PACKAGE_SUFFIX) include $(BUILD_HOST_PREBUILT) |