Email split, part dix
* The coup de grĂ¢ce for Exchange in Email
* Remove Exchange bits from AndroidManifest
* Update Android.mk to create static jar for emailcommon
* Delete all com.android.exchange files
* Delete all exchange-only strings
* Change loadAttachment service method to take only attachment id and
background flag
* Add code to AttachmentProvider.openFile() that opens an output file
for attachment writes
* Make sure deviceId is determined in Email app (not Exchange)
Bug: 3442973
Change-Id: I775600252fd121f474d51cb26fefbfcc50e387af
diff --git a/Android.mk b/Android.mk
index 3dd43e7..1a84cf5 100644
--- a/Android.mk
+++ b/Android.mk
@@ -12,38 +12,58 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-LOCAL_PATH:= $(call my-dir)
+LOCAL_PATH := $(call my-dir)
+
+# Build the Email application itself, along with its tests and tests for the emailcommon
+# static library. All tests can be run via runtest email
+
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
-LOCAL_SRC_FILES := $(call all-java-files-under, src)
-LOCAL_SRC_FILES += \
- src/com/android/emailcommon/service/IEmailService.aidl \
- src/com/android/emailcommon/service/IEmailServiceCallback.aidl \
- src/com/android/emailcommon/service/IPolicyService.aidl \
- src/com/android/emailcommon/service/IAccountService.aidl
-
-LOCAL_STATIC_JAVA_LIBRARIES := android-common
-# Revive this when the app is unbundled.
-# LOCAL_SDK_VERSION := current
+LOCAL_SRC_FILES := $(call all-java-files-under, src/com/android/email)
+LOCAL_SRC_FILES += $(call all-java-files-under, src/com/beetstra)
+LOCAL_STATIC_JAVA_LIBRARIES := android-common com.android.emailcommon
LOCAL_PACKAGE_NAME := Email
LOCAL_PROGUARD_FLAG_FILES := proguard.flags
+LOCAL_SDK_VERSION := current
+
# The Emma tool analyzes code coverage when running unit tests on the
# application. This configuration line selects which packages will be analyzed,
# leaving out code which is tested by other means (e.g. static libraries) that
# would dilute the coverage results. These options do not affect regular
# production builds.
-LOCAL_EMMA_COVERAGE_FILTER := +com.android.email.*,+org.apache.james.mime4j.* \
- +com.beetstra.jutf7.*,+org.apache.commons.io.*
-# EXCHANGE-REMOVE-SECTION-START
-LOCAL_EMMA_COVERAGE_FILTER += +com.android.exchange.*
-# EXCHANGE-REMOVE-SECTION-END
+LOCAL_EMMA_COVERAGE_FILTER := +com.android.emailcommon.*,+com.android.email.*, \
+ +org.apache.james.mime4j.*,+com.beetstra.jutf7.*,+org.apache.commons.io.*
include $(BUILD_PACKAGE)
+# only include rules to build other stuff for the original package, not derived package.
+ifeq ($(strip $(LOCAL_PACKAGE_OVERRIDES)),)
+
+# Build the com.android.emailcommon static library. At the moment, this includes
+# the emailcommon files themselves plus everything under src/org (apache code). All of our
+# AIDL files are also compiled into the static library
+
+include $(CLEAR_VARS)
+
+LOCAL_MODULE := com.android.emailcommon
+LOCAL_SRC_FILES := $(call all-java-files-under, src/com/android/emailcommon)
+LOCAL_SRC_FILES += $(call all-java-files-under, src/org)
+LOCAL_SRC_FILES += \
+ src/com/android/emailcommon/service/IEmailService.aidl \
+ src/com/android/emailcommon/service/IEmailServiceCallback.aidl \
+ src/com/android/emailcommon/service/IPolicyService.aidl \
+ src/com/android/emailcommon/service/IAccountService.aidl
+
+LOCAL_SDK_VERSION := current
+
+include $(BUILD_STATIC_JAVA_LIBRARY)
+
# additionally, build unit tests in a separate .apk
include $(call all-makefiles-under,$(LOCAL_PATH))
+
+endif