Reconcile with ics-factoryrom-release ics-mr0-release
Change-Id: Ic2b248f0ade713e7ba984cbe093afe50bc931ad2
diff --git a/CleanSpec.mk b/CleanSpec.mk
index 5240837..62a3a09 100644
--- a/CleanSpec.mk
+++ b/CleanSpec.mk
@@ -102,6 +102,7 @@
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/JAVA_LIBRARIES/*)
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/framework/*)
+$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/build.prop)
# ************************************************
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
diff --git a/core/Makefile b/core/Makefile
index ba243ff..a81c981 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -16,10 +16,16 @@
# e.g., "system/etc/file.xml".
# The filter part means "only eval the copy-one-file rule if this
# src:dest pair is the first one to match the same dest"
+#$(1): the src:dest pair
+define check-product-copy-files
+$(if $(filter %.apk, $(1)),$(error \
+ Prebuilt apk found in PRODUCT_COPY_FILES: $(1), use BUILD_PREBUILT instead!))
+endef
unique_product_copy_files_destinations :=
$(foreach cf,$(PRODUCT_COPY_FILES), \
$(eval _src := $(call word-colon,1,$(cf))) \
$(eval _dest := $(call word-colon,2,$(cf))) \
+ $(call check-product-copy-files,$(cf)) \
$(if $(filter $(unique_product_copy_files_destinations),$(_dest)),, \
$(eval _fulldest := $(call append-path,$(PRODUCT_OUT),$(_dest))) \
$(eval $(call copy-one-file,$(_src),$(_fulldest))) \
@@ -241,6 +247,8 @@
private_key=""' >> $@;,\
echo 'name="$(p).apk" certificate="$(PACKAGES.$(p).CERTIFICATE)" \
private_key="$(PACKAGES.$(p).PRIVATE_KEY)"' >> $@;))
+ # In case $(PACKAGES) is empty.
+ $(hide) touch $@
.PHONY: apkcerts-list
apkcerts-list: $(APKCERTS_FILE)
@@ -995,6 +1003,7 @@
$(call intermediates-dir-for,EXECUTABLES,applypatch)/applypatch \
$(call intermediates-dir-for,EXECUTABLES,applypatch_static)/applypatch_static \
$(call intermediates-dir-for,EXECUTABLES,check_prereq)/check_prereq \
+ $(call intermediates-dir-for,EXECUTABLES,sqlite3)/sqlite3 \
$(call intermediates-dir-for,EXECUTABLES,updater)/updater
$(BUILT_TARGET_FILES_PACKAGE): PRIVATE_OTA_TOOLS := $(built_ota_tools)
diff --git a/core/build_id.mk b/core/build_id.mk
index 8a23412..6da16e0 100644
--- a/core/build_id.mk
+++ b/core/build_id.mk
@@ -1,4 +1,3 @@
-
#
# Copyright (C) 2008 The Android Open Source Project
#
@@ -14,9 +13,20 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
+
+#
+# Defines branch-specific values.
+#
+
# BUILD_ID is usually used to specify the branch name
# (like "MAIN") or a branch name and a release candidate
-# (like "CRB01"). It must be a single word, and is
+# (like "TC1-RC5"). It must be a single word, and is
# capitalized by convention.
+#
+BUILD_ID := ICS_MR0
-export BUILD_ID=IFL10C
+# DISPLAY_BUILD_NUMBER should only be set for development branches,
+# If set, the BUILD_NUMBER (cl) is appended to the BUILD_ID for
+# a more descriptive BUILD_ID_DISPLAY, otherwise BUILD_ID_DISPLAY
+# is the same as BUILD_ID
+DISPLAY_BUILD_NUMBER := true
diff --git a/core/cleanbuild.mk b/core/cleanbuild.mk
index 2639cae..9c1bbb8 100644
--- a/core/cleanbuild.mk
+++ b/core/cleanbuild.mk
@@ -186,7 +186,8 @@
$(PRODUCT_OUT)/root \
$(PRODUCT_OUT)/system \
$(PRODUCT_OUT)/dex_bootjars \
- $(PRODUCT_OUT)/obj/JAVA_LIBRARIES
+ $(PRODUCT_OUT)/obj/JAVA_LIBRARIES \
+ $(PRODUCT_OUT)/fake_packages
# The files/dirs to delete during a dataclean, which removes any files
# in the staging and emulator data partitions.
diff --git a/core/clear_vars.mk b/core/clear_vars.mk
index 8c5a40e..643a138 100644
--- a/core/clear_vars.mk
+++ b/core/clear_vars.mk
@@ -93,6 +93,7 @@
LOCAL_DX_FLAGS:=
LOCAL_CERTIFICATE:=
LOCAL_SDK_VERSION:=
+LOCAL_SDK_RES_VERSION:=
LOCAL_NDK_VERSION:=
LOCAL_NDK_STL_VARIANT:=
LOCAL_NO_EMMA_INSTRUMENT:=
diff --git a/core/definitions.mk b/core/definitions.mk
index 1afc0f4..99682fd 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -1585,10 +1585,9 @@
define add-dex-to-package
$(if $(filter classes.dex,$(notdir $(PRIVATE_DEX_FILE))),\
$(hide) $(AAPT) add -k $@ $(PRIVATE_DEX_FILE),\
-$(eval _adtp_classes.dex := $(dir $(PRIVATE_DEX_FILE))/classes.dex)\
-$(hide) cp $(PRIVATE_DEX_FILE) $(_adtp_classes.dex) && \
-$(AAPT) add -k $@ $(_adtp_classes.dex) && \
-rm -f $(_adtp_classes.dex))
+$(hide) _adtp_classes_dex=$(dir $(PRIVATE_DEX_FILE))classes.dex; \
+cp $(PRIVATE_DEX_FILE) $$_adtp_classes_dex && \
+$(AAPT) add -k $@ $$_adtp_classes_dex && rm -f $$_adtp_classes_dex)
endef
define add-java-resources-to-package
diff --git a/core/main.mk b/core/main.mk
index 6841b36..5f01238 100644
--- a/core/main.mk
+++ b/core/main.mk
@@ -664,6 +664,11 @@
$(info Removing from sdk:)$(foreach d,$(target_gnu_MODULES),$(info : $(d)))
modules_to_install := \
$(filter-out $(target_gnu_MODULES),$(modules_to_install))
+
+ # Ensure every module listed in PRODUCT_PACKAGES gets something installed
+ $(foreach m, $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_PACKAGES), \
+ $(if $(strip $(ALL_MODULES.$(m).INSTALLED)),,\
+ $(error Module '$(m)' in PRODUCT_PACKAGES has nothing to install!)))
endif
diff --git a/core/package.mk b/core/package.mk
index 7bc5be4..398e487 100644
--- a/core/package.mk
+++ b/core/package.mk
@@ -161,6 +161,11 @@
include $(BUILD_SYSTEM)/java.mk
#################################
+LOCAL_SDK_RES_VERSION:=$(strip $(LOCAL_SDK_RES_VERSION))
+ifeq ($(LOCAL_SDK_RES_VERSION),)
+ LOCAL_SDK_RES_VERSION:=$(LOCAL_SDK_VERSION)
+endif
+
full_android_manifest := $(LOCAL_PATH)/$(LOCAL_MANIFEST_FILE)
$(LOCAL_INTERMEDIATE_TARGETS): \
PRIVATE_ANDROID_MANIFEST := $(full_android_manifest)
@@ -250,12 +255,12 @@
# Most packages should link against the resources defined by framework-res.
# Even if they don't have their own resources, they may use framework
# resources.
-ifneq ($(filter-out current,$(LOCAL_SDK_VERSION)),)
+ifneq ($(filter-out current,$(LOCAL_SDK_RES_VERSION)),)
# for released sdk versions, the platform resources were built into android.jar.
framework_res_package_export := \
- $(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_VERSION)/android.jar
+ $(HISTORICAL_SDK_VERSIONS_ROOT)/$(LOCAL_SDK_RES_VERSION)/android.jar
framework_res_package_export_deps := $(framework_res_package_export)
-else # LOCAL_SDK_VERSION
+else # LOCAL_SDK_RES_VERSION
framework_res_package_export := \
$(call intermediates-dir-for,APPS,framework-res,,COMMON)/package-export.apk
# We can't depend directly on the export.apk file; it won't get its
@@ -263,7 +268,7 @@
# corresponding R.stamp file, which lists the export.apk as a dependency.
framework_res_package_export_deps := \
$(dir $(framework_res_package_export))src/R.stamp
-endif # LOCAL_SDK_VERSION
+endif # LOCAL_SDK_RES_VERSION
$(R_file_stamp): $(framework_res_package_export_deps)
$(LOCAL_INTERMEDIATE_TARGETS): \
PRIVATE_AAPT_INCLUDES := $(framework_res_package_export)
diff --git a/core/product.mk b/core/product.mk
index 72cb2f7..8b76243 100644
--- a/core/product.mk
+++ b/core/product.mk
@@ -76,7 +76,6 @@
PRODUCT_EXTRA_RECOVERY_KEYS \
PRODUCT_PACKAGE_OVERLAYS \
DEVICE_PACKAGE_OVERLAYS \
- PRODUCT_CONTRIBUTORS_FILE \
PRODUCT_TAGS \
PRODUCT_SDK_ADDON_NAME \
PRODUCT_SDK_ADDON_COPY_FILES \
diff --git a/core/product_config.mk b/core/product_config.mk
index e673d5c..23e06ea 100644
--- a/core/product_config.mk
+++ b/core/product_config.mk
@@ -282,10 +282,6 @@
PRODUCT_COPY_FILES := \
$(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_COPY_FILES))
-# The HTML file containing the contributors to the project.
-PRODUCT_CONTRIBUTORS_FILE := \
- $(strip $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_CONTRIBUTORS_FILE))
-
# A list of property assignments, like "key = value", with zero or more
# whitespace characters on either side of the '='.
PRODUCT_PROPERTY_OVERRIDES := \
diff --git a/core/tasks/sdk-addon.mk b/core/tasks/sdk-addon.mk
index 797314a..f3aec65 100644
--- a/core/tasks/sdk-addon.mk
+++ b/core/tasks/sdk-addon.mk
@@ -58,6 +58,7 @@
$(BUILT_SYSTEMIMAGE):images/$(TARGET_CPU_ABI)/system.img \
$(BUILT_USERDATAIMAGE_TARGET):images/$(TARGET_CPU_ABI)/userdata.img \
$(BUILT_RAMDISK_TARGET):images/$(TARGET_CPU_ABI)/ramdisk.img \
+ $(PRODUCT_OUT)/system/build.prop:images/$(TARGET_CPU_ABI)/build.prop \
$(target_notice_file_txt):images/$(TARGET_CPU_ABI)/NOTICE.txt
# Generate rules to copy the requested files
diff --git a/core/version_defaults.mk b/core/version_defaults.mk
index 15176b9..6773635 100644
--- a/core/version_defaults.mk
+++ b/core/version_defaults.mk
@@ -41,7 +41,7 @@
# which is the version that we reveal to the end user.
# Update this value when the platform version changes (rather
# than overriding it somewhere else). Can be an arbitrary string.
- PLATFORM_VERSION := 4.0
+ PLATFORM_VERSION := 4.0.1
endif
ifeq "" "$(PLATFORM_SDK_VERSION)"
diff --git a/target/board/generic/device.mk b/target/board/generic/device.mk
index f57a0dc..8b187d5 100644
--- a/target/board/generic/device.mk
+++ b/target/board/generic/device.mk
@@ -23,7 +23,8 @@
PRODUCT_COPY_FILES := \
development/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
- development/data/etc/vold.conf:system/etc/vold.conf
+ development/data/etc/vold.conf:system/etc/vold.conf \
+ development/tools/emulator/system/camera/media_profiles.xml:system/etc/media_profiles.xml \
PRODUCT_PACKAGES := \
audio.primary.goldfish
diff --git a/target/board/generic_x86/device.mk b/target/board/generic_x86/device.mk
index 0b4dc27..1055cba 100644
--- a/target/board/generic_x86/device.mk
+++ b/target/board/generic_x86/device.mk
@@ -23,4 +23,5 @@
PRODUCT_COPY_FILES := \
development/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
- development/data/etc/vold.conf:system/etc/vold.conf
+ development/data/etc/vold.conf:system/etc/vold.conf \
+ development/tools/emulator/system/camera/media_profiles.xml:system/etc/media_profiles.xml \
diff --git a/target/board/vbox_x86/device.mk b/target/board/vbox_x86/device.mk
index a028b98..a76d8fa 100644
--- a/target/board/vbox_x86/device.mk
+++ b/target/board/vbox_x86/device.mk
@@ -28,6 +28,7 @@
PRODUCT_COPY_FILES := \
development/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
development/data/etc/vold.conf:system/etc/vold.conf \
+ development/tools/emulator/system/camera/media_profiles.xml:system/etc/media_profiles.xml \
build/target/board/vbox_x86/init.rc:root/init.rc \
build/target/board/vbox_x86/init.vbox_x86.rc:root/init.vbox_x86.rc \
$(LOCAL_KERNEL):kernel
diff --git a/target/product/core.mk b/target/product/core.mk
index ca5858f..aac703e 100644
--- a/target/product/core.mk
+++ b/target/product/core.mk
@@ -26,7 +26,6 @@
ApplicationsProvider \
BackupRestoreConfirmation \
Browser \
- Bugreport \
Contacts \
ContactsProvider \
DefaultContainerService \
@@ -41,11 +40,8 @@
SettingsProvider \
SharedStorageBackup \
TelephonyProvider \
- TtsService \
UserDictionaryProvider \
- VpnServices \
apache-xml \
- bluetooth-health \
bouncycastle \
bu \
cacerts \
@@ -63,7 +59,6 @@
ext \
filterfw \
framework-res \
- hostapd \
hprof-conv \
icu.dat \
installd \
@@ -75,7 +70,6 @@
libOpenSLES \
libaudiopreprocessing \
libcrypto \
- libdex \
libdvm \
libexpat \
libfilterfw \
@@ -83,7 +77,6 @@
libgabi++ \
libicui18n \
libicuuc \
- libjavacore \
libnativehelper \
libnfc_ndef \
libpowermanager \
@@ -92,7 +85,6 @@
libssl \
libstagefright_soft_aacdec \
libstagefright_soft_amrdec \
- libstagefright_soft_avcdec \
libstagefright_soft_g711dec \
libstagefright_soft_mp3dec \
libstagefright_soft_mpeg4dec \
@@ -103,8 +95,7 @@
libwilhelm \
libz \
screencap \
- sensorservice \
- wpa_supplicant.conf
+ sensorservice
# host-only dependencies
ifeq ($(WITH_HOST_DALVIK),true)
@@ -112,6 +103,5 @@
apache-xml-hostdex \
bouncycastle-hostdex \
core-hostdex \
- libjavacore-host \
dalvik
endif
diff --git a/target/product/generic_armv5.mk b/target/product/generic_armv5.mk
index d419e70..daa321a 100644
--- a/target/product/generic_armv5.mk
+++ b/target/product/generic_armv5.mk
@@ -18,7 +18,6 @@
# It includes the base Android platform.
$(call inherit-product, $(SRC_TARGET_DIR)/product/generic.mk)
-$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk)
# Overrides
PRODUCT_BRAND := generic_armv5
diff --git a/target/product/generic_no_telephony.mk b/target/product/generic_no_telephony.mk
index a1cce72..d165b0f 100644
--- a/target/product/generic_no_telephony.mk
+++ b/target/product/generic_no_telephony.mk
@@ -20,7 +20,6 @@
PRODUCT_POLICY := android.policy_phone
PRODUCT_PACKAGES := \
- AccountAndSyncSettings \
DeskClock \
AlarmProvider \
Bluetooth \
@@ -44,7 +43,10 @@
Updater \
CalendarProvider \
SyncProvider \
- VpnDialogs
+ VpnDialogs \
+ bluetooth-health \
+ hostapd \
+ wpa_supplicant.conf
PRODUCT_PACKAGES += \
icu.dat
diff --git a/target/product/generic_x86.mk b/target/product/generic_x86.mk
index 7e77a27..86710c4 100644
--- a/target/product/generic_x86.mk
+++ b/target/product/generic_x86.mk
@@ -18,7 +18,6 @@
# It includes the base Android platform.
$(call inherit-product, $(SRC_TARGET_DIR)/product/generic.mk)
-$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk)
# Overrides
PRODUCT_BRAND := generic_x86
diff --git a/target/product/large_emu_hw.mk b/target/product/large_emu_hw.mk
index 9224130..15b1bed 100644
--- a/target/product/large_emu_hw.mk
+++ b/target/product/large_emu_hw.mk
@@ -20,7 +20,6 @@
PRODUCT_POLICY := android.policy_mid
PRODUCT_PACKAGES := \
- AccountAndSyncSettings \
CarHome \
DeskClock \
AlarmProvider \
@@ -42,7 +41,11 @@
Sync \
Updater \
CalendarProvider \
- SyncProvider
+ SyncProvider \
+ bluetooth-health \
+ hostapd \
+ wpa_supplicant.conf
+
$(call inherit-product, $(SRC_TARGET_DIR)/product/core.mk)
diff --git a/target/product/sdk.mk b/target/product/sdk.mk
index 05aba8d..c4abc51 100644
--- a/target/product/sdk.mk
+++ b/target/product/sdk.mk
@@ -30,21 +30,18 @@
libWnnEngDic \
libWnnJpnDic \
libwnndict \
- Phone \
+ Phone \
PinyinIME \
Protips \
SoftKeyboard \
SystemUI \
Launcher2 \
- AccountAndSyncSettings \
Development \
DrmProvider \
Fallback \
- GPSEnable \
Settings \
SdkSetup \
CustomLocale \
- gpstest \
sqlite3 \
LatinIME \
CertInstaller \
@@ -153,10 +150,11 @@
# locale + densities. en_US is both first and in alphabetical order to
# ensure this is the default locale.
PRODUCT_LOCALES = \
+ en_US \
ldpi \
hdpi \
mdpi \
- en_US \
+ xhdpi \
ar_EG \
ar_IL \
bg_BG \
diff --git a/tools/droiddoc/templates-sdk/assets/android-developer-core.css b/tools/droiddoc/templates-sdk/assets/android-developer-core.css
index 565f173..f548a6c 100644
--- a/tools/droiddoc/templates-sdk/assets/android-developer-core.css
+++ b/tools/droiddoc/templates-sdk/assets/android-developer-core.css
@@ -649,6 +649,7 @@
#doc-content .gsc-tabHeader {
padding: 3px 6px;
position:relative;
+ width:auto;
}
#doc-content .gsc-tabHeader.gsc-tabhActive {
diff --git a/tools/droiddoc/templates-sdk/assets/android-developer-docs.css b/tools/droiddoc/templates-sdk/assets/android-developer-docs.css
index 3af4eb1..20871b9 100644
--- a/tools/droiddoc/templates-sdk/assets/android-developer-docs.css
+++ b/tools/droiddoc/templates-sdk/assets/android-developer-docs.css
@@ -718,6 +718,17 @@
padding:0;
}
+#jd-content div.special.reference h2,
+#jd-content div.special.reference h3,
+#jd-content div.special.reference h4 {
+ color:#000;
+ font-size:1em;
+ border:none;
+ font-weight:bold;
+ margin:.5em 0;
+ padding:0;
+}
+
p.note, div.note,
p.caution, div.caution,
p.warning, div.warning {
diff --git a/tools/droiddoc/templates-sdk/assets/android-developer-docs.js b/tools/droiddoc/templates-sdk/assets/android-developer-docs.js
index 153f5e0..0cac2fc 100644
--- a/tools/droiddoc/templates-sdk/assets/android-developer-docs.js
+++ b/tools/droiddoc/templates-sdk/assets/android-developer-docs.js
@@ -232,6 +232,9 @@
if (tags[j] == 'new') {
listItemNode.get(0).innerHTML += ' <span class="new">new!</span>';
break;
+ } else if (tags[j] == 'updated') {
+ listItemNode.get(0).innerHTML += ' <span class="new">updated!</span>';
+ break;
}
}
listNode.append(listItemNode);
diff --git a/tools/droiddoc/templates-sdk/assets/android-developer-reference.js b/tools/droiddoc/templates-sdk/assets/android-developer-reference.js
index 5561cc9..ba47d4d 100644
--- a/tools/droiddoc/templates-sdk/assets/android-developer-reference.js
+++ b/tools/droiddoc/templates-sdk/assets/android-developer-reference.js
@@ -38,7 +38,9 @@
minLevel = parseInt($("body").attr("class"));
// Handle provisional api levels; the provisional level will always be the highest possible level
- if (isNaN(minLevel)) {
+ // Provisional api levels will also have a length; other stuff that's just missing a level won't,
+ // so leave those kinds of entities at the default level of 1 (for example, the R.styleable class)
+ if (isNaN(minLevel) && minLevel.length) {
minLevel = maxLevel;
}
var select = $("#apiLevelSelector").html("").change(changeApiLevel);
diff --git a/tools/droiddoc/templates-sdk/assets/images/home/ics-android.png b/tools/droiddoc/templates-sdk/assets/images/home/ics-android.png
new file mode 100644
index 0000000..be62ca8
--- /dev/null
+++ b/tools/droiddoc/templates-sdk/assets/images/home/ics-android.png
Binary files differ