aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Android.mk51
-rw-r--r--annotations/Android.mk12
-rw-r--r--junit/Android.mk18
-rw-r--r--processor/Android.mk18
-rw-r--r--resources/Android.mk14
-rw-r--r--robolectric/Android.mk59
-rw-r--r--sandbox/Android.mk18
-rw-r--r--shadowapi/Android.mk10
-rw-r--r--shadows/framework/Android.mk63
-rw-r--r--shadows/httpclient/Android.mk28
-rw-r--r--shadows/multidex/Android.mk24
-rw-r--r--shadows/playservices/Android.mk29
-rw-r--r--shadows/supportv4/Android.mk27
-rw-r--r--src/main/resources/META-INF/services/org.robolectric.internal.ShadowProvider7
-rw-r--r--utils/Android.mk8
15 files changed, 386 insertions, 0 deletions
diff --git a/Android.mk b/Android.mk
new file mode 100644
index 000000000..2c198c815
--- /dev/null
+++ b/Android.mk
@@ -0,0 +1,51 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_all
+
+LOCAL_STATIC_JAVA_LIBRARIES := \
+ Robolectric_shadows_playservices \
+ Robolectric_shadows_httpclient \
+ Robolectric_shadows_framework \
+ Robolectric_shadows_supportv4 \
+ Robolectric_shadows_multidex \
+ Robolectric_robolectric \
+ Robolectric_annotations \
+ Robolectric_resources \
+ Robolectric_shadowapi \
+ Robolectric_sandbox \
+ Robolectric_junit \
+ Robolectric_utils
+
+LOCAL_JAVA_RESOURCE_DIRS := \
+ shadows/framework/src/main/resources \
+ src/main/resources
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+include $(call first-makefiles-under, $(LOCAL_PATH))
+
+###########################################
+# host prebuilts for Robolectric
+###########################################
+
+include $(CLEAR_VARS)
+LOCAL_PREBUILT_JAVA_LIBRARIES := \
+ robolectric-accessibility-test-framework-2.1:../../../prebuilts/tools/common/m2/repository/com/google/android/apps/common/testing/accessibility/framework/accessibility-test-framework/2.1/accessibility-test-framework-2.1.jar \
+ robolectric-ant-1.8.0:../../../prebuilts/tools/common/m2/repository/org/apache/ant/ant/1.8.0/ant-1.8.0.jar \
+ robolectric-asm-5.0.1:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm/5.0.1/asm-5.0.1.jar \
+ robolectric-asm-commons-5.0.1:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm-commons/5.0.1/asm-commons-5.0.1.jar \
+ robolectric-asm-tree-5.0.1:../../../prebuilts/tools/common/m2/repository/org/ow2/asm/asm-tree/5.0.1/asm-tree-5.0.1.jar \
+ robolectric-bouncycastle-1.46:../../../prebuilts/tools/common/m2/repository/org/bouncycastle/bcprov-jdk16/1.46/bcprov-jdk16-1.46.jar \
+ robolectric-gson-2.8:../../../prebuilts/tools/common/m2/repository/com/google/code/gson/gson/2.8.0/gson-2.8.0.jar \
+ robolectric-guava-20.0:../../../prebuilts/tools/common/m2/repository/com/google/guava/guava/20.0/guava-20.0.jar \
+ robolectric-hamcrest-core-1.3:../../../prebuilts/tools/common/m2/repository/org/hamcrest/hamcrest-core/1.3/hamcrest-core-1.3.jar \
+ robolectric-hamcrest-library-1.3:../../../prebuilts/tools/common/m2/repository/org/hamcrest/hamcrest-library/1.3/hamcrest-library-1.3.jar \
+ robolectric-httpclient-4.0.3:../../../prebuilts/tools/common/m2/repository/org/apache/httpcomponents/httpclient/4.0.3/httpclient-4.0.3.jar \
+ robolectric-httpcore-4.0.1:../../../prebuilts/tools/common/m2/repository/org/apache/httpcomponents/httpcore/4.0.1/httpcore-4.0.1.jar \
+ robolectric-junit-4.12:../../../prebuilts/tools/common/m2/repository/junit/junit/4.12/junit-4.12.jar \
+ robolectric-maven-ant-tasks-2.1.3:../../../prebuilts/tools/common/m2/repository/org/apache/maven/maven-ant-tasks/2.1.3/maven-ant-tasks-2.1.3.jar \
+ robolectric-sqlite4java-0.282:../../../prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/sqlite4java/0.282/sqlite4java-0.282.jar \
+ robolectric-xstream-1.4.8:../../../prebuilts/tools/common/m2/repository/com/thoughtworks/xstream/xstream/1.4.8/xstream-1.4.8.jar
+
+include $(BUILD_HOST_PREBUILT) \ No newline at end of file
diff --git a/annotations/Android.mk b/annotations/Android.mk
new file mode 100644
index 000000000..ee396bd27
--- /dev/null
+++ b/annotations/Android.mk
@@ -0,0 +1,12 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_annotations
+
+LOCAL_JAVA_LIBRARIES := \
+ robolectric-host-android_all \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/junit/Android.mk b/junit/Android.mk
new file mode 100644
index 000000000..67d9a2dd6
--- /dev/null
+++ b/junit/Android.mk
@@ -0,0 +1,18 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_junit
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ Robolectric_sandbox \
+ robolectric-asm-commons-5.0.1 \
+ robolectric-asm-tree-5.0.1 \
+ robolectric-junit-4.12 \
+ robolectric-asm-5.0.1 \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/processor/Android.mk b/processor/Android.mk
new file mode 100644
index 000000000..401ff8149
--- /dev/null
+++ b/processor/Android.mk
@@ -0,0 +1,18 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_processor
+
+LOCAL_CLASSPATH := $(HOST_JDK_TOOLS_JAR)
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8 \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+LOCAL_JAVA_RESOURCE_DIRS := src/main/resources
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/resources/Android.mk b/resources/Android.mk
new file mode 100644
index 000000000..55f6bb874
--- /dev/null
+++ b/resources/Android.mk
@@ -0,0 +1,14 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_resources
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ Robolectric_utils \
+ robolectric-guava-20.0 \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/robolectric/Android.mk b/robolectric/Android.mk
new file mode 100644
index 000000000..cb5cafb50
--- /dev/null
+++ b/robolectric/Android.mk
@@ -0,0 +1,59 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_robolectric
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_IS_HOST_MODULE := true
+
+intermediates := $(call local-intermediates-dir)
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_shadows_framework \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ Robolectric_resources \
+ Robolectric_sandbox \
+ Robolectric_junit \
+ Robolectric_utils \
+ robolectric-host-android_all \
+ robolectric-maven-ant-tasks-2.1.3 \
+ robolectric-bouncycastle-1.46 \
+ robolectric-asm-commons-5.0.1 \
+ robolectric-asm-tree-5.0.1 \
+ robolectric-xstream-1.4.8 \
+ robolectric-junit-4.12 \
+ robolectric-guava-20.0 \
+ robolectric-asm-5.0.1 \
+ robolectric-ant-1.8.0 \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+$(intermediates)/robolectric-version.properties:
+ $(hide) echo -n "robolectric.version=3.5-SNAPSHOT" >$@
+
+LOCAL_JAVA_RESOURCE_FILES := $(intermediates)/robolectric-version.properties
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+### HACK: specify these *TARGET* jars needed to compile robolectric as though they are prebuilt *HOST* java libraries ###
+
+LOCAL_PATH := $(LOCAL_PATH)/../../../
+include $(CLEAR_VARS)
+
+# Add this line to LOCAL_PREBUILT_JAVA_LIBRARIES below to compile robolectric against the latest SDK
+# robolectric-host-android_all:$(call java-lib-files, robolectric_android-all)
+
+# Add this line to LOCAL_PREBUILT_JAVA_LIBRARIES below to compile robolectric against the O SDK
+# robolectric-host-android_all:prebuilts/misc/common/robolectric/android-all/android-all-o-preview-4-robolectric-0.jar
+
+LOCAL_PREBUILT_JAVA_LIBRARIES := \
+ robolectric-host-android_all:prebuilts/misc/common/robolectric/android-all/android-all-o-preview-4-robolectric-0.jar \
+ robolectric-host-android-support-v4:$(call java-lib-files, android-support-v4) \
+ robolectric-host-android-support-multidex:$(call java-lib-files, android-support-multidex) \
+ robolectric-host-org_apache_http_legacy:$(call java-lib-files, org.apache.http.legacy) \
+ robolectric-host-play-services-v9-base:$(call java-lib-files, prebuilt-google-play-services-v9-base-1p) \
+ robolectric-host-play-services-v9-basement:$(call java-lib-files, prebuilt-google-play-services-v9-basement-1p) \
+ robolectric-host-play-services-v9-auth-base:$(call java-lib-files, prebuilt-google-play-services-v9-auth-base-1p)
+
+include $(BUILD_HOST_PREBUILT) \ No newline at end of file
diff --git a/sandbox/Android.mk b/sandbox/Android.mk
new file mode 100644
index 000000000..9271a091e
--- /dev/null
+++ b/sandbox/Android.mk
@@ -0,0 +1,18 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_sandbox
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ Robolectric_utils \
+ robolectric-guava-20.0 \
+ robolectric-asm-commons-5.0.1 \
+ robolectric-asm-tree-5.0.1 \
+ robolectric-asm-5.0.1 \
+ jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/shadowapi/Android.mk b/shadowapi/Android.mk
new file mode 100644
index 000000000..79d5cce5c
--- /dev/null
+++ b/shadowapi/Android.mk
@@ -0,0 +1,10 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadowapi
+
+LOCAL_JAVA_LIBRARIES := jsr305lib
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/shadows/framework/Android.mk b/shadows/framework/Android.mk
new file mode 100644
index 000000000..b94f4b824
--- /dev/null
+++ b/shadows/framework/Android.mk
@@ -0,0 +1,63 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadows_framework
+LOCAL_MODULE_CLASS := JAVA_LIBRARIES
+LOCAL_IS_HOST_MODULE := true
+
+intermediates := $(call local-intermediates-dir)
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ Robolectric_resources \
+ Robolectric_utils \
+ robolectric-accessibility-test-framework-2.1 \
+ robolectric-hamcrest-library-1.3 \
+ robolectric-hamcrest-core-1.3 \
+ robolectric-sqlite4java-0.282 \
+ robolectric-host-android_all \
+ robolectric-guava-20.0 \
+ icu4j-host \
+ jsr305lib
+
+LOCAL_JAVA_RESOURCE_FILES := \
+ $(intermediates)/sqlite-natives:linux-x86_64/libsqlite4java.so \
+ $(intermediates)/sqlite-natives:linux-x86/libsqlite4java.so \
+ $(intermediates)/sqlite-natives:mac-x86_64/libsqlite4java.jnilib \
+ $(intermediates)/sqlite-natives:windows-x86_64/sqlite4java.dll \
+ $(intermediates)/sqlite-natives:windows-x86/sqlite4java.dll
+
+LOCAL_ANNOTATION_PROCESSORS := \
+ Robolectric_annotations \
+ Robolectric_processor \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8
+
+LOCAL_ANNOTATION_PROCESSOR_CLASSES := org.robolectric.annotation.processing.RobolectricProcessor
+
+LOCAL_JAVACFLAGS := -Aorg.robolectric.annotation.processing.shadowPackage=org.robolectric
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+LOCAL_JAVA_RESOURCE_DIRS := src/main/resources
+
+include $(BUILD_HOST_JAVA_LIBRARY)
+
+###########################################
+# Situate the SQLite native libraries
+###########################################
+$(intermediates)/sqlite-natives/linux-x86_64/libsqlite4java.so: prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/libsqlite4java-linux-amd64/0.282/libsqlite4java-linux-amd64-0.282.so
+ $(hide) cp $< $@
+
+$(intermediates)/sqlite-natives/linux-x86/libsqlite4java.so: prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/libsqlite4java-linux-i386/0.282/libsqlite4java-linux-i386-0.282.so
+ $(hide) cp $< $@
+
+$(intermediates)/sqlite-natives/mac-x86_64/libsqlite4java.jnilib: prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/libsqlite4java-osx/0.282/libsqlite4java-osx-0.282.jnilib
+ $(hide) cp $< $@
+
+$(intermediates)/sqlite-natives/windows-x86_64/sqlite4java.dll: prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/sqlite4java-win32-x64/0.282/sqlite4java-win32-x64-0.282.dll
+ $(hide) cp $< $@
+
+$(intermediates)/sqlite-natives/windows-x86/sqlite4java.dll: prebuilts/tools/common/m2/repository/com/almworks/sqlite4java/sqlite4java-win32-x86/0.282/sqlite4java-win32-x86-0.282.dll
+ $(hide) cp $< $@ \ No newline at end of file
diff --git a/shadows/httpclient/Android.mk b/shadows/httpclient/Android.mk
new file mode 100644
index 000000000..a28a5d7c2
--- /dev/null
+++ b/shadows/httpclient/Android.mk
@@ -0,0 +1,28 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadows_httpclient
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_shadows_framework \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ Robolectric_utils \
+ robolectric-host-org_apache_http_legacy \
+ robolectric-host-android_all \
+ robolectric-httpclient-4.0.3 \
+ robolectric-httpcore-4.0.1
+
+LOCAL_ANNOTATION_PROCESSORS := \
+ Robolectric_annotations \
+ Robolectric_processor \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8
+
+LOCAL_ANNOTATION_PROCESSOR_CLASSES := org.robolectric.annotation.processing.RobolectricProcessor
+
+LOCAL_JAVACFLAGS := -Aorg.robolectric.annotation.processing.shadowPackage=org.robolectric.shadows.httpclient
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/shadows/multidex/Android.mk b/shadows/multidex/Android.mk
new file mode 100644
index 000000000..961d41957
--- /dev/null
+++ b/shadows/multidex/Android.mk
@@ -0,0 +1,24 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadows_multidex
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ robolectric-host-android-support-multidex \
+ robolectric-host-android_all
+
+LOCAL_ANNOTATION_PROCESSORS := \
+ Robolectric_annotations \
+ Robolectric_processor \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8
+
+LOCAL_ANNOTATION_PROCESSOR_CLASSES := org.robolectric.annotation.processing.RobolectricProcessor
+
+LOCAL_JAVACFLAGS := -Aorg.robolectric.annotation.processing.shadowPackage=org.robolectric.shadows.multidex
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/shadows/playservices/Android.mk b/shadows/playservices/Android.mk
new file mode 100644
index 000000000..a0d172b10
--- /dev/null
+++ b/shadows/playservices/Android.mk
@@ -0,0 +1,29 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadows_playservices
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_shadows_framework \
+ Robolectric_annotations \
+ Robolectric_shadowapi \
+ robolectric-host-play-services-v9-auth-base \
+ robolectric-host-play-services-v9-basement \
+ robolectric-host-play-services-v9-base \
+ robolectric-host-android-support-v4 \
+ robolectric-host-android_all \
+ robolectric-guava-20.0
+
+LOCAL_ANNOTATION_PROCESSORS := \
+ Robolectric_annotations \
+ Robolectric_processor \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8
+
+LOCAL_ANNOTATION_PROCESSOR_CLASSES := org.robolectric.annotation.processing.RobolectricProcessor
+
+LOCAL_JAVACFLAGS := -Aorg.robolectric.annotation.processing.shadowPackage=org.robolectric.shadows.gms
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/shadows/supportv4/Android.mk b/shadows/supportv4/Android.mk
new file mode 100644
index 000000000..10932ed65
--- /dev/null
+++ b/shadows/supportv4/Android.mk
@@ -0,0 +1,27 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_shadows_supportv4
+
+LOCAL_JAVA_LIBRARIES := \
+ Robolectric_shadows_framework \
+ Robolectric_annotations \
+ Robolectric_robolectric \
+ Robolectric_shadowapi \
+ Robolectric_utils \
+ robolectric-host-android-support-v4 \
+ robolectric-host-android_all
+
+LOCAL_ANNOTATION_PROCESSORS := \
+ Robolectric_annotations \
+ Robolectric_processor \
+ robolectric-guava-20.0 \
+ robolectric-gson-2.8
+
+LOCAL_ANNOTATION_PROCESSOR_CLASSES := org.robolectric.annotation.processing.RobolectricProcessor
+
+LOCAL_JAVACFLAGS := -Aorg.robolectric.annotation.processing.shadowPackage=org.robolectric.shadows.support.v4
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file
diff --git a/src/main/resources/META-INF/services/org.robolectric.internal.ShadowProvider b/src/main/resources/META-INF/services/org.robolectric.internal.ShadowProvider
new file mode 100644
index 000000000..7404289d4
--- /dev/null
+++ b/src/main/resources/META-INF/services/org.robolectric.internal.ShadowProvider
@@ -0,0 +1,7 @@
+# This service list is used when creating the Robolectric_all artifact.
+# It must be updated as new ShadowProvider implementations are added.
+org.robolectric.Shadows
+org.robolectric.shadows.gms.Shadows
+org.robolectric.shadows.httpclient.Shadows
+org.robolectric.shadows.multidex.Shadows
+org.robolectric.shadows.support.v4.Shadows \ No newline at end of file
diff --git a/utils/Android.mk b/utils/Android.mk
new file mode 100644
index 000000000..a2df1ba96
--- /dev/null
+++ b/utils/Android.mk
@@ -0,0 +1,8 @@
+LOCAL_PATH := $(call my-dir)
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := Robolectric_utils
+
+LOCAL_SRC_FILES := $(call all-java-files-under, src/main/java)
+
+include $(BUILD_HOST_JAVA_LIBRARY) \ No newline at end of file