Merge "Default install path of shared Java library with tag tests" into jb-mr2-dev
diff --git a/core/cleanbuild.mk b/core/cleanbuild.mk
index 63cbf63..1d17f77 100644
--- a/core/cleanbuild.mk
+++ b/core/cleanbuild.mk
@@ -193,8 +193,9 @@
 	$(PRODUCT_OUT)/obj/JAVA_LIBRARIES \
 	$(PRODUCT_OUT)/obj/FAKE \
 	$(PRODUCT_OUT)/obj/EXECUTABLES/adbd_intermediates \
-	$(PRODUCT_OUT)/obj/EXECUTABLES/init_intermediates
-
+	$(PRODUCT_OUT)/obj/EXECUTABLES/init_intermediates \
+	$(PRODUCT_OUT)/obj/ETC/mac_permissions.xml_intermediates \
+	$(PRODUCT_OUT)/obj/ETC/sepolicy_intermediates
 
 # The files/dirs to delete during a dataclean, which removes any files
 # in the staging and emulator data partitions.
diff --git a/core/definitions.mk b/core/definitions.mk
index 2cf5283..7bee582 100644
--- a/core/definitions.mk
+++ b/core/definitions.mk
@@ -833,7 +833,7 @@
 	$(RS_PREBUILT_COMPILER_RT) \
 	-o $@ -L prebuilts/gcc/ \
 	-L $(TARGET_OUT_INTERMEDIATE_LIBRARIES) $(RS_PREBUILT_LIBPATH) \
-	-lRSSupport -lm
+	-lRSSupport -lm -lc
 endef
 
 ###########################################################
diff --git a/core/host_java_library.mk b/core/host_java_library.mk
index d6a688f..cda6e10 100644
--- a/core/host_java_library.mk
+++ b/core/host_java_library.mk
@@ -50,6 +50,8 @@
 
 include $(BUILD_SYSTEM)/base_rules.mk
 
+$(full_classes_compiled_jar): PRIVATE_JAVAC_DEBUG_FLAGS := -g
+
 java_alternative_checked_module :=
 
 # The layers file allows you to enforce a layering between java packages.
diff --git a/core/java.mk b/core/java.mk
index da670f9..7c8c894f 100644
--- a/core/java.mk
+++ b/core/java.mk
@@ -214,7 +214,7 @@
 
 $(rs_compatibility_jni_libs): $(RenderScript_file_stamp) $(RS_PREBUILT_CLCORE) \
     $(rs_support_lib) $(rs_jni_lib) $(rs_compiler_rt)
-$(rs_compatibility_jni_libs): | $(BCC_COMPAT)
+$(rs_compatibility_jni_libs): $(BCC_COMPAT)
 $(rs_compatibility_jni_libs): PRIVATE_CXX := $(TARGET_CXX)
 $(rs_compatibility_jni_libs): $(renderscript_intermediate)/librs.%.so: \
     $(renderscript_intermediate.COMMON)/res/raw/%.bc
diff --git a/core/pdk_config.mk b/core/pdk_config.mk
index afa5b74..41a82d4 100644
--- a/core/pdk_config.mk
+++ b/core/pdk_config.mk
@@ -18,12 +18,14 @@
 
 # if PDK_FUSION_PLATFORM_ZIP is specified, do not override.
 ifndef PDK_FUSION_PLATFORM_ZIP
-_pdk_fusion_default_platform_zip := vendor/pdk/$(TARGET_DEVICE)/$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)/platform/platform.zip
-ifneq (,$(wildcard $(_pdk_fusion_default_platform_zip)))
-$(info $(_pdk_fusion_default_platform_zip) found, do a PDK fusion build.)
-PDK_FUSION_PLATFORM_ZIP := $(_pdk_fusion_default_platform_zip)
+_pdk_fusion_default_platform_zip = $(wildcard \
+vendor/pdk/$(TARGET_DEVICE)/$(TARGET_PRODUCT)-$(TARGET_BUILD_VARIANT)/platform/platform.zip \
+vendor/pdk/$(TARGET_DEVICE)/$(patsubst aosp_%,full_%,$(TARGET_PRODUCT))-$(TARGET_BUILD_VARIANT)/platform/platform.zip)
+ifneq (,$(_pdk_fusion_default_platform_zip))
+PDK_FUSION_PLATFORM_ZIP := $(word 1, $(_pdk_fusion_default_platform_zip))
 TARGET_BUILD_PDK := true
-endif
+$(info $(PDK_FUSION_PLATFORM_ZIP) found, do a PDK fusion build.)
+endif # _pdk_fusion_default_platform_zip
 endif # !PDK_FUSION_PLATFORM_ZIP
 
 ifneq (,$(filter pdk fusion, $(MAKECMDGOALS)))
diff --git a/core/tasks/factory_bundle.mk b/core/tasks/factory_bundle.mk
index 5c5adc3..054a52a 100644
--- a/core/tasks/factory_bundle.mk
+++ b/core/tasks/factory_bundle.mk
@@ -16,6 +16,9 @@
 
 ifeq (,$(ONE_SHOT_MAKEFILE))
 ifneq ($(TARGET_BUILD_PDK),true)
+  TARGET_BUILD_FACTORY=true
+endif
+ifeq ($(TARGET_BUILD_FACTORY),true)
 
 # PRODUCT_FACTORY_RAMDISK_MODULES consists of "<module_name>:<install_path>[:<install_path>...]" tuples.
 # <install_path> is relative to the staging directory for the bundle.
diff --git a/core/tasks/factory_ramdisk.mk b/core/tasks/factory_ramdisk.mk
index 579fd6a..00fcdde 100644
--- a/core/tasks/factory_ramdisk.mk
+++ b/core/tasks/factory_ramdisk.mk
@@ -16,6 +16,9 @@
 
 ifeq (,$(ONE_SHOT_MAKEFILE))
 ifneq ($(TARGET_BUILD_PDK),true)
+  TARGET_BUILD_FACTORY=true
+endif
+ifeq ($(TARGET_BUILD_FACTORY),true)
 
 # PRODUCT_FACTORY_RAMDISK_MODULES consists of "<module_name>:<install_path>[:<install_path>...]" tuples.
 # <install_path> is relative to TARGET_FACTORY_RAMDISK_OUT.
diff --git a/target/product/AndroidProducts.mk b/target/product/AndroidProducts.mk
index 55f0a3a..a72d2f3 100644
--- a/target/product/AndroidProducts.mk
+++ b/target/product/AndroidProducts.mk
@@ -39,7 +39,7 @@
     $(LOCAL_DIR)/generic_armv5.mk \
     $(LOCAL_DIR)/aosp_x86.mk \
     $(LOCAL_DIR)/full_x86.mk \
-    $(LOCAL_DIR)/aosp_mips.mk
+    $(LOCAL_DIR)/aosp_mips.mk \
     $(LOCAL_DIR)/full_mips.mk
 else
 PRODUCT_MAKEFILES := \
diff --git a/target/product/generic_no_telephony.mk b/target/product/generic_no_telephony.mk
index a231fac..194fb7a 100644
--- a/target/product/generic_no_telephony.mk
+++ b/target/product/generic_no_telephony.mk
@@ -83,8 +83,7 @@
     ro.carrier=unknown
 
 $(call inherit-product-if-exists, frameworks/base/data/fonts/fonts.mk)
-$(call inherit-product-if-exists, external/cibu-fonts/fonts.mk)
-$(call inherit-product-if-exists, external/lohit-fonts/fonts.mk)
+$(call inherit-product-if-exists, external/noto-fonts/fonts.mk)
 $(call inherit-product-if-exists, external/naver-fonts/fonts.mk)
 $(call inherit-product-if-exists, frameworks/base/data/keyboards/keyboards.mk)
 $(call inherit-product-if-exists, frameworks/webview/chromium/chromium.mk)
diff --git a/tools/droiddoc/templates-sdk/assets/js/docs.js b/tools/droiddoc/templates-sdk/assets/js/docs.js
index 613db32..10d42b2 100644
--- a/tools/droiddoc/templates-sdk/assets/js/docs.js
+++ b/tools/droiddoc/templates-sdk/assets/js/docs.js
@@ -11,6 +11,10 @@
 var SITE_ROOT = toRoot + basePath.substring(1,basePath.indexOf("/",1));
 var GOOGLE_DATA; // combined data for google service apis, used for search suggest
   
+// Ensure that all ajax getScript() requests allow caching
+$.ajaxSetup({
+  cache: true
+});
 
 /******  ON LOAD SET UP STUFF *********/
 
@@ -2319,7 +2323,13 @@
 }
 
 function init_default_navtree(toroot) {
-  init_navtree("tree-list", toroot, NAVTREE_DATA);
+  // load json file for navtree data
+  $.getScript(toRoot + 'navtree_data.js', function(data, textStatus, jqxhr) {
+      // when the file is loaded, initialize the tree
+      if(jqxhr.status === 200) {
+          init_navtree("tree-list", toroot, NAVTREE_DATA);
+      }
+  });
   
   // perform api level toggling because because the whole tree is new to the DOM
   var selectedLevel = $("#apiLevelSelector option:selected").val();
diff --git a/tools/droiddoc/templates-sdk/head_tag.cs b/tools/droiddoc/templates-sdk/head_tag.cs
index 6774ca6..4fa520f 100644
--- a/tools/droiddoc/templates-sdk/head_tag.cs
+++ b/tools/droiddoc/templates-sdk/head_tag.cs
@@ -50,8 +50,6 @@
 <?cs if:reference.gms || reference.gcm || google?>
 <script src="<?cs var:toroot ?>gms_navtree_data.js" async type="text/javascript"></script>
 <script src="<?cs var:toroot ?>gcm_navtree_data.js" async type="text/javascript"></script>
-<?cs elif:reference ?>
-<script src="<?cs var:toroot ?>navtree_data.js" async type="text/javascript"></script>
 <?cs /if ?>
 
 <script type="text/javascript">