Merge "Merge Android Pie into master"
11
CleanSpec.mk
@@ -463,6 +463,10 @@ $(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/manifest.xml)
|
|||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/compatibility_matrix.xml)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/vendor/compatibility_matrix.xml)
|
||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/compatibility_matrix.xml)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/compatibility_matrix.xml)
|
||||||
|
|
||||||
|
# Remove DisplayCutoutEmulation overlays
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/overlay/DisplayCutoutEmulationWide)
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/vendor/overlay/DisplayCutoutEmulationNarrow)
|
||||||
|
|
||||||
# Remove obsolete intermedates src files
|
# Remove obsolete intermedates src files
|
||||||
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/src/RenderScript.stamp*)
|
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/*/*_intermediates/src/RenderScript.stamp*)
|
||||||
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
|
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/src)
|
||||||
@@ -479,9 +483,16 @@ $(call add-clean-step, rm -rf $(TARGET_COMMON_OUT_ROOT)/obj_asan/JAVA_LIBRARIES/
|
|||||||
# Remove stale init.noenforce.rc
|
# Remove stale init.noenforce.rc
|
||||||
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/init/gsi/init.noenforce.rc)
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/etc/init/gsi/init.noenforce.rc)
|
||||||
|
|
||||||
|
# Clean up Launcher3 which has been replaced with Launcher3QuickStep
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/app/Launcher3)
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/priv-app/Launcher3)
|
||||||
|
$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/Launcher3_intermediates)
|
||||||
|
|
||||||
# Remove old merged AndroidManifest.xml location
|
# Remove old merged AndroidManifest.xml location
|
||||||
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/AndroidManifest.xml)
|
$(call add-clean-step, rm -rf $(TARGET_OUT_COMMON_INTERMEDIATES)/APPS/*_intermediates/AndroidManifest.xml)
|
||||||
|
|
||||||
|
$(call add-clean-step, find $(PRODUCT_OUT) -type f -name "vr_hwc*" -print0 | xargs -0 rm -f)
|
||||||
|
|
||||||
# ************************************************
|
# ************************************************
|
||||||
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
|
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
|
||||||
# ************************************************
|
# ************************************************
|
||||||
|
8
OWNERS
@@ -1,3 +1,11 @@
|
|||||||
ccross@android.com
|
ccross@android.com
|
||||||
dwillemsen@google.com
|
dwillemsen@google.com
|
||||||
nanzhang@google.com
|
nanzhang@google.com
|
||||||
|
|
||||||
|
per-file * = ccross@android.com
|
||||||
|
per-file * = dwillemsen@google.com
|
||||||
|
per-file * = nanzhang@google.com
|
||||||
|
|
||||||
|
# for version updates
|
||||||
|
per-file version_defaults.mk = aseaton@google.com
|
||||||
|
per-file version_defaults.mk = elisapascual@google.com
|
||||||
|
@@ -352,6 +352,7 @@ endif
|
|||||||
PLATFORM_PREVIEW_SDK_VERSION="$(PLATFORM_PREVIEW_SDK_VERSION)" \
|
PLATFORM_PREVIEW_SDK_VERSION="$(PLATFORM_PREVIEW_SDK_VERSION)" \
|
||||||
PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
|
PLATFORM_VERSION_CODENAME="$(PLATFORM_VERSION_CODENAME)" \
|
||||||
PLATFORM_VERSION_ALL_CODENAMES="$(PLATFORM_VERSION_ALL_CODENAMES)" \
|
PLATFORM_VERSION_ALL_CODENAMES="$(PLATFORM_VERSION_ALL_CODENAMES)" \
|
||||||
|
PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION="$(PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION)" \
|
||||||
BUILD_VERSION_TAGS="$(BUILD_VERSION_TAGS)" \
|
BUILD_VERSION_TAGS="$(BUILD_VERSION_TAGS)" \
|
||||||
BUILD_FINGERPRINT="$(BUILD_FINGERPRINT_FROM_FILE)" \
|
BUILD_FINGERPRINT="$(BUILD_FINGERPRINT_FROM_FILE)" \
|
||||||
$(if $(OEM_THUMBPRINT_PROPERTIES),BUILD_THUMBPRINT="$(BUILD_THUMBPRINT_FROM_FILE)") \
|
$(if $(OEM_THUMBPRINT_PROPERTIES),BUILD_THUMBPRINT="$(BUILD_THUMBPRINT_FROM_FILE)") \
|
||||||
|
180
core/apidiff.mk
Normal file
@@ -0,0 +1,180 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2017 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
##
|
||||||
|
##
|
||||||
|
## Common to both jdiff and javadoc
|
||||||
|
##
|
||||||
|
##
|
||||||
|
|
||||||
|
LOCAL_IS_HOST_MODULE := $(call true-or-empty,$(LOCAL_IS_HOST_MODULE))
|
||||||
|
ifeq ($(LOCAL_IS_HOST_MODULE),true)
|
||||||
|
my_prefix := HOST_
|
||||||
|
LOCAL_HOST_PREFIX :=
|
||||||
|
else
|
||||||
|
my_prefix := TARGET_
|
||||||
|
endif
|
||||||
|
|
||||||
|
LOCAL_MODULE_CLASS := $(strip $(LOCAL_MODULE_CLASS))
|
||||||
|
ifndef LOCAL_MODULE_CLASS
|
||||||
|
$(error $(LOCAL_PATH): LOCAL_MODULE_CLASS not defined)
|
||||||
|
endif
|
||||||
|
|
||||||
|
full_src_files := $(patsubst %,$(LOCAL_PATH)/%,$(LOCAL_SRC_FILES))
|
||||||
|
out_dir := $(OUT_DOCS)/$(LOCAL_MODULE)/api_diff/current
|
||||||
|
full_target := $(call doc-timestamp-for,$(LOCAL_MODULE)-diff)
|
||||||
|
|
||||||
|
ifeq ($(LOCAL_IS_HOST_MODULE),true)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH :=
|
||||||
|
full_java_libs := $(addprefix $(HOST_OUT_JAVA_LIBRARIES)/,\
|
||||||
|
$(addsuffix $(COMMON_JAVA_PACKAGE_SUFFIX),$(LOCAL_JAVA_LIBRARIES)))
|
||||||
|
full_java_lib_deps := $(full_java_libs)
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
|
ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),current)
|
||||||
|
# Use android_stubs_current if LOCAL_SDK_VERSION is current and no TARGET_BUILD_APPS.
|
||||||
|
LOCAL_JAVA_LIBRARIES := android_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_stubs_current)
|
||||||
|
else ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),system_current)
|
||||||
|
LOCAL_JAVA_LIBRARIES := android_system_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_system_stubs_current)
|
||||||
|
else ifeq ($(LOCAL_SDK_VERSION)$(TARGET_BUILD_APPS),test_current)
|
||||||
|
LOCAL_JAVA_LIBRARIES := android_test_stubs_current $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, android_test_stubs_current)
|
||||||
|
else
|
||||||
|
# TARGET_BUILD_APPS is set. Use the modules defined in prebuilts/sdk/Android.mk.
|
||||||
|
_module_name := $(call resolve-prebuilt-sdk-module,$(LOCAL_SDK_VERSION))
|
||||||
|
LOCAL_JAVA_LIBRARIES := $(_module_name) $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, $(_module_name))
|
||||||
|
_module_name :=
|
||||||
|
endif
|
||||||
|
else
|
||||||
|
LOCAL_JAVA_LIBRARIES := core-oj core-libart ext framework $(LOCAL_JAVA_LIBRARIES)
|
||||||
|
$(full_target): PRIVATE_BOOTCLASSPATH := $(call java-lib-files, core-oj):$(call java-lib-files, core-libart)
|
||||||
|
endif # LOCAL_SDK_VERSION
|
||||||
|
LOCAL_JAVA_LIBRARIES := $(sort $(LOCAL_JAVA_LIBRARIES))
|
||||||
|
|
||||||
|
full_java_libs := $(call java-lib-files,$(LOCAL_JAVA_LIBRARIES)) $(LOCAL_CLASSPATH)
|
||||||
|
full_java_lib_deps := $(call java-lib-deps,$(LOCAL_JAVA_LIBRARIES)) $(LOCAL_CLASSPATH)
|
||||||
|
endif # !LOCAL_IS_HOST_MODULE
|
||||||
|
|
||||||
|
$(full_target): PRIVATE_CLASSPATH := $(subst $(space),:,$(full_java_libs))
|
||||||
|
$(full_target): PRIVATE_DOCLAVA_CLASSPATH := $(HOST_OUT_JAVA_LIBRARIES)/jsilver$(COMMON_JAVA_PACKAGE_SUFFIX):$(HOST_OUT_JAVA_LIBRARIES)/doclava$(COMMON_JAVA_PACKAGE_SUFFIX)
|
||||||
|
|
||||||
|
intermediates.COMMON := $(call local-intermediates-dir,COMMON)
|
||||||
|
|
||||||
|
$(full_target): PRIVATE_SOURCE_PATH := $(call normalize-path-list,$(LOCAL_DROIDDOC_SOURCE_PATH))
|
||||||
|
$(full_target): PRIVATE_JAVA_FILES := $(filter %.java,$(full_src_files))
|
||||||
|
$(full_target): PRIVATE_JAVA_FILES += $(addprefix $($(my_prefix)OUT_COMMON_INTERMEDIATES)/, $(filter %.java,$(LOCAL_INTERMEDIATE_SOURCES)))
|
||||||
|
$(full_target): PRIVATE_SOURCE_INTERMEDIATES_DIR := $(intermediates.COMMON)/src
|
||||||
|
$(full_target): PRIVATE_SRC_LIST_FILE := $(intermediates.COMMON)/droiddoc-src-list
|
||||||
|
|
||||||
|
ifneq ($(strip $(LOCAL_ADDITIONAL_JAVA_DIR)),)
|
||||||
|
$(full_target): PRIVATE_ADDITIONAL_JAVA_DIR := $(LOCAL_ADDITIONAL_JAVA_DIR)
|
||||||
|
endif
|
||||||
|
|
||||||
|
# Lists the input files for the doc build into a text file
|
||||||
|
# suitable for the @ syntax of javadoc.
|
||||||
|
# $(1): the file to create
|
||||||
|
# $(2): files to include
|
||||||
|
# $(3): list of directories to search for java files in
|
||||||
|
define prepare-doc-source-list
|
||||||
|
$(hide) mkdir -p $(dir $(1))
|
||||||
|
$(call dump-words-to-file, $(2), $(1))
|
||||||
|
$(hide) for d in $(3) ; do find $$d -name '*.java' -and -not -name '.*' >> $(1) 2> /dev/null ; done ; true
|
||||||
|
endef
|
||||||
|
|
||||||
|
##
|
||||||
|
##
|
||||||
|
## jdiff only
|
||||||
|
##
|
||||||
|
##
|
||||||
|
|
||||||
|
jdiff := \
|
||||||
|
$(HOST_JDK_TOOLS_JAR) \
|
||||||
|
$(HOST_OUT_JAVA_LIBRARIES)/jdiff$(COMMON_JAVA_PACKAGE_SUFFIX)
|
||||||
|
|
||||||
|
doclava := \
|
||||||
|
$(HOST_JDK_TOOLS_JAR) \
|
||||||
|
$(HOST_OUT_JAVA_LIBRARIES)/doclava$(COMMON_JAVA_PACKAGE_SUFFIX)
|
||||||
|
|
||||||
|
$(full_target): PRIVATE_NEWAPI := $(LOCAL_APIDIFF_NEWAPI)
|
||||||
|
$(full_target): PRIVATE_OLDAPI := $(LOCAL_APIDIFF_OLDAPI)
|
||||||
|
$(full_target): PRIVATE_OUT_DIR := $(out_dir)
|
||||||
|
$(full_target): PRIVATE_OUT_NEWAPI := $(out_dir)/current.xml
|
||||||
|
$(full_target): PRIVATE_OUT_OLDAPI := $(out_dir)/$(notdir $(basename $(LOCAL_APIDIFF_OLDAPI))).xml
|
||||||
|
$(full_target): PRIVATE_DOCLETPATH := $(HOST_OUT_JAVA_LIBRARIES)/jdiff$(COMMON_JAVA_PACKAGE_SUFFIX)
|
||||||
|
$(full_target): \
|
||||||
|
$(full_src_files) \
|
||||||
|
$(full_java_lib_deps) \
|
||||||
|
$(jdiff) \
|
||||||
|
$(doclava) \
|
||||||
|
$(OUT_DOCS)/$(LOCAL_MODULE)-docs-stubs.srcjar \
|
||||||
|
$(LOCAL_ADDITIONAL_DEPENDENCIES)
|
||||||
|
@echo Generating API diff: $(PRIVATE_OUT_DIR)
|
||||||
|
@echo Old API: $(PRIVATE_OLDAPI)
|
||||||
|
@echo New API: $(PRIVATE_NEWAPI)
|
||||||
|
@echo Old XML: $(PRIVATE_OUT_OLDAPI)
|
||||||
|
@echo New XML: $(PRIVATE_OUT_NEWAPI)
|
||||||
|
$(hide) mkdir -p $(dir $@)
|
||||||
|
@echo Converting API files to XML...
|
||||||
|
$(hide) mkdir -p $(PRIVATE_OUT_DIR)
|
||||||
|
$(hide) ( \
|
||||||
|
$(JAVA) \
|
||||||
|
$(addprefix -classpath ,$(PRIVATE_CLASSPATH):$(PRIVATE_DOCLAVA_CLASSPATH):$(PRIVATE_BOOTCLASSPATH):$(HOST_JDK_TOOLS_JAR)) \
|
||||||
|
com.google.doclava.apicheck.ApiCheck \
|
||||||
|
-convert2xml \
|
||||||
|
$(basename $(PRIVATE_NEWAPI)).txt \
|
||||||
|
$(basename $(PRIVATE_OUT_NEWAPI)).xml \
|
||||||
|
) || (rm -rf $(PRIVATE_OUT_DIR) $(PRIVATE_SRC_LIST_FILE); exit 45)
|
||||||
|
$(hide) ( \
|
||||||
|
$(JAVA) \
|
||||||
|
$(addprefix -classpath ,$(PRIVATE_CLASSPATH):$(PRIVATE_DOCLAVA_CLASSPATH):$(PRIVATE_BOOTCLASSPATH):$(HOST_JDK_TOOLS_JAR)) \
|
||||||
|
com.google.doclava.apicheck.ApiCheck \
|
||||||
|
-convert2xml \
|
||||||
|
$(basename $(PRIVATE_OLDAPI)).txt \
|
||||||
|
$(basename $(PRIVATE_OUT_OLDAPI)).xml \
|
||||||
|
) || (rm -rf $(PRIVATE_OUT_DIR) $(PRIVATE_SRC_LIST_FILE); exit 45)
|
||||||
|
@echo Running JDiff...
|
||||||
|
$(call prepare-doc-source-list,$(PRIVATE_SRC_LIST_FILE),$(PRIVATE_JAVA_FILES), \
|
||||||
|
$(PRIVATE_SOURCE_INTERMEDIATES_DIR) $(PRIVATE_ADDITIONAL_JAVA_DIR))
|
||||||
|
$(hide) ( \
|
||||||
|
$(JAVADOC) \
|
||||||
|
-encoding UTF-8 \
|
||||||
|
\@$(PRIVATE_SRC_LIST_FILE) \
|
||||||
|
-J-Xmx1600m \
|
||||||
|
-XDignore.symbol.file \
|
||||||
|
-quiet \
|
||||||
|
-doclet jdiff.JDiff \
|
||||||
|
-docletpath $(PRIVATE_DOCLETPATH) \
|
||||||
|
$(addprefix -bootclasspath ,$(PRIVATE_BOOTCLASSPATH)) \
|
||||||
|
$(addprefix -classpath ,$(PRIVATE_CLASSPATH)) \
|
||||||
|
-sourcepath $(PRIVATE_SOURCE_PATH)$(addprefix :,$(PRIVATE_CLASSPATH)) \
|
||||||
|
-d $(PRIVATE_OUT_DIR) \
|
||||||
|
-newapi $(notdir $(basename $(PRIVATE_OUT_NEWAPI))) \
|
||||||
|
-newapidir $(dir $(PRIVATE_OUT_NEWAPI)) \
|
||||||
|
-oldapi $(notdir $(basename $(PRIVATE_OUT_OLDAPI))) \
|
||||||
|
-oldapidir $(dir $(PRIVATE_OUT_OLDAPI)) \
|
||||||
|
-javadocnew ../../../reference/ \
|
||||||
|
&& touch -f $@ \
|
||||||
|
) || (rm -rf $(PRIVATE_OUT_DIR) $(PRIVATE_SRC_LIST_FILE); exit 45)
|
||||||
|
|
||||||
|
ALL_DOCS += $(full_target)
|
||||||
|
|
||||||
|
.PHONY: $(LOCAL_MODULE)-diff
|
||||||
|
$(LOCAL_MODULE)-diff : $(full_target)
|
@@ -339,11 +339,10 @@ ifneq ($(my_cc)$(my_cxx),)
|
|||||||
my_clang := false
|
my_clang := false
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
# Issue warning if LOCAL_CLANG* is set to false and the local makefile is not found
|
|
||||||
# in the exception project list.
|
|
||||||
ifeq ($(my_clang),false)
|
ifeq ($(my_clang),false)
|
||||||
ifeq ($(call find_in_local_clang_exception_projects,$(LOCAL_MODULE_MAKEFILE))$(LOCAL_IS_AUX_MODULE),)
|
# https://android-review.googlesource.com/720799
|
||||||
$(error $(LOCAL_MODULE_MAKEFILE): $(LOCAL_MODULE): LOCAL_CLANG is set to false)
|
ifneq ($(LOCAL_MODULE),bionic-compile-time-tests-g++)
|
||||||
|
$(call pretty-error,LOCAL_CLANG false is no longer supported)
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
@@ -351,10 +350,7 @@ endif
|
|||||||
# enable it unless we've specifically disabled clang above
|
# enable it unless we've specifically disabled clang above
|
||||||
ifdef LOCAL_IS_HOST_MODULE
|
ifdef LOCAL_IS_HOST_MODULE
|
||||||
ifneq ($($(my_prefix)CLANG_SUPPORTED),true)
|
ifneq ($($(my_prefix)CLANG_SUPPORTED),true)
|
||||||
ifeq ($(my_clang),true)
|
$(error $($(my_prefix)OS) requires GCC$(comma) but only Clang is supported)
|
||||||
$(call pretty-error,Clang is not yet supported for $($(my_prefix)OS) binaries)
|
|
||||||
endif
|
|
||||||
my_clang := false
|
|
||||||
else
|
else
|
||||||
ifeq ($(my_clang),)
|
ifeq ($(my_clang),)
|
||||||
my_clang := true
|
my_clang := true
|
||||||
|
@@ -18,4 +18,4 @@
|
|||||||
# (like "CRB01"). It must be a single word, and is
|
# (like "CRB01"). It must be a single word, and is
|
||||||
# capitalized by convention.
|
# capitalized by convention.
|
||||||
|
|
||||||
BUILD_ID=OC-MR1
|
BUILD_ID=PI
|
||||||
|
@@ -68,28 +68,4 @@ endif
|
|||||||
# provides to Clang (for supporting features like -ftrapv).
|
# provides to Clang (for supporting features like -ftrapv).
|
||||||
COMPILER_RT_CONFIG_EXTRA_STATIC_LIBRARIES := libcompiler_rt-extras
|
COMPILER_RT_CONFIG_EXTRA_STATIC_LIBRARIES := libcompiler_rt-extras
|
||||||
|
|
||||||
# A list of projects that are allowed to set LOCAL_CLANG to false.
|
|
||||||
# INTERNAL_LOCAL_CLANG_EXCEPTION_PROJECTS is defined later in other config.mk.
|
|
||||||
LOCAL_CLANG_EXCEPTION_PROJECTS = \
|
|
||||||
bionic/tests/ \
|
|
||||||
device/google/contexthub/ \
|
|
||||||
device/huawei/angler/ \
|
|
||||||
device/lge/bullhead/ \
|
|
||||||
external/gentoo/integration/ \
|
|
||||||
hardware/qcom/ \
|
|
||||||
test/vts/hals/camera/bullhead/ \
|
|
||||||
test/vts/hals/etc/libqdutils/ \
|
|
||||||
vendor/huawei/angler/ \
|
|
||||||
vendor/lge/bullhead/ \
|
|
||||||
$(INTERNAL_LOCAL_CLANG_EXCEPTION_PROJECTS)
|
|
||||||
|
|
||||||
# Find $1 in the exception project list.
|
|
||||||
define find_in_local_clang_exception_projects
|
|
||||||
$(subst $(space),, \
|
|
||||||
$(foreach project,$(LOCAL_CLANG_EXCEPTION_PROJECTS), \
|
|
||||||
$(if $(filter $(project)%,$(1)),$(project)) \
|
|
||||||
) \
|
|
||||||
)
|
|
||||||
endef
|
|
||||||
|
|
||||||
include $(BUILD_SYSTEM)/clang/tidy.mk
|
include $(BUILD_SYSTEM)/clang/tidy.mk
|
||||||
|
@@ -16,6 +16,8 @@ LOCAL_AIDL_INCLUDES:=
|
|||||||
LOCAL_ALLOW_UNDEFINED_SYMBOLS:=
|
LOCAL_ALLOW_UNDEFINED_SYMBOLS:=
|
||||||
LOCAL_ANNOTATION_PROCESSORS:=
|
LOCAL_ANNOTATION_PROCESSORS:=
|
||||||
LOCAL_ANNOTATION_PROCESSOR_CLASSES:=
|
LOCAL_ANNOTATION_PROCESSOR_CLASSES:=
|
||||||
|
LOCAL_APIDIFF_NEWAPI:=
|
||||||
|
LOCAL_APIDIFF_OLDAPI:=
|
||||||
LOCAL_APK_LIBRARIES:=
|
LOCAL_APK_LIBRARIES:=
|
||||||
LOCAL_ARM_MODE:=
|
LOCAL_ARM_MODE:=
|
||||||
LOCAL_ASFLAGS:=
|
LOCAL_ASFLAGS:=
|
||||||
@@ -96,6 +98,7 @@ LOCAL_FULL_LIBS_MANIFEST_FILES:=
|
|||||||
LOCAL_FULL_MANIFEST_FILE:=
|
LOCAL_FULL_MANIFEST_FILE:=
|
||||||
LOCAL_FULL_CLASSES_JACOCO_JAR:=
|
LOCAL_FULL_CLASSES_JACOCO_JAR:=
|
||||||
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR:=
|
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR:=
|
||||||
|
LOCAL_FUZZ_ENGINE:=
|
||||||
LOCAL_GCNO_FILES:=
|
LOCAL_GCNO_FILES:=
|
||||||
LOCAL_GENERATED_SOURCES:=
|
LOCAL_GENERATED_SOURCES:=
|
||||||
# Group static libraries with "-Wl,--start-group" and "-Wl,--end-group" when linking.
|
# Group static libraries with "-Wl,--start-group" and "-Wl,--end-group" when linking.
|
||||||
@@ -135,6 +138,7 @@ LOCAL_JAVA_LAYERS_FILE:=
|
|||||||
LOCAL_JAVA_LIBRARIES:=
|
LOCAL_JAVA_LIBRARIES:=
|
||||||
LOCAL_JAVA_RESOURCE_DIRS:=
|
LOCAL_JAVA_RESOURCE_DIRS:=
|
||||||
LOCAL_JAVA_RESOURCE_FILES:=
|
LOCAL_JAVA_RESOURCE_FILES:=
|
||||||
|
LOCAL_JETIFIER_ENABLED:=
|
||||||
LOCAL_JNI_SHARED_LIBRARIES:=
|
LOCAL_JNI_SHARED_LIBRARIES:=
|
||||||
LOCAL_JNI_SHARED_LIBRARIES_ABI:=
|
LOCAL_JNI_SHARED_LIBRARIES_ABI:=
|
||||||
LOCAL_LDFLAGS:=
|
LOCAL_LDFLAGS:=
|
||||||
|
@@ -147,6 +147,7 @@ BUILD_JAVA_LIBRARY:= $(BUILD_SYSTEM)/java_library.mk
|
|||||||
BUILD_STATIC_JAVA_LIBRARY:= $(BUILD_SYSTEM)/static_java_library.mk
|
BUILD_STATIC_JAVA_LIBRARY:= $(BUILD_SYSTEM)/static_java_library.mk
|
||||||
BUILD_HOST_JAVA_LIBRARY:= $(BUILD_SYSTEM)/host_java_library.mk
|
BUILD_HOST_JAVA_LIBRARY:= $(BUILD_SYSTEM)/host_java_library.mk
|
||||||
BUILD_DROIDDOC:= $(BUILD_SYSTEM)/droiddoc.mk
|
BUILD_DROIDDOC:= $(BUILD_SYSTEM)/droiddoc.mk
|
||||||
|
BUILD_APIDIFF:= $(BUILD_SYSTEM)/apidiff.mk
|
||||||
BUILD_COPY_HEADERS := $(BUILD_SYSTEM)/copy_headers.mk
|
BUILD_COPY_HEADERS := $(BUILD_SYSTEM)/copy_headers.mk
|
||||||
BUILD_NATIVE_TEST := $(BUILD_SYSTEM)/native_test.mk
|
BUILD_NATIVE_TEST := $(BUILD_SYSTEM)/native_test.mk
|
||||||
BUILD_NATIVE_BENCHMARK := $(BUILD_SYSTEM)/native_benchmark.mk
|
BUILD_NATIVE_BENCHMARK := $(BUILD_SYSTEM)/native_benchmark.mk
|
||||||
@@ -208,6 +209,11 @@ else
|
|||||||
JAVA_TMPDIR_ARG :=
|
JAVA_TMPDIR_ARG :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
# Default to remove the org.apache.http.legacy from bootclasspath
|
||||||
|
ifeq ($(REMOVE_OAHL_FROM_BCP),)
|
||||||
|
REMOVE_OAHL_FROM_BCP := true
|
||||||
|
endif
|
||||||
|
|
||||||
# ###############################################################
|
# ###############################################################
|
||||||
# Broken build defaults
|
# Broken build defaults
|
||||||
# ###############################################################
|
# ###############################################################
|
||||||
@@ -725,6 +731,8 @@ CLASS2GREYLIST := $(HOST_OUT_EXECUTABLES)/class2greylist
|
|||||||
FINDBUGS_DIR := external/owasp/sanitizer/tools/findbugs/bin
|
FINDBUGS_DIR := external/owasp/sanitizer/tools/findbugs/bin
|
||||||
FINDBUGS := $(FINDBUGS_DIR)/findbugs
|
FINDBUGS := $(FINDBUGS_DIR)/findbugs
|
||||||
|
|
||||||
|
JETIFIER := prebuilts/sdk/tools/jetifier/jetifier-standalone/bin/jetifier-standalone
|
||||||
|
|
||||||
COLUMN:= column
|
COLUMN:= column
|
||||||
|
|
||||||
USE_OPENJDK9 := true
|
USE_OPENJDK9 := true
|
||||||
@@ -839,6 +847,21 @@ $(KATI_obsolete_var PRODUCT_USE_VNDK_OVERRIDE,Use PRODUCT_USE_VNDK instead)
|
|||||||
.KATI_READONLY := \
|
.KATI_READONLY := \
|
||||||
PRODUCT_USE_VNDK
|
PRODUCT_USE_VNDK
|
||||||
|
|
||||||
|
# Set BOARD_SYSTEMSDK_VERSIONS to the latest SystemSDK version starting from P-launching
|
||||||
|
# devices if unset.
|
||||||
|
ifndef BOARD_SYSTEMSDK_VERSIONS
|
||||||
|
ifdef PRODUCT_SHIPPING_API_LEVEL
|
||||||
|
ifneq ($(call math_gt_or_eq,$(PRODUCT_SHIPPING_API_LEVEL),28),)
|
||||||
|
ifeq (REL,$(PLATFORM_VERSION_CODENAME))
|
||||||
|
BOARD_SYSTEMSDK_VERSIONS := $(PLATFORM_SDK_VERSION)
|
||||||
|
else
|
||||||
|
BOARD_SYSTEMSDK_VERSIONS := $(PLATFORM_VERSION_CODENAME)
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
ifdef PRODUCT_SHIPPING_API_LEVEL
|
ifdef PRODUCT_SHIPPING_API_LEVEL
|
||||||
ifneq ($(call math_gt_or_eq,$(PRODUCT_SHIPPING_API_LEVEL),27),)
|
ifneq ($(call math_gt_or_eq,$(PRODUCT_SHIPPING_API_LEVEL),27),)
|
||||||
ifneq ($(TARGET_USES_MKE2FS),true)
|
ifneq ($(TARGET_USES_MKE2FS),true)
|
||||||
@@ -884,7 +907,7 @@ BUILD_DATETIME_FROM_FILE := $$(cat $(BUILD_DATETIME_FILE))
|
|||||||
# is made which breaks compatibility with the previous platform sepolicy version,
|
# is made which breaks compatibility with the previous platform sepolicy version,
|
||||||
# not just on every increase in PLATFORM_SDK_VERSION. The minor version should
|
# not just on every increase in PLATFORM_SDK_VERSION. The minor version should
|
||||||
# be reset to 0 on every bump of the PLATFORM_SDK_VERSION.
|
# be reset to 0 on every bump of the PLATFORM_SDK_VERSION.
|
||||||
sepolicy_major_vers := 27
|
sepolicy_major_vers := 28
|
||||||
sepolicy_minor_vers := 0
|
sepolicy_minor_vers := 0
|
||||||
|
|
||||||
ifneq ($(sepolicy_major_vers), $(PLATFORM_SDK_VERSION))
|
ifneq ($(sepolicy_major_vers), $(PLATFORM_SDK_VERSION))
|
||||||
@@ -1088,6 +1111,19 @@ TARGET_AVAIALBLE_SDK_VERSIONS := $(call numerically_sort,$(TARGET_AVAILABLE_SDK_
|
|||||||
TARGET_SDK_VERSIONS_WITHOUT_JAVA_18_SUPPORT := $(call numbers_less_than,24,$(TARGET_AVAILABLE_SDK_VERSIONS))
|
TARGET_SDK_VERSIONS_WITHOUT_JAVA_18_SUPPORT := $(call numbers_less_than,24,$(TARGET_AVAILABLE_SDK_VERSIONS))
|
||||||
TARGET_SDK_VERSIONS_WITHOUT_JAVA_19_SUPPORT := $(call numbers_less_than,27,$(TARGET_AVAILABLE_SDK_VERSIONS))
|
TARGET_SDK_VERSIONS_WITHOUT_JAVA_19_SUPPORT := $(call numbers_less_than,27,$(TARGET_AVAILABLE_SDK_VERSIONS))
|
||||||
|
|
||||||
|
ifndef INTERNAL_PLATFORM_PRIVATE_API_FILE
|
||||||
|
INTERNAL_PLATFORM_PRIVATE_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/private.txt
|
||||||
|
endif
|
||||||
|
ifndef INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE
|
||||||
|
INTERNAL_PLATFORM_PRIVATE_DEX_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/private-dex.txt
|
||||||
|
endif
|
||||||
|
ifndef INTERNAL_PLATFORM_SYSTEM_PRIVATE_API_FILE
|
||||||
|
INTERNAL_PLATFORM_SYSTEM_PRIVATE_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/system-private.txt
|
||||||
|
endif
|
||||||
|
ifndef INTERNAL_PLATFORM_SYSTEM_PRIVATE_DEX_API_FILE
|
||||||
|
INTERNAL_PLATFORM_SYSTEM_PRIVATE_DEX_API_FILE := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/system-private-dex.txt
|
||||||
|
endif
|
||||||
|
|
||||||
INTERNAL_PLATFORM_HIDDENAPI_PUBLIC_LIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-public-list.txt
|
INTERNAL_PLATFORM_HIDDENAPI_PUBLIC_LIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-public-list.txt
|
||||||
INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-private-list.txt
|
INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-private-list.txt
|
||||||
INTERNAL_PLATFORM_HIDDENAPI_LIGHT_GREYLIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-light-greylist.txt
|
INTERNAL_PLATFORM_HIDDENAPI_LIGHT_GREYLIST := $(TARGET_OUT_COMMON_INTERMEDIATES)/PACKAGING/hiddenapi-light-greylist.txt
|
||||||
|
@@ -108,15 +108,17 @@ ifeq ($(LOCAL_SANITIZE),never)
|
|||||||
my_sanitize_diag :=
|
my_sanitize_diag :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Enable CFI in included paths.
|
# Enable CFI in included paths (for Arm64 only).
|
||||||
ifeq ($(filter cfi, $(my_sanitize)),)
|
ifeq ($(filter cfi, $(my_sanitize)),)
|
||||||
combined_include_paths := $(CFI_INCLUDE_PATHS) \
|
ifneq ($(filter arm64,$(TARGET_$(LOCAL_2ND_ARCH_VAR_PREFIX)ARCH)),)
|
||||||
$(PRODUCT_CFI_INCLUDE_PATHS)
|
combined_include_paths := $(CFI_INCLUDE_PATHS) \
|
||||||
|
$(PRODUCT_CFI_INCLUDE_PATHS)
|
||||||
|
|
||||||
ifneq ($(strip $(foreach dir,$(subst $(comma),$(space),$(combined_include_paths)),\
|
ifneq ($(strip $(foreach dir,$(subst $(comma),$(space),$(combined_include_paths)),\
|
||||||
$(filter $(dir)%,$(LOCAL_PATH)))),)
|
$(filter $(dir)%,$(LOCAL_PATH)))),)
|
||||||
my_sanitize := cfi $(my_sanitize)
|
my_sanitize := cfi $(my_sanitize)
|
||||||
my_sanitize_diag := cfi $(my_sanitize_diag)
|
my_sanitize_diag := cfi $(my_sanitize_diag)
|
||||||
|
endif
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@@ -2911,15 +2911,13 @@ endef
|
|||||||
###########################################################
|
###########################################################
|
||||||
ifdef TARGET_OPENJDK9
|
ifdef TARGET_OPENJDK9
|
||||||
define transform-jar-to-proguard
|
define transform-jar-to-proguard
|
||||||
@echo Skipping Proguard: $<$(PRIVATE_PROGUARD_INJAR_FILTERS) $@
|
@echo Skipping Proguard: $< $@
|
||||||
$(hide) cp '$<' $@
|
$(hide) cp '$<' $@
|
||||||
endef
|
endef
|
||||||
else
|
else
|
||||||
define transform-jar-to-proguard
|
define transform-jar-to-proguard
|
||||||
@echo Proguard: $@
|
@echo Proguard: $@
|
||||||
$(hide) $(PROGUARD) -injars '$<$(PRIVATE_PROGUARD_INJAR_FILTERS)' \
|
$(hide) $(PROGUARD) -injars $< -outjars $@ $(PRIVATE_PROGUARD_FLAGS) \
|
||||||
-outjars $@ \
|
|
||||||
$(PRIVATE_PROGUARD_FLAGS) \
|
|
||||||
$(addprefix -injars , $(PRIVATE_EXTRA_INPUT_JAR))
|
$(addprefix -injars , $(PRIVATE_EXTRA_INPUT_JAR))
|
||||||
endef
|
endef
|
||||||
endif
|
endif
|
||||||
@@ -2930,7 +2928,7 @@ endif
|
|||||||
###########################################################
|
###########################################################
|
||||||
define transform-jar-to-dex-r8
|
define transform-jar-to-dex-r8
|
||||||
@echo R8: $@
|
@echo R8: $@
|
||||||
$(hide) $(R8_COMPAT_PROGUARD) -injars '$<$(PRIVATE_PROGUARD_INJAR_FILTERS)' \
|
$(hide) $(R8_COMPAT_PROGUARD) -injars '$<' \
|
||||||
--min-api $(PRIVATE_MIN_SDK_VERSION) \
|
--min-api $(PRIVATE_MIN_SDK_VERSION) \
|
||||||
--force-proguard-compatibility --output $(subst classes.dex,,$@) \
|
--force-proguard-compatibility --output $(subst classes.dex,,$@) \
|
||||||
$(PRIVATE_PROGUARD_FLAGS) \
|
$(PRIVATE_PROGUARD_FLAGS) \
|
||||||
|
@@ -124,3 +124,20 @@ $(INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST): $(HIDDENAPI) $(HIDDENAPI_STUBS) \
|
|||||||
--stub-classpath=$(call normalize-path-list, $(PRIVATE_HIDDENAPI_STUBS_TEST)) \
|
--stub-classpath=$(call normalize-path-list, $(PRIVATE_HIDDENAPI_STUBS_TEST)) \
|
||||||
--out-public=$(INTERNAL_PLATFORM_HIDDENAPI_PUBLIC_LIST) \
|
--out-public=$(INTERNAL_PLATFORM_HIDDENAPI_PUBLIC_LIST) \
|
||||||
--out-private=$(INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST)
|
--out-private=$(INTERNAL_PLATFORM_HIDDENAPI_PRIVATE_LIST)
|
||||||
|
|
||||||
|
ifeq ($(PRODUCT_DIST_BOOT_AND_SYSTEM_JARS),true)
|
||||||
|
boot_profile_jars_zip := $(PRODUCT_OUT)/boot_profile_jars.zip
|
||||||
|
all_boot_jars := \
|
||||||
|
$(foreach m,$(DEXPREOPT_BOOT_JARS_MODULES),$(PRODUCT_OUT)/system/framework/$(m).jar) \
|
||||||
|
$(foreach m,$(PRODUCT_SYSTEM_SERVER_JARS),$(PRODUCT_OUT)/system/framework/$(m).jar)
|
||||||
|
|
||||||
|
$(boot_profile_jars_zip): PRIVATE_JARS := $(all_boot_jars)
|
||||||
|
$(boot_profile_jars_zip): $(all_boot_jars) $(SOONG_ZIP)
|
||||||
|
echo "Create boot profiles package: $@"
|
||||||
|
rm -f $@
|
||||||
|
$(SOONG_ZIP) -o $@ -C $(PRODUCT_OUT) $(PRIVATE_JARS)
|
||||||
|
|
||||||
|
droidcore: $(boot_profile_jars_zip)
|
||||||
|
|
||||||
|
$(call dist-for-goals, droidcore, $(boot_profile_jars_zip))
|
||||||
|
endif
|
||||||
|
@@ -126,13 +126,9 @@ endif
|
|||||||
|
|
||||||
ifeq (true,$(my_process_profile))
|
ifeq (true,$(my_process_profile))
|
||||||
|
|
||||||
ifdef LOCAL_VENDOR_MODULE
|
|
||||||
$(call pretty-error, Internal error: profiles are not supported for vendor modules)
|
|
||||||
else
|
|
||||||
ifeq (,$(LOCAL_DEX_PREOPT_APP_IMAGE))
|
ifeq (,$(LOCAL_DEX_PREOPT_APP_IMAGE))
|
||||||
LOCAL_DEX_PREOPT_APP_IMAGE := true
|
LOCAL_DEX_PREOPT_APP_IMAGE := true
|
||||||
endif
|
endif
|
||||||
endif
|
|
||||||
|
|
||||||
ifndef LOCAL_DEX_PREOPT_PROFILE
|
ifndef LOCAL_DEX_PREOPT_PROFILE
|
||||||
$(call pretty-error,Must have specified class listing (LOCAL_DEX_PREOPT_PROFILE))
|
$(call pretty-error,Must have specified class listing (LOCAL_DEX_PREOPT_PROFILE))
|
||||||
@@ -191,6 +187,12 @@ endif
|
|||||||
ifdef LOCAL_DEX_PREOPT
|
ifdef LOCAL_DEX_PREOPT
|
||||||
|
|
||||||
dexpreopt_boot_jar_module := $(filter $(DEXPREOPT_BOOT_JARS_MODULES),$(LOCAL_MODULE))
|
dexpreopt_boot_jar_module := $(filter $(DEXPREOPT_BOOT_JARS_MODULES),$(LOCAL_MODULE))
|
||||||
|
|
||||||
|
# Filter org.apache.http.legacy.boot.
|
||||||
|
ifeq ($(dexpreopt_boot_jar_module),org.apache.http.legacy.boot)
|
||||||
|
dexpreopt_boot_jar_module :=
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef dexpreopt_boot_jar_module
|
ifdef dexpreopt_boot_jar_module
|
||||||
# For libart, the boot jars' odex files are replaced by $(DEFAULT_DEX_PREOPT_INSTALLED_IMAGE).
|
# For libart, the boot jars' odex files are replaced by $(DEFAULT_DEX_PREOPT_INSTALLED_IMAGE).
|
||||||
# We use this installed_odex trick to get boot.art installed.
|
# We use this installed_odex trick to get boot.art installed.
|
||||||
|
@@ -221,7 +221,7 @@ $(full_target): \
|
|||||||
$(PRIVATE_DROIDDOC_OPTIONS) \
|
$(PRIVATE_DROIDDOC_OPTIONS) \
|
||||||
$(addprefix -stubs ,$(PRIVATE_STUB_OUT_DIR)) \
|
$(addprefix -stubs ,$(PRIVATE_STUB_OUT_DIR)) \
|
||||||
&& touch -f $@ \
|
&& touch -f $@ \
|
||||||
) || (rm -rf $(PRIVATE_OUT_DIR) $(PRIVATE_SRC_LIST_FILE); exit 45)
|
) || (cat $(PRIVATE_SRC_LIST_FILE) $(PRIVATE_SRCJAR_LIST_FILE) && rm -rf $(PRIVATE_OUT_DIR) $(PRIVATE_SRC_LIST_FILE); exit 45)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -8,8 +8,50 @@ ifdef LOCAL_SDK_VERSION
|
|||||||
$(error $(LOCAL_PATH): $(LOCAL_MODULE): NDK fuzz tests are not supported.)
|
$(error $(LOCAL_PATH): $(LOCAL_MODULE): NDK fuzz tests are not supported.)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
my_fuzzer:=libFuzzer
|
||||||
|
ifdef LOCAL_FUZZ_ENGINE
|
||||||
|
my_fuzzer:=$(LOCAL_FUZZ_ENGINE)
|
||||||
|
else ifdef TARGET_FUZZ_ENGINE
|
||||||
|
my_fuzzer:=$(TARGET_FUZZ_ENGINE)
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
LOCAL_CFLAGS += -fsanitize-coverage=trace-pc-guard,indirect-calls,trace-cmp
|
LOCAL_CFLAGS += -fsanitize-coverage=trace-pc-guard,indirect-calls,trace-cmp
|
||||||
|
|
||||||
|
ifeq ($(my_fuzzer),libFuzzer)
|
||||||
LOCAL_STATIC_LIBRARIES += libFuzzer
|
LOCAL_STATIC_LIBRARIES += libFuzzer
|
||||||
|
else ifeq ($(my_fuzzer),honggfuzz)
|
||||||
|
LOCAL_STATIC_LIBRARIES += honggfuzz_libhfuzz
|
||||||
|
LOCAL_REQUIRED_MODULES += honggfuzz
|
||||||
|
LOCAL_LDFLAGS += \
|
||||||
|
"-Wl,--wrap=strcmp" \
|
||||||
|
"-Wl,--wrap=strcasecmp" \
|
||||||
|
"-Wl,--wrap=strncmp" \
|
||||||
|
"-Wl,--wrap=strncasecmp" \
|
||||||
|
"-Wl,--wrap=strstr" \
|
||||||
|
"-Wl,--wrap=strcasestr" \
|
||||||
|
"-Wl,--wrap=memcmp" \
|
||||||
|
"-Wl,--wrap=bcmp" \
|
||||||
|
"-Wl,--wrap=memmem" \
|
||||||
|
"-Wl,--wrap=ap_cstr_casecmp" \
|
||||||
|
"-Wl,--wrap=ap_cstr_casecmpn" \
|
||||||
|
"-Wl,--wrap=ap_strcasestr" \
|
||||||
|
"-Wl,--wrap=apr_cstr_casecmp" \
|
||||||
|
"-Wl,--wrap=apr_cstr_casecmpn" \
|
||||||
|
"-Wl,--wrap=CRYPTO_memcmp" \
|
||||||
|
"-Wl,--wrap=OPENSSL_memcmp" \
|
||||||
|
"-Wl,--wrap=OPENSSL_strcasecmp" \
|
||||||
|
"-Wl,--wrap=OPENSSL_strncasecmp" \
|
||||||
|
"-Wl,--wrap=xmlStrncmp" \
|
||||||
|
"-Wl,--wrap=xmlStrcmp" \
|
||||||
|
"-Wl,--wrap=xmlStrEqual" \
|
||||||
|
"-Wl,--wrap=xmlStrcasecmp" \
|
||||||
|
"-Wl,--wrap=xmlStrncasecmp" \
|
||||||
|
"-Wl,--wrap=xmlStrstr" \
|
||||||
|
"-Wl,--wrap=xmlStrcasestr"
|
||||||
|
else
|
||||||
|
$(call pretty-error, Unknown fuzz engine $(my_fuzzer))
|
||||||
|
endif
|
||||||
|
|
||||||
ifdef LOCAL_MODULE_PATH
|
ifdef LOCAL_MODULE_PATH
|
||||||
$(error $(LOCAL_PATH): Do not set LOCAL_MODULE_PATH when building test $(LOCAL_MODULE))
|
$(error $(LOCAL_PATH): Do not set LOCAL_MODULE_PATH when building test $(LOCAL_MODULE))
|
||||||
@@ -32,4 +74,8 @@ LOCAL_MULTILIB := both
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifndef LOCAL_STRIP_MODULE
|
||||||
|
LOCAL_STRIP_MODULE := keep_symbols
|
||||||
|
endif
|
||||||
|
|
||||||
include $(BUILD_EXECUTABLE)
|
include $(BUILD_EXECUTABLE)
|
||||||
|
@@ -114,9 +114,9 @@ full_classes_jarjar_jar := $(full_classes_combined_jar)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
#######################################
|
||||||
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR := $(full_classes_jarjar_jar)
|
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR := $(full_classes_jarjar_jar)
|
||||||
|
|
||||||
#######################################
|
|
||||||
include $(BUILD_SYSTEM)/jacoco.mk
|
include $(BUILD_SYSTEM)/jacoco.mk
|
||||||
#######################################
|
#######################################
|
||||||
|
|
||||||
|
24
core/java.mk
@@ -359,9 +359,9 @@ endif
|
|||||||
|
|
||||||
$(eval $(call copy-one-file,$(full_classes_jarjar_jar),$(full_classes_jar)))
|
$(eval $(call copy-one-file,$(full_classes_jarjar_jar),$(full_classes_jar)))
|
||||||
|
|
||||||
|
#######################################
|
||||||
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR := $(full_classes_jar)
|
LOCAL_FULL_CLASSES_PRE_JACOCO_JAR := $(full_classes_jar)
|
||||||
|
|
||||||
#######################################
|
|
||||||
include $(BUILD_SYSTEM)/jacoco.mk
|
include $(BUILD_SYSTEM)/jacoco.mk
|
||||||
#######################################
|
#######################################
|
||||||
|
|
||||||
@@ -405,7 +405,12 @@ else
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
legacy_proguard_flags := $(addprefix -libraryjars ,$(my_proguard_sdk_raise) \
|
ifeq ($(USE_R8),true)
|
||||||
|
proguard_jars_prefix := -libraryjars
|
||||||
|
else
|
||||||
|
proguard_jars_prefix := -systemjars
|
||||||
|
endif
|
||||||
|
legacy_proguard_flags := $(addprefix $(proguard_jars_prefix) ,$(my_proguard_sdk_raise) \
|
||||||
$(filter-out $(my_proguard_sdk_raise), \
|
$(filter-out $(my_proguard_sdk_raise), \
|
||||||
$(full_java_bootclasspath_libs) \
|
$(full_java_bootclasspath_libs) \
|
||||||
$(full_shared_java_header_libs)))
|
$(full_shared_java_header_libs)))
|
||||||
@@ -483,19 +488,6 @@ else
|
|||||||
extra_input_jar :=
|
extra_input_jar :=
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# If building against the current SDK version then filter out the junit,
|
|
||||||
# android.test and c.a.i.u.Predicate classes that are to be removed from
|
|
||||||
# the Android API as part of b/30188076 but which are still present in
|
|
||||||
# the Android API. This is to allow changes to be made to the build to
|
|
||||||
# statically include those classes into the application without
|
|
||||||
# simultaneously removing those classes from the API.
|
|
||||||
proguard_injar_filters :=
|
|
||||||
ifdef LOCAL_SDK_VERSION
|
|
||||||
ifeq (,$(filter-out current system_current test_current, $(LOCAL_SDK_VERSION)))
|
|
||||||
proguard_injar_filters := (!junit/framework/**,!junit/runner/**,!junit/textui/**,!android/test/**,!com/android/internal/util/*)
|
|
||||||
endif
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifneq ($(filter obfuscation,$(LOCAL_PROGUARD_ENABLED)),)
|
ifneq ($(filter obfuscation,$(LOCAL_PROGUARD_ENABLED)),)
|
||||||
ifneq ($(LOCAL_USE_R8),true)
|
ifneq ($(LOCAL_USE_R8),true)
|
||||||
$(full_classes_proguard_jar): .KATI_IMPLICIT_OUTPUTS := $(proguard_dictionary) $(proguard_configuration)
|
$(full_classes_proguard_jar): .KATI_IMPLICIT_OUTPUTS := $(proguard_dictionary) $(proguard_configuration)
|
||||||
@@ -508,7 +500,6 @@ endif
|
|||||||
ifneq ($(LOCAL_USE_R8),true)
|
ifneq ($(LOCAL_USE_R8),true)
|
||||||
# Changes to these dependencies need to be replicated below when using R8
|
# Changes to these dependencies need to be replicated below when using R8
|
||||||
# instead of Proguard + dx.
|
# instead of Proguard + dx.
|
||||||
$(full_classes_proguard_jar): PRIVATE_PROGUARD_INJAR_FILTERS := $(proguard_injar_filters)
|
|
||||||
$(full_classes_proguard_jar): PRIVATE_EXTRA_INPUT_JAR := $(extra_input_jar)
|
$(full_classes_proguard_jar): PRIVATE_EXTRA_INPUT_JAR := $(extra_input_jar)
|
||||||
$(full_classes_proguard_jar): PRIVATE_PROGUARD_FLAGS := $(legacy_proguard_flags) $(common_proguard_flags) $(LOCAL_PROGUARD_FLAGS)
|
$(full_classes_proguard_jar): PRIVATE_PROGUARD_FLAGS := $(legacy_proguard_flags) $(common_proguard_flags) $(LOCAL_PROGUARD_FLAGS)
|
||||||
$(full_classes_proguard_jar) : $(full_classes_pre_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(proguard_flag_files) $(legacy_proguard_lib_deps) | $(PROGUARD)
|
$(full_classes_proguard_jar) : $(full_classes_pre_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(proguard_flag_files) $(legacy_proguard_lib_deps) | $(PROGUARD)
|
||||||
@@ -533,7 +524,6 @@ ifeq ($(LOCAL_USE_R8),true)
|
|||||||
# Proguard + dx. They are used for the generated dex when using R8, as
|
# Proguard + dx. They are used for the generated dex when using R8, as
|
||||||
# R8 does Proguard + dx
|
# R8 does Proguard + dx
|
||||||
my_r8 := true
|
my_r8 := true
|
||||||
$(built_dex_intermediate): PRIVATE_PROGUARD_INJAR_FILTERS := $(proguard_injar_filters)
|
|
||||||
$(built_dex_intermediate): PRIVATE_EXTRA_INPUT_JAR := $(extra_input_jar)
|
$(built_dex_intermediate): PRIVATE_EXTRA_INPUT_JAR := $(extra_input_jar)
|
||||||
$(built_dex_intermediate): PRIVATE_PROGUARD_FLAGS := $(legacy_proguard_flags) $(common_proguard_flags) $(LOCAL_PROGUARD_FLAGS)
|
$(built_dex_intermediate): PRIVATE_PROGUARD_FLAGS := $(legacy_proguard_flags) $(common_proguard_flags) $(LOCAL_PROGUARD_FLAGS)
|
||||||
$(built_dex_intermediate) : $(full_classes_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(proguard_flag_files) $(legacy_proguard_lib_deps) $(R8_COMPAT_PROGUARD)
|
$(built_dex_intermediate) : $(full_classes_proguard_jar) $(extra_input_jar) $(my_proguard_sdk_raise) $(common_proguard_flag_files) $(proguard_flag_files) $(legacy_proguard_lib_deps) $(R8_COMPAT_PROGUARD)
|
||||||
|
@@ -493,11 +493,11 @@ ALL_MODULES.$(my_register_name).INTERMEDIATE_SOURCE_DIR := \
|
|||||||
ifndef LOCAL_IS_HOST_MODULE
|
ifndef LOCAL_IS_HOST_MODULE
|
||||||
ifeq ($(LOCAL_SDK_VERSION),system_current)
|
ifeq ($(LOCAL_SDK_VERSION),system_current)
|
||||||
my_link_type := java:system
|
my_link_type := java:system
|
||||||
my_warn_types := java:platform
|
my_warn_types :=
|
||||||
my_allowed_types := java:sdk java:system java:core
|
my_allowed_types := java:sdk java:system java:core
|
||||||
else ifneq (,$(call has-system-sdk-version,$(LOCAL_SDK_VERSION)))
|
else ifneq (,$(call has-system-sdk-version,$(LOCAL_SDK_VERSION)))
|
||||||
my_link_type := java:system
|
my_link_type := java:system
|
||||||
my_warn_types := java:platform
|
my_warn_types :=
|
||||||
my_allowed_types := java:sdk java:system java:core
|
my_allowed_types := java:sdk java:system java:core
|
||||||
else ifeq ($(LOCAL_SDK_VERSION),core_current)
|
else ifeq ($(LOCAL_SDK_VERSION),core_current)
|
||||||
my_link_type := java:core
|
my_link_type := java:core
|
||||||
@@ -505,7 +505,7 @@ my_warn_types :=
|
|||||||
my_allowed_types := java:core
|
my_allowed_types := java:core
|
||||||
else ifneq ($(LOCAL_SDK_VERSION),)
|
else ifneq ($(LOCAL_SDK_VERSION),)
|
||||||
my_link_type := java:sdk
|
my_link_type := java:sdk
|
||||||
my_warn_types := java:system java:platform
|
my_warn_types :=
|
||||||
my_allowed_types := java:sdk java:core
|
my_allowed_types := java:sdk java:core
|
||||||
else
|
else
|
||||||
my_link_type := java:platform
|
my_link_type := java:platform
|
||||||
|
34
core/jetifier.mk
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
#
|
||||||
|
# Copyright (C) 2018 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# This file sets up the running of Jetifier
|
||||||
|
|
||||||
|
# now add the rule to run jetifier
|
||||||
|
ifeq ($(strip $(LOCAL_JETIFIER_ENABLED)),true)
|
||||||
|
my_jetifier_input_path := $(LOCAL_JETIFIER_INPUT_FILE)
|
||||||
|
my_files := $(intermediates.COMMON)/jetifier
|
||||||
|
my_jetifier_output_path := $(my_files)/jetified-$(notdir $(my_jetifier_input_path))
|
||||||
|
|
||||||
|
$(my_jetifier_output_path) : $(my_jetifier_input_path) $(JETIFIER)
|
||||||
|
rm -rf $@
|
||||||
|
$(JETIFIER) -outputfile $@ -i $<
|
||||||
|
|
||||||
|
LOCAL_JETIFIER_OUTPUT_FILE := $(my_jetifier_output_path)
|
||||||
|
LOCAL_INTERMEDIATE_TARGETS += $(LOCAL_JETIFIER_OUTPUT_FILE)
|
||||||
|
else
|
||||||
|
LOCAL_JETIFIER_OUTPUT_FILE := $(LOCAL_JETIFIER_INPUT_FILE)
|
||||||
|
endif
|
||||||
|
|
@@ -96,6 +96,10 @@ $(shell mkdir -p $(EMPTY_DIRECTORY) && rm -rf $(EMPTY_DIRECTORY)/*)
|
|||||||
-include tools/tradefederation/build/suites/device-tests/config.mk
|
-include tools/tradefederation/build/suites/device-tests/config.mk
|
||||||
# general-tests-specific-config.
|
# general-tests-specific-config.
|
||||||
-include tools/tradefederation/build/suites/general-tests/config.mk
|
-include tools/tradefederation/build/suites/general-tests/config.mk
|
||||||
|
# STS-specific config.
|
||||||
|
-include test/sts/tools/sts-tradefed/build/config.mk
|
||||||
|
# CTS-Instant-specific config
|
||||||
|
-include test/suite_harness/tools/cts-instant-tradefed/build/config.mk
|
||||||
|
|
||||||
# Clean rules
|
# Clean rules
|
||||||
.PHONY: clean-dex-files
|
.PHONY: clean-dex-files
|
||||||
|
@@ -14,7 +14,6 @@ ifneq (,$(filter platform-java, $(MAKECMDGOALS))$(PDK_FUSION_PLATFORM_ZIP)$(PDK_
|
|||||||
PDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR += \
|
PDK_PLATFORM_JAVA_ZIP_JAVA_TARGET_LIB_DIR += \
|
||||||
target/common/obj/JAVA_LIBRARIES/android.test.runner_intermediates \
|
target/common/obj/JAVA_LIBRARIES/android.test.runner_intermediates \
|
||||||
target/common/obj/JAVA_LIBRARIES/android.hidl.base-V1.0-java_intermediates \
|
target/common/obj/JAVA_LIBRARIES/android.hidl.base-V1.0-java_intermediates \
|
||||||
target/common/obj/JAVA_LIBRARIES/android.hidl.base-V1.0-java-static_intermediates \
|
|
||||||
target/common/obj/JAVA_LIBRARIES/android.hidl.manager-V1.0-java_intermediates \
|
target/common/obj/JAVA_LIBRARIES/android.hidl.manager-V1.0-java_intermediates \
|
||||||
target/common/obj/JAVA_LIBRARIES/android-common_intermediates \
|
target/common/obj/JAVA_LIBRARIES/android-common_intermediates \
|
||||||
target/common/obj/JAVA_LIBRARIES/android-ex-camera2_intermediates \
|
target/common/obj/JAVA_LIBRARIES/android-ex-camera2_intermediates \
|
||||||
|
@@ -588,6 +588,12 @@ else # ! prebuilt_module_is_dex_javalib
|
|||||||
my_src_aar := $(filter %.aar, $(my_prebuilt_src_file))
|
my_src_aar := $(filter %.aar, $(my_prebuilt_src_file))
|
||||||
ifneq ($(my_src_aar),)
|
ifneq ($(my_src_aar),)
|
||||||
# This is .aar file, archive of classes.jar and Android resources.
|
# This is .aar file, archive of classes.jar and Android resources.
|
||||||
|
|
||||||
|
# run Jetifier if needed
|
||||||
|
LOCAL_JETIFIER_INPUT_FILE := $(my_src_aar)
|
||||||
|
include $(BUILD_SYSTEM)/jetifier.mk
|
||||||
|
my_src_aar := $(LOCAL_JETIFIER_OUTPUT_FILE)
|
||||||
|
|
||||||
my_src_jar := $(intermediates.COMMON)/aar/classes.jar
|
my_src_jar := $(intermediates.COMMON)/aar/classes.jar
|
||||||
my_src_proguard_options := $(intermediates.COMMON)/aar/proguard.txt
|
my_src_proguard_options := $(intermediates.COMMON)/aar/proguard.txt
|
||||||
my_src_android_manifest := $(intermediates.COMMON)/aar/AndroidManifest.xml
|
my_src_android_manifest := $(intermediates.COMMON)/aar/AndroidManifest.xml
|
||||||
@@ -608,6 +614,13 @@ my_prebuilt_android_manifest := $(intermediates.COMMON)/manifest/AndroidManifest
|
|||||||
$(eval $(call copy-one-file,$(my_src_android_manifest),$(my_prebuilt_android_manifest)))
|
$(eval $(call copy-one-file,$(my_src_android_manifest),$(my_prebuilt_android_manifest)))
|
||||||
$(call add-dependency,$(LOCAL_BUILT_MODULE),$(my_prebuilt_android_manifest))
|
$(call add-dependency,$(LOCAL_BUILT_MODULE),$(my_prebuilt_android_manifest))
|
||||||
|
|
||||||
|
else
|
||||||
|
|
||||||
|
# run Jetifier if needed
|
||||||
|
LOCAL_JETIFIER_INPUT_FILE := $(my_src_jar)
|
||||||
|
include $(BUILD_SYSTEM)/jetifier.mk
|
||||||
|
my_src_jar := $(LOCAL_JETIFIER_OUTPUT_FILE)
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
$(common_classes_jar) : $(my_src_jar)
|
$(common_classes_jar) : $(my_src_jar)
|
||||||
|
@@ -8,11 +8,6 @@
|
|||||||
|
|
||||||
whitelisted_modules := framework-res__auto_generated_rro
|
whitelisted_modules := framework-res__auto_generated_rro
|
||||||
|
|
||||||
|
|
||||||
ifeq (,$(JAVA_SDK_ENFORCEMENT_ERROR))
|
|
||||||
JAVA_SDK_ENFORCEMENT_ERROR := APPS
|
|
||||||
endif
|
|
||||||
|
|
||||||
ifeq ($(LOCAL_SDK_VERSION)$(LOCAL_PRIVATE_PLATFORM_APIS),)
|
ifeq ($(LOCAL_SDK_VERSION)$(LOCAL_PRIVATE_PLATFORM_APIS),)
|
||||||
ifeq (,$(filter $(LOCAL_MODULE),$(whitelisted_modules)))
|
ifeq (,$(filter $(LOCAL_MODULE),$(whitelisted_modules)))
|
||||||
ifneq ($(JAVA_SDK_ENFORCEMENT_WARNING)$(JAVA_SDK_ENFORCEMENT_ERROR),)
|
ifneq ($(JAVA_SDK_ENFORCEMENT_WARNING)$(JAVA_SDK_ENFORCEMENT_ERROR),)
|
||||||
|
@@ -130,6 +130,7 @@ $(call add_json_bool, Treble_linker_namespaces, $(filter true,$(PRODUCT
|
|||||||
$(call add_json_bool, Enforce_vintf_manifest, $(filter true,$(PRODUCT_ENFORCE_VINTF_MANIFEST)))
|
$(call add_json_bool, Enforce_vintf_manifest, $(filter true,$(PRODUCT_ENFORCE_VINTF_MANIFEST)))
|
||||||
|
|
||||||
$(call add_json_bool, Uml, $(filter true,$(TARGET_USER_MODE_LINUX)))
|
$(call add_json_bool, Uml, $(filter true,$(TARGET_USER_MODE_LINUX)))
|
||||||
|
$(call add_json_bool, Use_lmkd_stats_log, $(filter true,$(TARGET_LMKD_STATS_LOG)))
|
||||||
$(call add_json_str, VendorPath, $(TARGET_COPY_OUT_VENDOR))
|
$(call add_json_str, VendorPath, $(TARGET_COPY_OUT_VENDOR))
|
||||||
$(call add_json_str, OdmPath, $(TARGET_COPY_OUT_ODM))
|
$(call add_json_str, OdmPath, $(TARGET_COPY_OUT_ODM))
|
||||||
$(call add_json_str, ProductPath, $(TARGET_COPY_OUT_PRODUCT))
|
$(call add_json_str, ProductPath, $(TARGET_COPY_OUT_PRODUCT))
|
||||||
@@ -137,6 +138,7 @@ $(call add_json_str, ProductServicesPath, $(TARGET_COPY_OUT_PRODU
|
|||||||
$(call add_json_bool, MinimizeJavaDebugInfo, $(filter true,$(PRODUCT_MINIMIZE_JAVA_DEBUG_INFO)))
|
$(call add_json_bool, MinimizeJavaDebugInfo, $(filter true,$(PRODUCT_MINIMIZE_JAVA_DEBUG_INFO)))
|
||||||
|
|
||||||
$(call add_json_bool, UseGoma, $(filter-out false,$(USE_GOMA)))
|
$(call add_json_bool, UseGoma, $(filter-out false,$(USE_GOMA)))
|
||||||
|
$(call add_json_bool, Arc, $(filter true,$(TARGET_ARC)))
|
||||||
|
|
||||||
$(call add_json_str, DistDir, $(if $(dist_goal), $(DIST_DIR)))
|
$(call add_json_str, DistDir, $(if $(dist_goal), $(DIST_DIR)))
|
||||||
|
|
||||||
|
@@ -1,4 +1,3 @@
|
|||||||
#
|
|
||||||
# Copyright (C) 2017 The Android Open Source Project
|
# Copyright (C) 2017 The Android Open Source Project
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
@@ -12,4 +11,11 @@
|
|||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
#
|
#
|
||||||
|
# Rules for building API diffs.
|
||||||
|
#
|
||||||
|
|
||||||
|
.PHONY: api-diff
|
||||||
|
|
||||||
|
api-diff: offline-sdk-referenceonly-diff
|
@@ -121,7 +121,7 @@ com\.android\..*
|
|||||||
|
|
||||||
|
|
||||||
###################################################
|
###################################################
|
||||||
# legacy-test.jar
|
# android.test.base.jar
|
||||||
junit\.extensions
|
junit\.extensions
|
||||||
junit\.framework
|
junit\.framework
|
||||||
android\.test
|
android\.test
|
||||||
@@ -237,3 +237,7 @@ org\.apache\.xalan\.xslt
|
|||||||
# Packages in the google namespace across all bootclasspath jars.
|
# Packages in the google namespace across all bootclasspath jars.
|
||||||
com\.google\.android\..*
|
com\.google\.android\..*
|
||||||
com\.google\.vr\.platform.*
|
com\.google\.vr\.platform.*
|
||||||
|
|
||||||
|
###################################################
|
||||||
|
# Packages used for Android in Chrome OS
|
||||||
|
org\.chromium\.arc
|
||||||
|
@@ -14,8 +14,9 @@
|
|||||||
|
|
||||||
test_suite_name := cts
|
test_suite_name := cts
|
||||||
test_suite_tradefed := cts-tradefed
|
test_suite_tradefed := cts-tradefed
|
||||||
test_suite_dynamic_config := cts/tools/cts-tradefed/DynamicConfig.xml
|
# TODO: Fix the following two lines after harness is moved to its own repo
|
||||||
test_suite_readme := cts/tools/cts-tradefed/README
|
test_suite_dynamic_config := test/suite_harness/tools/cts-tradefed/DynamicConfig.xml
|
||||||
|
test_suite_readme := test/suite_harness/tools/cts-tradefed/README
|
||||||
|
|
||||||
include $(BUILD_SYSTEM)/tasks/tools/compatibility.mk
|
include $(BUILD_SYSTEM)/tasks/tools/compatibility.mk
|
||||||
|
|
||||||
|
25
core/tasks/cts_instant.mk
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# Copyright (C) 2018 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
|
||||||
|
test_suite_name := cts_instant
|
||||||
|
test_suite_tradefed := cts-instant-tradefed
|
||||||
|
test_suite_dynamic_config := test/suite_harness/tools/cts-instant-tradefed/DynamicConfig.xml
|
||||||
|
test_suite_readme := test/suite_harness/tools/cts-instant-tradefed/README
|
||||||
|
|
||||||
|
include $(BUILD_SYSTEM)/tasks/tools/compatibility.mk
|
||||||
|
|
||||||
|
.PHONY: cts_instant
|
||||||
|
cts_instant: $(compatibility_zip)
|
||||||
|
$(call dist-for-goals, cts_instant, $(compatibility_zip))
|
||||||
|
|
@@ -65,7 +65,6 @@ endif
|
|||||||
files_to_copy += \
|
files_to_copy += \
|
||||||
$(addon_dir_img):$(INSTALLED_QEMU_SYSTEMIMAGE):images/$(TARGET_CPU_ABI)/system.img \
|
$(addon_dir_img):$(INSTALLED_QEMU_SYSTEMIMAGE):images/$(TARGET_CPU_ABI)/system.img \
|
||||||
$(addon_dir_img):$(INSTALLED_QEMU_VENDORIMAGE):images/$(TARGET_CPU_ABI)/vendor.img \
|
$(addon_dir_img):$(INSTALLED_QEMU_VENDORIMAGE):images/$(TARGET_CPU_ABI)/vendor.img \
|
||||||
$(addon_dir_img):$(BUILT_USERDATAIMAGE_TARGET):images/$(TARGET_CPU_ABI)/userdata.img \
|
|
||||||
$(addon_dir_img):$(BUILT_RAMDISK_TARGET):images/$(TARGET_CPU_ABI)/ramdisk.img \
|
$(addon_dir_img):$(BUILT_RAMDISK_TARGET):images/$(TARGET_CPU_ABI)/ramdisk.img \
|
||||||
$(addon_dir_img):$(PRODUCT_OUT)/system/build.prop:images/$(TARGET_CPU_ABI)/build.prop \
|
$(addon_dir_img):$(PRODUCT_OUT)/system/build.prop:images/$(TARGET_CPU_ABI)/build.prop \
|
||||||
$(addon_dir_img):$(target_notice_file_txt):images/$(TARGET_CPU_ABI)/NOTICE.txt \
|
$(addon_dir_img):$(target_notice_file_txt):images/$(TARGET_CPU_ABI)/NOTICE.txt \
|
||||||
|
@@ -1,5 +1,4 @@
|
|||||||
#
|
# Copyright (C) 2016 The Android Open Source Project
|
||||||
# Copyright (C) 2017 The Android Open Source Project
|
|
||||||
#
|
#
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
# you may not use this file except in compliance with the License.
|
# you may not use this file except in compliance with the License.
|
||||||
@@ -12,12 +11,15 @@
|
|||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
|
||||||
|
|
||||||
# 512MB specific properties.
|
ifneq ($(wildcard test/sts/README.md),)
|
||||||
|
test_suite_name := sts
|
||||||
|
test_suite_tradefed := sts-tradefed
|
||||||
|
test_suite_readme := test/sts/README.md
|
||||||
|
|
||||||
# lmkd can kill more now.
|
include $(BUILD_SYSTEM)/tasks/tools/compatibility.mk
|
||||||
ro.lmk.medium=700
|
|
||||||
|
|
||||||
# madvise random in ART to reduce page cache thrashing.
|
.PHONY: sts
|
||||||
dalvik.vm.madvise-random=true
|
sts: $(compatibility_zip)
|
||||||
|
$(call dist-for-goals, sts, $(compatibility_zip))
|
||||||
|
endif
|
@@ -21,6 +21,8 @@
|
|||||||
# test_suite_readme: the path to a README file for this test suite
|
# test_suite_readme: the path to a README file for this test suite
|
||||||
# test_suite_prebuilt_tools: the set of prebuilt tools to be included directly
|
# test_suite_prebuilt_tools: the set of prebuilt tools to be included directly
|
||||||
# in the 'tools' subdirectory of the test suite.
|
# in the 'tools' subdirectory of the test suite.
|
||||||
|
# test_suite_tools: the set of tools for this test suite
|
||||||
|
#
|
||||||
# Output variables:
|
# Output variables:
|
||||||
# compatibility_zip: the path to the output zip file.
|
# compatibility_zip: the path to the output zip file.
|
||||||
|
|
||||||
@@ -39,6 +41,8 @@ test_tools := $(HOST_OUT_JAVA_LIBRARIES)/hosttestlib.jar \
|
|||||||
$(HOST_OUT_EXECUTABLES)/$(test_suite_tradefed) \
|
$(HOST_OUT_EXECUTABLES)/$(test_suite_tradefed) \
|
||||||
$(test_suite_readme)
|
$(test_suite_readme)
|
||||||
|
|
||||||
|
test_tools += $(test_suite_tools)
|
||||||
|
|
||||||
compatibility_zip := $(out_dir).zip
|
compatibility_zip := $(out_dir).zip
|
||||||
$(compatibility_zip): PRIVATE_NAME := android-$(test_suite_name)
|
$(compatibility_zip): PRIVATE_NAME := android-$(test_suite_name)
|
||||||
$(compatibility_zip): PRIVATE_OUT_DIR := $(out_dir)
|
$(compatibility_zip): PRIVATE_OUT_DIR := $(out_dir)
|
||||||
@@ -61,3 +65,4 @@ test_suite_tradefed :=
|
|||||||
test_suite_dynamic_config :=
|
test_suite_dynamic_config :=
|
||||||
test_suite_readme :=
|
test_suite_readme :=
|
||||||
test_suite_prebuilt_tools :=
|
test_suite_prebuilt_tools :=
|
||||||
|
test_suite_tools :=
|
||||||
|
@@ -44,6 +44,7 @@ _vendor_owner_whitelist := \
|
|||||||
ti \
|
ti \
|
||||||
trusted_logic \
|
trusted_logic \
|
||||||
verizon \
|
verizon \
|
||||||
|
waves \
|
||||||
widevine
|
widevine
|
||||||
|
|
||||||
|
|
||||||
|
@@ -82,12 +82,10 @@ MAX_PLATFORM_VERSION :=
|
|||||||
# please add that PLATFORM_VERSION as well as clean up obsolete PLATFORM_VERSION's
|
# please add that PLATFORM_VERSION as well as clean up obsolete PLATFORM_VERSION's
|
||||||
# in the following text file:
|
# in the following text file:
|
||||||
# cts/tests/tests/os/assets/platform_versions.txt
|
# cts/tests/tests/os/assets/platform_versions.txt
|
||||||
PLATFORM_VERSION.PPR1 := P
|
|
||||||
PLATFORM_VERSION.QPR1 := Q
|
PLATFORM_VERSION.QPR1 := Q
|
||||||
|
|
||||||
# These are the current development codenames, if the build is not a final
|
# These are the current development codenames, if the build is not a final
|
||||||
# release build. If this is a final release build, it is simply "REL".
|
# release build. If this is a final release build, it is simply "REL".
|
||||||
PLATFORM_VERSION_CODENAME.PPR1 := P
|
|
||||||
PLATFORM_VERSION_CODENAME.QPR1 := Q
|
PLATFORM_VERSION_CODENAME.QPR1 := Q
|
||||||
|
|
||||||
ifndef PLATFORM_VERSION
|
ifndef PLATFORM_VERSION
|
||||||
@@ -116,7 +114,7 @@ ifndef PLATFORM_SDK_VERSION
|
|||||||
# When you increment the PLATFORM_SDK_VERSION please ensure you also
|
# When you increment the PLATFORM_SDK_VERSION please ensure you also
|
||||||
# clear out the following text file of all older PLATFORM_VERSION's:
|
# clear out the following text file of all older PLATFORM_VERSION's:
|
||||||
# cts/tests/tests/os/assets/platform_versions.txt
|
# cts/tests/tests/os/assets/platform_versions.txt
|
||||||
PLATFORM_SDK_VERSION := 27
|
PLATFORM_SDK_VERSION := 28
|
||||||
endif
|
endif
|
||||||
.KATI_READONLY := PLATFORM_SDK_VERSION
|
.KATI_READONLY := PLATFORM_SDK_VERSION
|
||||||
|
|
||||||
@@ -225,10 +223,7 @@ ifndef PLATFORM_SYSTEMSDK_MIN_VERSION
|
|||||||
# to the public SDK where platform essentially supports all previous SDK versions,
|
# to the public SDK where platform essentially supports all previous SDK versions,
|
||||||
# platform supports only a few number of recent system SDK versions as some of
|
# platform supports only a few number of recent system SDK versions as some of
|
||||||
# old system APIs are gradually deprecated, removed and then deleted.
|
# old system APIs are gradually deprecated, removed and then deleted.
|
||||||
# However, currently in P, we only support the single latest version since there
|
PLATFORM_SYSTEMSDK_MIN_VERSION := 28
|
||||||
# is no old system SDK versions. Therefore, this is set to empty for now. This
|
|
||||||
# should later (in post P) be set to a number, like 28.
|
|
||||||
PLATFORM_SYSTEMSDK_MIN_VERSION :=
|
|
||||||
endif
|
endif
|
||||||
.KATI_READONLY := PLATFORM_SYSTEMSDK_MIN_VERSION
|
.KATI_READONLY := PLATFORM_SYSTEMSDK_MIN_VERSION
|
||||||
|
|
||||||
@@ -254,7 +249,7 @@ ifndef PLATFORM_SECURITY_PATCH
|
|||||||
# It must be of the form "YYYY-MM-DD" on production devices.
|
# It must be of the form "YYYY-MM-DD" on production devices.
|
||||||
# It must match one of the Android Security Patch Level strings of the Public Security Bulletins.
|
# It must match one of the Android Security Patch Level strings of the Public Security Bulletins.
|
||||||
# If there is no $PLATFORM_SECURITY_PATCH set, keep it empty.
|
# If there is no $PLATFORM_SECURITY_PATCH set, keep it empty.
|
||||||
PLATFORM_SECURITY_PATCH := 2017-12-01
|
PLATFORM_SECURITY_PATCH := 2018-08-05
|
||||||
endif
|
endif
|
||||||
.KATI_READONLY := PLATFORM_SECURITY_PATCH
|
.KATI_READONLY := PLATFORM_SECURITY_PATCH
|
||||||
|
|
||||||
@@ -320,3 +315,11 @@ ifndef BUILD_NUMBER
|
|||||||
HAS_BUILD_NUMBER := false
|
HAS_BUILD_NUMBER := false
|
||||||
endif
|
endif
|
||||||
.KATI_READONLY := BUILD_NUMBER HAS_BUILD_NUMBER
|
.KATI_READONLY := BUILD_NUMBER HAS_BUILD_NUMBER
|
||||||
|
|
||||||
|
ifndef PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION
|
||||||
|
# Used to set minimum supported target sdk version. Apps targeting sdk
|
||||||
|
# version lower than the set value will fail to install and run on android
|
||||||
|
# device.
|
||||||
|
PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION := 17
|
||||||
|
endif
|
||||||
|
.KATI_READONLY := PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION
|
||||||
|
@@ -49,3 +49,14 @@ include build/make/target/board/BoardConfigEmuCommon.mk
|
|||||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||||
|
|
||||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
||||||
|
|
||||||
|
# Wifi.
|
||||||
|
BOARD_WLAN_DEVICE := emulator
|
||||||
|
BOARD_HOSTAPD_DRIVER := NL80211
|
||||||
|
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
|
||||||
|
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
WPA_SUPPLICANT_VERSION := VER_0_8_X
|
||||||
|
WIFI_DRIVER_FW_PATH_PARAM := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_STA := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_AP := "/dev/null"
|
||||||
|
@@ -17,12 +17,7 @@
|
|||||||
# This is a build configuration for the product aspects that
|
# This is a build configuration for the product aspects that
|
||||||
# are specific to the emulator.
|
# are specific to the emulator.
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES := \
|
|
||||||
ro.ril.hsxpa=1 \
|
|
||||||
ro.ril.gprsclass=10
|
|
||||||
|
|
||||||
PRODUCT_COPY_FILES := \
|
PRODUCT_COPY_FILES := \
|
||||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
|
|
||||||
device/generic/goldfish/camera/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
device/generic/goldfish/camera/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
||||||
|
@@ -68,3 +68,14 @@ BOARD_ROOT_EXTRA_SYMLINKS += /vendor/firmware_mnt:/firmware
|
|||||||
# TODO(b/36764215): remove this setting when the generic system image
|
# TODO(b/36764215): remove this setting when the generic system image
|
||||||
# no longer has QCOM-specific directories under /.
|
# no longer has QCOM-specific directories under /.
|
||||||
BOARD_SEPOLICY_DIRS += build/target/board/generic_arm64_ab/sepolicy
|
BOARD_SEPOLICY_DIRS += build/target/board/generic_arm64_ab/sepolicy
|
||||||
|
|
||||||
|
# Wifi.
|
||||||
|
BOARD_WLAN_DEVICE := emulator
|
||||||
|
BOARD_HOSTAPD_DRIVER := NL80211
|
||||||
|
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
|
||||||
|
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
WPA_SUPPLICANT_VERSION := VER_0_8_X
|
||||||
|
WIFI_DRIVER_FW_PATH_PARAM := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_STA := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_AP := "/dev/null"
|
||||||
|
@@ -17,12 +17,7 @@
|
|||||||
# This is a build configuration for the product aspects that
|
# This is a build configuration for the product aspects that
|
||||||
# are specific to the emulator.
|
# are specific to the emulator.
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES := \
|
|
||||||
ro.ril.hsxpa=1 \
|
|
||||||
ro.ril.gprsclass=10
|
|
||||||
|
|
||||||
PRODUCT_COPY_FILES := \
|
PRODUCT_COPY_FILES := \
|
||||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
|
|
||||||
device/generic/goldfish/camera/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
device/generic/goldfish/camera/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
||||||
|
@@ -44,5 +44,3 @@ BOARD_CACHEIMAGE_PARTITION_SIZE := 16777216
|
|||||||
# TODO(b/36764215): remove this setting when the generic system image
|
# TODO(b/36764215): remove this setting when the generic system image
|
||||||
# no longer has QCOM-specific directories under /.
|
# no longer has QCOM-specific directories under /.
|
||||||
BOARD_SEPOLICY_DIRS += build/target/board/generic_arm64_ab/sepolicy
|
BOARD_SEPOLICY_DIRS += build/target/board/generic_arm64_ab/sepolicy
|
||||||
|
|
||||||
BOARD_VNDK_VERSION := current
|
|
||||||
|
@@ -23,4 +23,18 @@ TARGET_PRELINK_MODULE := false
|
|||||||
include build/make/target/board/BoardConfigEmuCommon.mk
|
include build/make/target/board/BoardConfigEmuCommon.mk
|
||||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||||
|
|
||||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
# Resize to 4G to accomodate ASAN and CTS
|
||||||
|
BOARD_USERDATAIMAGE_PARTITION_SIZE := 4294967296
|
||||||
|
|
||||||
|
BOARD_SEPOLICY_DIRS += device/generic/goldfish/sepolicy/x86
|
||||||
|
|
||||||
|
# Wifi.
|
||||||
|
BOARD_WLAN_DEVICE := emulator
|
||||||
|
BOARD_HOSTAPD_DRIVER := NL80211
|
||||||
|
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
|
||||||
|
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
WPA_SUPPLICANT_VERSION := VER_0_8_X
|
||||||
|
WIFI_DRIVER_FW_PATH_PARAM := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_STA := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_AP := "/dev/null"
|
||||||
|
@@ -17,12 +17,7 @@
|
|||||||
# This is a build configuration for the product aspects that
|
# This is a build configuration for the product aspects that
|
||||||
# are specific to the emulator.
|
# are specific to the emulator.
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES := \
|
|
||||||
ro.ril.hsxpa=1 \
|
|
||||||
ro.ril.gprsclass=10
|
|
||||||
|
|
||||||
PRODUCT_COPY_FILES := \
|
PRODUCT_COPY_FILES := \
|
||||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
|
|
||||||
device/generic/goldfish/camera/media_profiles.xml:system/etc/media_profiles.xml \
|
device/generic/goldfish/camera/media_profiles.xml:system/etc/media_profiles.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
|
||||||
|
@@ -28,3 +28,16 @@ include build/make/target/board/BoardConfigEmuCommon.mk
|
|||||||
include build/make/target/board/BoardConfigGsiCommon.mk
|
include build/make/target/board/BoardConfigGsiCommon.mk
|
||||||
|
|
||||||
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
BOARD_USERDATAIMAGE_PARTITION_SIZE := 576716800
|
||||||
|
|
||||||
|
BOARD_SEPOLICY_DIRS += device/generic/goldfish/sepolicy/x86
|
||||||
|
|
||||||
|
# Wifi.
|
||||||
|
BOARD_WLAN_DEVICE := emulator
|
||||||
|
BOARD_HOSTAPD_DRIVER := NL80211
|
||||||
|
BOARD_WPA_SUPPLICANT_DRIVER := NL80211
|
||||||
|
BOARD_HOSTAPD_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
BOARD_WPA_SUPPLICANT_PRIVATE_LIB := lib_driver_cmd_simulated
|
||||||
|
WPA_SUPPLICANT_VERSION := VER_0_8_X
|
||||||
|
WIFI_DRIVER_FW_PATH_PARAM := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_STA := "/dev/null"
|
||||||
|
WIFI_DRIVER_FW_PATH_AP := "/dev/null"
|
||||||
|
@@ -17,12 +17,7 @@
|
|||||||
# This is a build configuration for the product aspects that
|
# This is a build configuration for the product aspects that
|
||||||
# are specific to the emulator.
|
# are specific to the emulator.
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES := \
|
|
||||||
ro.ril.hsxpa=1 \
|
|
||||||
ro.ril.gprsclass=10
|
|
||||||
|
|
||||||
PRODUCT_COPY_FILES := \
|
PRODUCT_COPY_FILES := \
|
||||||
device/generic/goldfish/data/etc/apns-conf.xml:system/etc/apns-conf.xml \
|
|
||||||
device/generic/goldfish/camera/media_profiles.xml:system/etc/media_profiles.xml \
|
device/generic/goldfish/camera/media_profiles.xml:system/etc/media_profiles.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:system/etc/media_codecs_google_audio.xml \
|
||||||
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:system/etc/media_codecs_google_telephony.xml \
|
||||||
|
@@ -1,42 +0,0 @@
|
|||||||
#
|
|
||||||
# Copyright (C) 2017 The Android Open Source Project
|
|
||||||
#
|
|
||||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
# you may not use this file except in compliance with the License.
|
|
||||||
# You may obtain a copy of the License at
|
|
||||||
#
|
|
||||||
# http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
#
|
|
||||||
# Unless required by applicable law or agreed to in writing, software
|
|
||||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
# See the License for the specific language governing permissions and
|
|
||||||
# limitations under the License.
|
|
||||||
#
|
|
||||||
|
|
||||||
# Sets Android Go recommended default values for propreties.
|
|
||||||
|
|
||||||
# Set lowram options
|
|
||||||
ro.lmk.critical_upgrade=true
|
|
||||||
ro.lmk.upgrade_pressure=40
|
|
||||||
ro.lmk.downgrade_pressure=60
|
|
||||||
ro.lmk.kill_heaviest_task=false
|
|
||||||
ro.statsd.enable=false
|
|
||||||
|
|
||||||
# set threshold to filter unused apps
|
|
||||||
pm.dexopt.downgrade_after_inactive_days=10
|
|
||||||
|
|
||||||
# set the compiler filter for shared apks to quicken.
|
|
||||||
# Rationale: speed has a lot of dex code expansion, it uses more ram and space
|
|
||||||
# compared to quicken. Using quicken for shared APKs on Go devices may save RAM.
|
|
||||||
# Note that this is a trade-off: here we trade clean pages for dirty pages,
|
|
||||||
# extra cpu and battery. That's because the quicken files will be jit-ed in all
|
|
||||||
# the processes that load of shared apk and the code cache is not shared.
|
|
||||||
# Some notable apps that will be affected by this are gms and chrome.
|
|
||||||
# b/65591595.
|
|
||||||
pm.dexopt.shared=quicken
|
|
||||||
|
|
||||||
# Default heap sizes. Allow up to 256m for large heaps to make sure a single app
|
|
||||||
# doesn't take all of the RAM.
|
|
||||||
dalvik.vm.heapgrowthlimit=128m
|
|
||||||
dalvik.vm.heapsize=256m
|
|
@@ -3,3 +3,6 @@ ro.cp_system_other_odex=0
|
|||||||
|
|
||||||
# GSI always disables adb authentication
|
# GSI always disables adb authentication
|
||||||
ro.adb.secure=0
|
ro.adb.secure=0
|
||||||
|
|
||||||
|
# TODO(b/78105955): disable privapp_permissions checking before the bug solved
|
||||||
|
ro.control_privapp_permissions=disable
|
||||||
|
@@ -29,7 +29,10 @@ TARGET_NO_BOOTLOADER := true
|
|||||||
TARGET_NO_KERNEL := true
|
TARGET_NO_KERNEL := true
|
||||||
|
|
||||||
# system.img is always ext4 with sparse option
|
# system.img is always ext4 with sparse option
|
||||||
|
# GSI also includes make_f2fs to support userdata parition in f2fs
|
||||||
|
# for some devices
|
||||||
TARGET_USERIMAGES_USE_EXT4 := true
|
TARGET_USERIMAGES_USE_EXT4 := true
|
||||||
|
TARGET_USERIMAGES_USE_F2FS := true
|
||||||
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
TARGET_USERIMAGES_SPARSE_EXT_DISABLED := false
|
||||||
TARGET_USES_MKE2FS := true
|
TARGET_USES_MKE2FS := true
|
||||||
|
|
||||||
@@ -39,6 +42,9 @@ BOARD_SYSTEMIMAGE_PARTITION_RESERVED_SIZE := 67108864
|
|||||||
# Generic AOSP image always requires separate vendor.img
|
# Generic AOSP image always requires separate vendor.img
|
||||||
TARGET_COPY_OUT_VENDOR := vendor
|
TARGET_COPY_OUT_VENDOR := vendor
|
||||||
|
|
||||||
|
# Android generic system image always create metadata partition
|
||||||
|
BOARD_USES_METADATA_PARTITION := true
|
||||||
|
|
||||||
# Generic AOSP image does NOT support HWC1
|
# Generic AOSP image does NOT support HWC1
|
||||||
TARGET_USES_HWC2 := true
|
TARGET_USES_HWC2 := true
|
||||||
# Set emulator framebuffer display device buffer count to 3
|
# Set emulator framebuffer display device buffer count to 3
|
||||||
@@ -47,11 +53,6 @@ NUM_FRAMEBUFFER_SURFACE_BUFFERS := 3
|
|||||||
# Audio
|
# Audio
|
||||||
USE_XML_AUDIO_POLICY_CONF := 1
|
USE_XML_AUDIO_POLICY_CONF := 1
|
||||||
|
|
||||||
# b/64700195: add minimum support for odm.img
|
|
||||||
# Currently odm.img can only be built by `make custom_images`.
|
|
||||||
# Adding /odm mount point under root directory.
|
|
||||||
BOARD_ROOT_EXTRA_FOLDERS += odm
|
|
||||||
|
|
||||||
# Android Verified Boot (AVB):
|
# Android Verified Boot (AVB):
|
||||||
# Builds a special vbmeta.img that disables AVB verification.
|
# Builds a special vbmeta.img that disables AVB verification.
|
||||||
# Otherwise, AVB will prevent the device from booting the generic system.img.
|
# Otherwise, AVB will prevent the device from booting the generic system.img.
|
||||||
|
@@ -3,3 +3,6 @@ ro.cp_system_other_odex=0
|
|||||||
|
|
||||||
# GSI always disables adb authentication
|
# GSI always disables adb authentication
|
||||||
ro.adb.secure=0
|
ro.adb.secure=0
|
||||||
|
|
||||||
|
# TODO(b/78105955): disable privapp_permissions checking before the bug solved
|
||||||
|
ro.control_privapp_permissions=disable
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
# - compatible property override enabled
|
# - compatible property override enabled
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES += \
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
rild.libpath=/vendor/lib/libreference-ril.so
|
vendor.rild.libpath=/vendor/lib/libreference-ril.so
|
||||||
|
|
||||||
# Note: the following lines need to stay at the beginning so that it can
|
# Note: the following lines need to stay at the beginning so that it can
|
||||||
# take priority and override the rules it inherit from other mk files
|
# take priority and override the rules it inherit from other mk files
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
# - compatible property override enabled
|
# - compatible property override enabled
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES += \
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
rild.libpath=/vendor/lib64/libreference-ril.so
|
vendor.rild.libpath=/vendor/lib64/libreference-ril.so
|
||||||
|
|
||||||
# This is a build configuration for a full-featured build of the
|
# This is a build configuration for a full-featured build of the
|
||||||
# Open-Source part of the tree. It's geared toward a US-centric
|
# Open-Source part of the tree. It's geared toward a US-centric
|
||||||
@@ -45,12 +45,11 @@ PRODUCT_COPY_FILES += \
|
|||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
system/core/rootdir/init.zygote32_64.rc:root/init.zygote32_64.rc
|
system/core/rootdir/init.zygote32_64.rc:root/init.zygote32_64.rc
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulator.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_arm64/device.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_arm64/device.mk)
|
||||||
|
|
||||||
include $(SRC_TARGET_DIR)/product/emulator.mk
|
|
||||||
|
|
||||||
# Enable dynamic partition size
|
# Enable dynamic partition size
|
||||||
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||||
|
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
# - compatible property override enabled
|
# - compatible property override enabled
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES += \
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
rild.libpath=/vendor/lib/libreference-ril.so
|
vendor.rild.libpath=/vendor/lib/libreference-ril.so
|
||||||
|
|
||||||
# This is a build configuration for a full-featured build of the
|
# This is a build configuration for a full-featured build of the
|
||||||
# Open-Source part of the tree. It's geared toward a US-centric
|
# Open-Source part of the tree. It's geared toward a US-centric
|
||||||
@@ -31,7 +31,7 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
development/sys-img/advancedFeatures.ini:advancedFeatures.ini \
|
development/sys-img/advancedFeatures.ini:advancedFeatures.ini \
|
||||||
device/generic/goldfish/data/etc/encryptionkey.img:encryptionkey.img \
|
device/generic/goldfish/data/etc/encryptionkey.img:encryptionkey.img \
|
||||||
prebuilts/qemu-kernel/x86_64/4.4/kernel-qemu2:kernel-ranchu-64
|
prebuilts/qemu-kernel/x86_64/4.9/kernel-qemu2:kernel-ranchu-64
|
||||||
|
|
||||||
include $(SRC_TARGET_DIR)/product/full_x86.mk
|
include $(SRC_TARGET_DIR)/product/full_x86.mk
|
||||||
|
|
||||||
|
@@ -22,7 +22,7 @@
|
|||||||
# - compatible property override enabled
|
# - compatible property override enabled
|
||||||
|
|
||||||
PRODUCT_PROPERTY_OVERRIDES += \
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
rild.libpath=/vendor/lib64/libreference-ril.so
|
vendor.rild.libpath=/vendor/lib64/libreference-ril.so
|
||||||
|
|
||||||
# This is a build configuration for a full-featured build of the
|
# This is a build configuration for a full-featured build of the
|
||||||
# Open-Source part of the tree. It's geared toward a US-centric
|
# Open-Source part of the tree. It's geared toward a US-centric
|
||||||
@@ -32,7 +32,7 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
development/sys-img/advancedFeatures.ini:advancedFeatures.ini \
|
development/sys-img/advancedFeatures.ini:advancedFeatures.ini \
|
||||||
device/generic/goldfish/data/etc/encryptionkey.img:encryptionkey.img \
|
device/generic/goldfish/data/etc/encryptionkey.img:encryptionkey.img \
|
||||||
prebuilts/qemu-kernel/x86_64/4.4/kernel-qemu2:kernel-ranchu
|
prebuilts/qemu-kernel/x86_64/4.9/kernel-qemu2:kernel-ranchu
|
||||||
|
|
||||||
# Copy different zygote settings for vendor.img to select by setting property
|
# Copy different zygote settings for vendor.img to select by setting property
|
||||||
# ro.zygote=zygote64_32 or ro.zygote=zygote32_64:
|
# ro.zygote=zygote64_32 or ro.zygote=zygote32_64:
|
||||||
@@ -42,12 +42,11 @@ PRODUCT_COPY_FILES += \
|
|||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
system/core/rootdir/init.zygote32_64.rc:root/init.zygote32_64.rc
|
system/core/rootdir/init.zygote32_64.rc:root/init.zygote32_64.rc
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulator.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/core_64_bit.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_x86_64/device.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_x86_64/device.mk)
|
||||||
|
|
||||||
include $(SRC_TARGET_DIR)/product/emulator.mk
|
|
||||||
|
|
||||||
# Enable dynamic partition size
|
# Enable dynamic partition size
|
||||||
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
||||||
|
|
||||||
|
@@ -24,12 +24,14 @@ PRODUCT_PACKAGES += \
|
|||||||
android.hidl.manager-V1.0-java \
|
android.hidl.manager-V1.0-java \
|
||||||
android.hidl.memory@1.0-impl \
|
android.hidl.memory@1.0-impl \
|
||||||
android.hidl.memory@1.0-impl.vendor \
|
android.hidl.memory@1.0-impl.vendor \
|
||||||
|
android.test.base \
|
||||||
android.test.mock \
|
android.test.mock \
|
||||||
android.test.runner \
|
android.test.runner \
|
||||||
applypatch \
|
applypatch \
|
||||||
appops \
|
appops \
|
||||||
app_process \
|
app_process \
|
||||||
appwidget \
|
appwidget \
|
||||||
|
atest \
|
||||||
atrace \
|
atrace \
|
||||||
audioserver \
|
audioserver \
|
||||||
BackupRestoreConfirmation \
|
BackupRestoreConfirmation \
|
||||||
@@ -79,6 +81,7 @@ PRODUCT_PACKAGES += \
|
|||||||
ims-common \
|
ims-common \
|
||||||
incident \
|
incident \
|
||||||
incidentd \
|
incidentd \
|
||||||
|
incident_helper \
|
||||||
incident_report \
|
incident_report \
|
||||||
init \
|
init \
|
||||||
init.environ.rc \
|
init.environ.rc \
|
||||||
@@ -211,6 +214,7 @@ PRODUCT_PACKAGES += \
|
|||||||
screencap \
|
screencap \
|
||||||
sdcard \
|
sdcard \
|
||||||
secdiscard \
|
secdiscard \
|
||||||
|
SecureElement \
|
||||||
selinux_policy_system \
|
selinux_policy_system \
|
||||||
sensorservice \
|
sensorservice \
|
||||||
service \
|
service \
|
||||||
@@ -222,6 +226,7 @@ PRODUCT_PACKAGES += \
|
|||||||
Shell \
|
Shell \
|
||||||
shell_and_utilities_system \
|
shell_and_utilities_system \
|
||||||
sm \
|
sm \
|
||||||
|
statsd \
|
||||||
storaged \
|
storaged \
|
||||||
surfaceflinger \
|
surfaceflinger \
|
||||||
svc \
|
svc \
|
||||||
@@ -255,30 +260,44 @@ ifeq ($(TARGET_CORE_JARS),)
|
|||||||
$(error TARGET_CORE_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
|
$(error TARGET_CORE_JARS is empty; cannot initialize PRODUCT_BOOT_JARS variable)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# The order of PRODUCT_BOOT_JARS matters.
|
# The order matters
|
||||||
PRODUCT_BOOT_JARS := \
|
PRODUCT_BOOT_JARS := \
|
||||||
$(TARGET_CORE_JARS) \
|
$(TARGET_CORE_JARS) \
|
||||||
legacy-test \
|
|
||||||
ext \
|
ext \
|
||||||
framework \
|
framework \
|
||||||
telephony-common \
|
telephony-common \
|
||||||
voip-common \
|
voip-common \
|
||||||
ims-common \
|
ims-common \
|
||||||
org.apache.http.legacy.impl \
|
|
||||||
android.hidl.base-V1.0-java \
|
android.hidl.base-V1.0-java \
|
||||||
android.hidl.manager-V1.0-java
|
android.hidl.manager-V1.0-java
|
||||||
|
|
||||||
|
# Add the compatibility library that is needed when org.apache.http.legacy
|
||||||
|
# is removed from the bootclasspath.
|
||||||
|
ifeq ($(REMOVE_OAHL_FROM_BCP),true)
|
||||||
|
PRODUCT_PACKAGES += framework-oahl-backward-compatibility
|
||||||
|
PRODUCT_BOOT_JARS += framework-oahl-backward-compatibility
|
||||||
|
else
|
||||||
|
PRODUCT_BOOT_JARS += org.apache.http.legacy.impl
|
||||||
|
endif
|
||||||
|
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
system/core/rootdir/init.usb.rc:root/init.usb.rc \
|
system/core/rootdir/init.usb.rc:root/init.usb.rc \
|
||||||
system/core/rootdir/init.usb.configfs.rc:root/init.usb.configfs.rc \
|
system/core/rootdir/init.usb.configfs.rc:root/init.usb.configfs.rc \
|
||||||
system/core/rootdir/ueventd.rc:root/ueventd.rc \
|
system/core/rootdir/ueventd.rc:root/ueventd.rc \
|
||||||
system/core/rootdir/etc/hosts:system/etc/hosts
|
system/core/rootdir/etc/hosts:system/etc/hosts
|
||||||
|
|
||||||
|
# Add the compatibility library that is needed when android.test.base
|
||||||
|
# is removed from the bootclasspath.
|
||||||
|
ifeq ($(REMOVE_ATB_FROM_BCP),true)
|
||||||
|
PRODUCT_PACKAGES += framework-atb-backward-compatibility
|
||||||
|
PRODUCT_BOOT_JARS += framework-atb-backward-compatibility
|
||||||
|
else
|
||||||
|
PRODUCT_BOOT_JARS += android.test.base
|
||||||
|
endif
|
||||||
|
|
||||||
PRODUCT_COPY_FILES += system/core/rootdir/init.zygote32.rc:root/init.zygote32.rc
|
PRODUCT_COPY_FILES += system/core/rootdir/init.zygote32.rc:root/init.zygote32.rc
|
||||||
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.zygote=zygote32
|
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.zygote=zygote32
|
||||||
|
|
||||||
# Ensure that this property is always defined so that bionic_systrace.cpp
|
|
||||||
# can rely on it being initially set by init.
|
|
||||||
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += debug.atrace.tags.enableflags=0
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += debug.atrace.tags.enableflags=0
|
||||||
|
|
||||||
# Packages included only for eng or userdebug builds, previously debug tagged
|
# Packages included only for eng or userdebug builds, previously debug tagged
|
||||||
|
@@ -26,7 +26,7 @@ PRODUCT_PACKAGES += \
|
|||||||
# Base modules and settings for the vendor partition.
|
# Base modules and settings for the vendor partition.
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.cas@1.0-service \
|
android.hardware.cas@1.0-service \
|
||||||
android.hardware.configstore@1.0-service \
|
android.hardware.configstore@1.1-service \
|
||||||
android.hardware.media.omx@1.0-service \
|
android.hardware.media.omx@1.0-service \
|
||||||
fs_config_files_nonsystem \
|
fs_config_files_nonsystem \
|
||||||
fs_config_dirs_nonsystem \
|
fs_config_dirs_nonsystem \
|
||||||
@@ -36,6 +36,7 @@ PRODUCT_PACKAGES += \
|
|||||||
libclearkeycasplugin \
|
libclearkeycasplugin \
|
||||||
libdownmix \
|
libdownmix \
|
||||||
libdrmclearkeyplugin \
|
libdrmclearkeyplugin \
|
||||||
|
libdynproc \
|
||||||
libeffectproxy \
|
libeffectproxy \
|
||||||
libeffects \
|
libeffects \
|
||||||
libldnhncr \
|
libldnhncr \
|
||||||
|
1
target/product/empty-preloaded-classes
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Empty preloaded-classes file for automated testing.
|
1
target/product/empty-profile
Normal file
@@ -0,0 +1 @@
|
|||||||
|
# Empty preloaded-classes file for automated testing.
|
@@ -44,8 +44,6 @@ PRODUCT_PACKAGES += \
|
|||||||
camera.goldfish.jpeg \
|
camera.goldfish.jpeg \
|
||||||
camera.ranchu \
|
camera.ranchu \
|
||||||
camera.ranchu.jpeg \
|
camera.ranchu.jpeg \
|
||||||
keystore.goldfish \
|
|
||||||
keystore.ranchu \
|
|
||||||
gatekeeper.ranchu \
|
gatekeeper.ranchu \
|
||||||
lights.goldfish \
|
lights.goldfish \
|
||||||
gps.goldfish \
|
gps.goldfish \
|
||||||
@@ -55,6 +53,7 @@ PRODUCT_PACKAGES += \
|
|||||||
audio.primary.goldfish \
|
audio.primary.goldfish \
|
||||||
audio.primary.goldfish_legacy \
|
audio.primary.goldfish_legacy \
|
||||||
android.hardware.audio@2.0-service \
|
android.hardware.audio@2.0-service \
|
||||||
|
android.hardware.wifi@1.0-service \
|
||||||
vibrator.goldfish \
|
vibrator.goldfish \
|
||||||
power.goldfish \
|
power.goldfish \
|
||||||
power.ranchu \
|
power.ranchu \
|
||||||
@@ -71,11 +70,16 @@ PRODUCT_PACKAGES += \
|
|||||||
sh_vendor \
|
sh_vendor \
|
||||||
vintf \
|
vintf \
|
||||||
toybox_vendor \
|
toybox_vendor \
|
||||||
CarrierConfig
|
CarrierConfig \
|
||||||
|
audio.primary.goldfish \
|
||||||
|
audio.r_submix.default \
|
||||||
|
local_time.default \
|
||||||
|
SdkSetup
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.audio@2.0-impl \
|
android.hardware.audio@2.0-impl \
|
||||||
android.hardware.audio.effect@2.0-impl \
|
android.hardware.audio.effect@2.0-impl \
|
||||||
|
android.hardware.broadcastradio@1.1-service \
|
||||||
android.hardware.broadcastradio@1.0-impl \
|
android.hardware.broadcastradio@1.0-impl \
|
||||||
android.hardware.soundtrigger@2.0-impl
|
android.hardware.soundtrigger@2.0-impl
|
||||||
|
|
||||||
@@ -83,6 +87,9 @@ PRODUCT_PACKAGES += \
|
|||||||
android.hardware.keymaster@3.0-impl \
|
android.hardware.keymaster@3.0-impl \
|
||||||
android.hardware.keymaster@3.0-service
|
android.hardware.keymaster@3.0-service
|
||||||
|
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
android.hardware.keymaster@4.0-strongbox-service
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
android.hardware.gnss@1.0-service \
|
android.hardware.gnss@1.0-service \
|
||||||
android.hardware.gnss@1.0-impl
|
android.hardware.gnss@1.0-impl
|
||||||
@@ -113,9 +120,24 @@ PRODUCT_PACKAGES += \
|
|||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
vndk-sp
|
vndk-sp
|
||||||
|
|
||||||
|
# WiFi
|
||||||
|
PRODUCT_PACKAGES += \
|
||||||
|
createns \
|
||||||
|
dhcpclient \
|
||||||
|
dhcpserver \
|
||||||
|
execns \
|
||||||
|
hostapd \
|
||||||
|
ip \
|
||||||
|
ipv6proxy \
|
||||||
|
iw \
|
||||||
|
wificond \
|
||||||
|
wpa_supplicant \
|
||||||
|
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
|
device/generic/goldfish/data/etc/apns-conf.xml:data/misc/apns/apns-conf.xml \
|
||||||
device/generic/goldfish/init.ranchu-core.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ranchu-core.sh \
|
device/generic/goldfish/init.ranchu-core.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ranchu-core.sh \
|
||||||
device/generic/goldfish/init.ranchu-net.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ranchu-net.sh \
|
device/generic/goldfish/init.ranchu-net.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.ranchu-net.sh \
|
||||||
|
device/generic/goldfish/wifi/init.wifi.sh:$(TARGET_COPY_OUT_VENDOR)/bin/init.wifi.sh \
|
||||||
device/generic/goldfish/init.ranchu.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.ranchu.rc \
|
device/generic/goldfish/init.ranchu.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/hw/init.ranchu.rc \
|
||||||
device/generic/goldfish/fstab.ranchu:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.ranchu \
|
device/generic/goldfish/fstab.ranchu:$(TARGET_COPY_OUT_VENDOR)/etc/fstab.ranchu \
|
||||||
device/generic/goldfish/ueventd.ranchu.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
|
device/generic/goldfish/ueventd.ranchu.rc:$(TARGET_COPY_OUT_VENDOR)/ueventd.rc \
|
||||||
@@ -123,7 +145,25 @@ PRODUCT_COPY_FILES += \
|
|||||||
device/generic/goldfish/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \
|
device/generic/goldfish/manifest.xml:$(TARGET_COPY_OUT_VENDOR)/manifest.xml \
|
||||||
device/generic/goldfish/data/etc/permissions/privapp-permissions-goldfish.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/privapp-permissions-goldfish.xml \
|
device/generic/goldfish/data/etc/permissions/privapp-permissions-goldfish.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/privapp-permissions-goldfish.xml \
|
||||||
device/generic/goldfish/data/etc/config.ini:config.ini \
|
device/generic/goldfish/data/etc/config.ini:config.ini \
|
||||||
frameworks/native/data/etc/android.hardware.usb.accessory.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.usb.accessory.xml
|
device/generic/goldfish/wifi/simulated_hostapd.conf:$(TARGET_COPY_OUT_VENDOR)/etc/simulated_hostapd.conf \
|
||||||
|
device/generic/goldfish/wifi/wpa_supplicant.conf:$(TARGET_COPY_OUT_VENDOR)/etc/wifi/wpa_supplicant.conf \
|
||||||
|
device/generic/goldfish/wifi/WifiConfigStore.xml:data/misc/wifi/WifiConfigStore.xml \
|
||||||
|
frameworks/native/data/etc/android.hardware.wifi.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.xml \
|
||||||
|
device/generic/goldfish/data/etc/handheld_core_hardware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/handheld_core_hardware.xml \
|
||||||
|
device/generic/goldfish/camera/media_profiles.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_profiles_V1_0.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_audio.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_audio.xml \
|
||||||
|
frameworks/av/media/libstagefright/data/media_codecs_google_telephony.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_telephony.xml \
|
||||||
|
device/generic/goldfish/camera/media_codecs_google_video.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_google_video.xml \
|
||||||
|
device/generic/goldfish/camera/media_codecs.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs.xml \
|
||||||
|
device/generic/goldfish/camera/media_codecs_performance.xml:$(TARGET_COPY_OUT_VENDOR)/etc/media_codecs_performance.xml \
|
||||||
|
frameworks/native/data/etc/android.hardware.touchscreen.multitouch.jazzhand.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.touchscreen.multitouch.jazzhand.xml \
|
||||||
|
frameworks/native/data/etc/android.hardware.camera.autofocus.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.autofocus.xml \
|
||||||
|
frameworks/native/data/etc/android.hardware.camera.full.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.camera.full.xml \
|
||||||
|
frameworks/native/data/etc/android.hardware.fingerprint.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.fingerprint.xml \
|
||||||
|
frameworks/native/data/etc/android.software.autofill.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.software.autofill.xml \
|
||||||
|
frameworks/av/media/libeffects/data/audio_effects.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_effects.conf \
|
||||||
|
device/generic/goldfish/audio_policy.conf:$(TARGET_COPY_OUT_VENDOR)/etc/audio_policy.conf
|
||||||
|
|
||||||
|
|
||||||
PRODUCT_PACKAGE_OVERLAYS := device/generic/goldfish/overlay
|
PRODUCT_PACKAGE_OVERLAYS := device/generic/goldfish/overlay
|
||||||
|
|
||||||
@@ -131,8 +171,22 @@ PRODUCT_CHARACTERISTICS := emulator
|
|||||||
|
|
||||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||||
|
|
||||||
|
|
||||||
#watchdog tiggers reboot because location service is not
|
#watchdog tiggers reboot because location service is not
|
||||||
#responding, disble it for now
|
#responding, disble it for now.
|
||||||
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
|
#still keep it on internal master as it is still working
|
||||||
config.disable_location=true
|
#once it is fixed in aosp, remove this block of comment.
|
||||||
|
#PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
|
||||||
|
#config.disable_location=true
|
||||||
|
|
||||||
|
# Enable Perfetto traced
|
||||||
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
||||||
|
persist.traced.enable=1
|
||||||
|
|
||||||
|
# enable Google-specific location features,
|
||||||
|
# like NetworkLocationProvider and LocationCollector
|
||||||
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
||||||
|
ro.com.google.locationfeatures=1
|
||||||
|
|
||||||
|
# disable setupwizard
|
||||||
|
PRODUCT_SYSTEM_DEFAULT_PROPERTIES += \
|
||||||
|
ro.setupwizard.mode=DISABLED
|
||||||
|
@@ -19,11 +19,10 @@
|
|||||||
# build quite specifically for the emulator, and might not be
|
# build quite specifically for the emulator, and might not be
|
||||||
# entirely appropriate to inherit from for on-device configurations.
|
# entirely appropriate to inherit from for on-device configurations.
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulator.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic/device.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic/device.mk)
|
||||||
|
|
||||||
include $(SRC_TARGET_DIR)/product/emulator.mk
|
|
||||||
|
|
||||||
# Overrides
|
# Overrides
|
||||||
PRODUCT_NAME := full
|
PRODUCT_NAME := full
|
||||||
PRODUCT_DEVICE := generic
|
PRODUCT_DEVICE := generic
|
||||||
|
@@ -21,10 +21,6 @@
|
|||||||
|
|
||||||
PRODUCT_PACKAGES := \
|
PRODUCT_PACKAGES := \
|
||||||
libfwdlockengine \
|
libfwdlockengine \
|
||||||
OpenWnn \
|
|
||||||
libWnnEngDic \
|
|
||||||
libWnnJpnDic \
|
|
||||||
libwnndict \
|
|
||||||
WAPPushManager
|
WAPPushManager
|
||||||
|
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
@@ -63,7 +59,7 @@ PRODUCT_LOCALES := en_US
|
|||||||
$(call inherit-product-if-exists, frameworks/base/data/sounds/AllAudio.mk)
|
$(call inherit-product-if-exists, frameworks/base/data/sounds/AllAudio.mk)
|
||||||
|
|
||||||
# Get a list of languages.
|
# Get a list of languages.
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/locales_full.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/languages_full.mk)
|
||||||
|
|
||||||
# Get everything else from the parent package
|
# Get everything else from the parent package
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_no_telephony.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/generic_no_telephony.mk)
|
||||||
|
@@ -23,11 +23,10 @@
|
|||||||
# that isn't a wifi connection. This will instruct init.rc to enable the
|
# that isn't a wifi connection. This will instruct init.rc to enable the
|
||||||
# network connection so that you can use it with ADB
|
# network connection so that you can use it with ADB
|
||||||
|
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/emulator.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_base_telephony.mk)
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_x86/device.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/board/generic_x86/device.mk)
|
||||||
|
|
||||||
include $(SRC_TARGET_DIR)/product/emulator.mk
|
|
||||||
|
|
||||||
ifdef NET_ETH0_STARTONBOOT
|
ifdef NET_ETH0_STARTONBOOT
|
||||||
PRODUCT_PROPERTY_OVERRIDES += net.eth0.startonboot=1
|
PRODUCT_PROPERTY_OVERRIDES += net.eth0.startonboot=1
|
||||||
endif
|
endif
|
||||||
|
@@ -17,6 +17,3 @@
|
|||||||
# Inherit common Android Go defaults.
|
# Inherit common Android Go defaults.
|
||||||
$(call inherit-product, build/target/product/go_defaults_common.mk)
|
$(call inherit-product, build/target/product/go_defaults_common.mk)
|
||||||
|
|
||||||
# Add the system properties.
|
|
||||||
TARGET_SYSTEM_PROP += \
|
|
||||||
build/make/target/board/go_defaults.prop
|
|
||||||
|
@@ -17,6 +17,12 @@
|
|||||||
# Inherit common Android Go defaults.
|
# Inherit common Android Go defaults.
|
||||||
$(call inherit-product, build/target/product/go_defaults_common.mk)
|
$(call inherit-product, build/target/product/go_defaults_common.mk)
|
||||||
|
|
||||||
# Add the system properties.
|
# 512MB specific properties.
|
||||||
TARGET_SYSTEM_PROP += \
|
|
||||||
build/make/target/board/go_defaults_512.prop
|
# lmkd can kill more now.
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
|
ro.lmk.medium=700 \
|
||||||
|
|
||||||
|
# madvise random in ART to reduce page cache thrashing.
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
|
dalvik.vm.madvise-random=true
|
||||||
|
@@ -14,12 +14,21 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# Sets Android Go recommended default product options.
|
# Sets Android Go recommended default values for propreties.
|
||||||
|
|
||||||
|
|
||||||
# Set lowram options
|
# Set lowram options
|
||||||
PRODUCT_PROPERTY_OVERRIDES += \
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
ro.config.low_ram=true \
|
ro.config.low_ram=true \
|
||||||
|
ro.lmk.critical_upgrade=true \
|
||||||
|
ro.lmk.upgrade_pressure=40 \
|
||||||
|
ro.lmk.downgrade_pressure=60 \
|
||||||
|
ro.lmk.kill_heaviest_task=false \
|
||||||
|
ro.statsd.enable=false
|
||||||
|
|
||||||
|
# set threshold to filter unused apps
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
|
pm.dexopt.downgrade_after_inactive_days=10
|
||||||
|
|
||||||
|
|
||||||
# Speed profile services and wifi-service to reduce RAM and storage.
|
# Speed profile services and wifi-service to reduce RAM and storage.
|
||||||
PRODUCT_SYSTEM_SERVER_COMPILER_FILTER := speed-profile
|
PRODUCT_SYSTEM_SERVER_COMPILER_FILTER := speed-profile
|
||||||
@@ -33,6 +42,22 @@ PRODUCT_ALWAYS_PREOPT_EXTRACTED_APK := true
|
|||||||
PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := true
|
PRODUCT_USE_PROFILE_FOR_BOOT_IMAGE := true
|
||||||
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION := frameworks/base/config/boot-image-profile.txt
|
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION := frameworks/base/config/boot-image-profile.txt
|
||||||
|
|
||||||
|
# set the compiler filter for shared apks to quicken.
|
||||||
|
# Rationale: speed has a lot of dex code expansion, it uses more ram and space
|
||||||
|
# compared to quicken. Using quicken for shared APKs on Go devices may save RAM.
|
||||||
|
# Note that this is a trade-off: here we trade clean pages for dirty pages,
|
||||||
|
# extra cpu and battery. That's because the quicken files will be jit-ed in all
|
||||||
|
# the processes that load of shared apk and the code cache is not shared.
|
||||||
|
# Some notable apps that will be affected by this are gms and chrome.
|
||||||
|
# b/65591595.
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
|
pm.dexopt.shared=quicken
|
||||||
|
|
||||||
|
# Default heap sizes. Allow up to 256m for large heaps to make sure a single app
|
||||||
|
# doesn't take all of the RAM.
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += dalvik.vm.heapgrowthlimit=128m
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += dalvik.vm.heapsize=256m
|
||||||
|
|
||||||
# Do not generate libartd.
|
# Do not generate libartd.
|
||||||
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
|
PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
|
||||||
|
|
||||||
@@ -40,7 +65,3 @@ PRODUCT_ART_TARGET_INCLUDE_DEBUG_BUILD := false
|
|||||||
# the size of the system image. This has no bearing on stack traces, but will
|
# the size of the system image. This has no bearing on stack traces, but will
|
||||||
# leave less information available via JDWP.
|
# leave less information available via JDWP.
|
||||||
PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true
|
PRODUCT_MINIMIZE_JAVA_DEBUG_INFO := true
|
||||||
|
|
||||||
# Add the system properties.
|
|
||||||
TARGET_SYSTEM_PROP += \
|
|
||||||
build/make/target/board/go_defaults_common.prop
|
|
||||||
|
@@ -59,6 +59,7 @@ PRODUCT_PACKAGES += \
|
|||||||
InputDevices \
|
InputDevices \
|
||||||
KeyChain \
|
KeyChain \
|
||||||
LatinIME \
|
LatinIME \
|
||||||
|
Launcher3QuickStep \
|
||||||
librs_jni \
|
librs_jni \
|
||||||
ManagedProvisioning \
|
ManagedProvisioning \
|
||||||
MmsService \
|
MmsService \
|
||||||
@@ -76,7 +77,9 @@ PRODUCT_PACKAGES += \
|
|||||||
screenrecord \
|
screenrecord \
|
||||||
SecureElement \
|
SecureElement \
|
||||||
Settings \
|
Settings \
|
||||||
|
SettingsIntelligence \
|
||||||
SharedStorageBackup \
|
SharedStorageBackup \
|
||||||
|
SimAppDialog \
|
||||||
StorageManager \
|
StorageManager \
|
||||||
SystemUI \
|
SystemUI \
|
||||||
Telecom \
|
Telecom \
|
||||||
@@ -102,3 +105,4 @@ PRODUCT_PROPERTY_OVERRIDES += \
|
|||||||
ro.carrier=unknown \
|
ro.carrier=unknown \
|
||||||
ro.config.notification_sound=OnTheHunt.ogg \
|
ro.config.notification_sound=OnTheHunt.ogg \
|
||||||
ro.config.alarm_alert=Alarm_Classic.ogg
|
ro.config.alarm_alert=Alarm_Classic.ogg
|
||||||
|
|
||||||
|
@@ -21,6 +21,9 @@
|
|||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/media_vendor.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/media_vendor.mk)
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
audio.primary.default \
|
audio.primary.default \
|
||||||
|
DisplayCutoutEmulationCornerOverlay \
|
||||||
|
DisplayCutoutEmulationDoubleOverlay \
|
||||||
|
DisplayCutoutEmulationTallOverlay \
|
||||||
local_time.default \
|
local_time.default \
|
||||||
power.default \
|
power.default \
|
||||||
SysuiDarkThemeOverlay \
|
SysuiDarkThemeOverlay \
|
||||||
|
@@ -23,6 +23,7 @@ PRODUCT_LOCALES := \
|
|||||||
am_ET \
|
am_ET \
|
||||||
ar_EG \
|
ar_EG \
|
||||||
ar_XB \
|
ar_XB \
|
||||||
|
as_IN \
|
||||||
az_AZ \
|
az_AZ \
|
||||||
be_BY \
|
be_BY \
|
||||||
bg_BG \
|
bg_BG \
|
||||||
@@ -76,6 +77,7 @@ PRODUCT_LOCALES := \
|
|||||||
nb_NO \
|
nb_NO \
|
||||||
ne_NP \
|
ne_NP \
|
||||||
nl_NL \
|
nl_NL \
|
||||||
|
or_IN \
|
||||||
pa_IN \
|
pa_IN \
|
||||||
pl_PL \
|
pl_PL \
|
||||||
pt_BR \
|
pt_BR \
|
||||||
|
@@ -1,3 +0,0 @@
|
|||||||
PRODUCT_LOCALES := en_US cs_CZ da_DK de_AT de_CH de_DE de_LI el_GR en_AU en_CA en_GB en_NZ en_SG eo_EU es_ES fr_CA fr_CH fr_BE fr_FR it_CH it_IT ja_JP ko_KR nb_NO nl_BE nl_NL pl_PL pt_PT ru_RU sv_SE tr_TR zh_CN zh_HK zh_TW am_ET hi_IN
|
|
||||||
|
|
||||||
$(call inherit-product, build/target/product/languages_full.mk)
|
|
@@ -25,5 +25,6 @@ PRODUCT_SHIPPING_API_LEVEL := 28
|
|||||||
|
|
||||||
PRODUCT_ENFORCE_ARTIFACT_PATH_REQUIREMENTS := true
|
PRODUCT_ENFORCE_ARTIFACT_PATH_REQUIREMENTS := true
|
||||||
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
|
PRODUCT_ARTIFACT_PATH_REQUIREMENT_WHITELIST := \
|
||||||
root/init.zygote64_32.rc \
|
root/init.zygote64_32.rc \
|
||||||
system/etc/seccomp_policy/mediacodec.policy \
|
system/etc/seccomp_policy/crash_dump.arm.policy \
|
||||||
|
system/etc/seccomp_policy/mediacodec.policy \
|
||||||
|
@@ -14,7 +14,8 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
#
|
#
|
||||||
|
|
||||||
# TODO(hansson): change inheritance to generic_no_telephony
|
# This makefile is the basis of a generic system image for a handheld
|
||||||
|
# device with no telephony.
|
||||||
$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_system.mk)
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/handheld_system.mk)
|
||||||
|
|
||||||
PRODUCT_NAME := mainline_system
|
PRODUCT_NAME := mainline_system
|
||||||
|
@@ -70,7 +70,7 @@ PRODUCT_COPY_FILES += \
|
|||||||
frameworks/native/data/etc/android.software.preview_sdk.xml:system/etc/permissions/android.software.preview_sdk.xml
|
frameworks/native/data/etc/android.software.preview_sdk.xml:system/etc/permissions/android.software.preview_sdk.xml
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# The order of PRODUCT_SYSTEM_SERVER_JARS matters.
|
# The order here is the same order they end up on the classpath, so it matters.
|
||||||
PRODUCT_SYSTEM_SERVER_JARS := \
|
PRODUCT_SYSTEM_SERVER_JARS := \
|
||||||
services \
|
services \
|
||||||
ethernet-service \
|
ethernet-service \
|
||||||
@@ -97,3 +97,7 @@ endif
|
|||||||
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
|
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += \
|
||||||
ro.logd.size.stats=64K \
|
ro.logd.size.stats=64K \
|
||||||
log.tag.stats_log=I
|
log.tag.stats_log=I
|
||||||
|
|
||||||
|
# Enable CFI for security-sensitive components
|
||||||
|
$(call inherit-product, $(SRC_TARGET_DIR)/product/cfi-common.mk)
|
||||||
|
$(call inherit-product-if-exists, vendor/google/products/cfi-vendor.mk)
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 21
|
PRODUCT_SHIPPING_API_LEVEL := 21
|
||||||
|
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 22
|
PRODUCT_SHIPPING_API_LEVEL := 22
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 23
|
PRODUCT_SHIPPING_API_LEVEL := 23
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 24
|
PRODUCT_SHIPPING_API_LEVEL := 24
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 25
|
PRODUCT_SHIPPING_API_LEVEL := 25
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 26
|
PRODUCT_SHIPPING_API_LEVEL := 26
|
||||||
|
@@ -1,2 +1,2 @@
|
|||||||
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launced on.
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
PRODUCT_SHIPPING_API_LEVEL := 27
|
PRODUCT_SHIPPING_API_LEVEL := 27
|
||||||
|
2
target/product/product_launched_with_p.mk
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
#PRODUCT_SHIPPING_API_LEVEL indicates the first api level, device has been commercially launched on.
|
||||||
|
PRODUCT_SHIPPING_API_LEVEL := 28
|
45
target/product/profile_boot_common.mk
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
#
|
||||||
|
# Copyright 2018 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Use an empty profile to make non of the boot image be AOT compiled (for now).
|
||||||
|
# Note that we could use a previous profile but we will miss the opportunity to
|
||||||
|
# remove classes that are no longer in use.
|
||||||
|
# Ideally we would just generate an empty boot.art but we don't have the build
|
||||||
|
# support to separate the image from the compile code.
|
||||||
|
PRODUCT_DEX_PREOPT_BOOT_IMAGE_PROFILE_LOCATION := build/target/product/empty-profile
|
||||||
|
PRODUCT_DEX_PREOPT_BOOT_FLAGS := --count-hotness-in-compiled-code
|
||||||
|
DEX_PREOPT_DEFAULT := nostripping
|
||||||
|
|
||||||
|
# Disable uncompressing priv apps so that there is enough space to build the system partition.
|
||||||
|
DONT_UNCOMPRESS_PRIV_APPS_DEXS := true
|
||||||
|
|
||||||
|
# Use an empty preloaded-classes list.
|
||||||
|
PRODUCT_COPY_FILES += \
|
||||||
|
build/target/product/empty-preloaded-classes:system/etc/preloaded-classes
|
||||||
|
|
||||||
|
# Boot image property overrides.
|
||||||
|
PRODUCT_PROPERTY_OVERRIDES += \
|
||||||
|
dalvik.vm.jitinitialsize=32m \
|
||||||
|
dalvik.vm.jitmaxsize=32m \
|
||||||
|
dalvik.vm.usejitprofiles=true \
|
||||||
|
dalvik.vm.hot-startup-method-samples=256 \
|
||||||
|
dalvik.vm.profilesystemserver=true \
|
||||||
|
dalvik.vm.profilebootimage=true
|
||||||
|
|
||||||
|
# Use speed compiler filter since system server doesn't have JIT.
|
||||||
|
PRODUCT_DEX_PREOPT_BOOT_FLAGS += --compiler-filter=speed
|
||||||
|
|
||||||
|
PRODUCT_DIST_BOOT_AND_SYSTEM_JARS := true
|
@@ -27,7 +27,7 @@ PRODUCT_PACKAGES += \
|
|||||||
|
|
||||||
# Additional mixins to the boot classpath.
|
# Additional mixins to the boot classpath.
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
legacy-test \
|
android.test.base \
|
||||||
|
|
||||||
# Why are we pulling in ext, which is frameworks/base, depending on tagsoup and nist-sip?
|
# Why are we pulling in ext, which is frameworks/base, depending on tagsoup and nist-sip?
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
|
@@ -20,10 +20,6 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_x86.mk)
|
|||||||
-include sdk/build/product_sdk.mk
|
-include sdk/build/product_sdk.mk
|
||||||
-include development/build/product_sdk.mk
|
-include development/build/product_sdk.mk
|
||||||
|
|
||||||
# keep this apk for sdk targets for now
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
EmulatorSmokeTests
|
|
||||||
|
|
||||||
# Overrides
|
# Overrides
|
||||||
PRODUCT_BRAND := Android
|
PRODUCT_BRAND := Android
|
||||||
PRODUCT_NAME := sdk_phone_x86
|
PRODUCT_NAME := sdk_phone_x86
|
||||||
|
@@ -20,10 +20,6 @@ $(call inherit-product, $(SRC_TARGET_DIR)/product/aosp_x86_64.mk)
|
|||||||
-include sdk/build/product_sdk.mk
|
-include sdk/build/product_sdk.mk
|
||||||
-include development/build/product_sdk.mk
|
-include development/build/product_sdk.mk
|
||||||
|
|
||||||
# keep this apk for sdk targets for now
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
EmulatorSmokeTests
|
|
||||||
|
|
||||||
# Overrides
|
# Overrides
|
||||||
PRODUCT_BRAND := Android
|
PRODUCT_BRAND := Android
|
||||||
PRODUCT_NAME := sdk_phone_x86_64
|
PRODUCT_NAME := sdk_phone_x86_64
|
||||||
|
@@ -29,22 +29,11 @@ PRODUCT_USE_DYNAMIC_PARTITION_SIZE := true
|
|||||||
# Split selinux policy
|
# Split selinux policy
|
||||||
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
PRODUCT_FULL_TREBLE_OVERRIDE := true
|
||||||
|
|
||||||
# vintf utility:
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
vintf
|
|
||||||
|
|
||||||
# The Messaging app:
|
# The Messaging app:
|
||||||
# Needed for android.telecom.cts.ExtendedInCallServiceTest#testOnCannedTextResponsesLoaded
|
# Needed for android.telecom.cts.ExtendedInCallServiceTest#testOnCannedTextResponsesLoaded
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
messaging
|
messaging
|
||||||
|
|
||||||
# All VNDK libraries (HAL interfaces, VNDK, VNDK-SP, LL-NDK)
|
|
||||||
PRODUCT_PACKAGES += vndk_package
|
|
||||||
|
|
||||||
# SP-NDK:
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
libvulkan \
|
|
||||||
|
|
||||||
# The following policy XML files are used as fallback for
|
# The following policy XML files are used as fallback for
|
||||||
# vendors/devices not using XML to configure audio policy.
|
# vendors/devices not using XML to configure audio policy.
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
@@ -54,20 +43,6 @@ PRODUCT_COPY_FILES += \
|
|||||||
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:system/etc/audio_policy_volumes.xml \
|
frameworks/av/services/audiopolicy/config/audio_policy_volumes.xml:system/etc/audio_policy_volumes.xml \
|
||||||
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
|
frameworks/av/services/audiopolicy/config/default_volume_tables.xml:system/etc/default_volume_tables.xml \
|
||||||
|
|
||||||
# Bluetooth:
|
|
||||||
# audio.a2dp.default is a system module. Generic system image includes
|
|
||||||
# audio.a2dp.default to support A2DP if board has the capability.
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
audio.a2dp.default
|
|
||||||
|
|
||||||
# Net:
|
|
||||||
# Vendors can use the platform-provided network configuration utilities (ip,
|
|
||||||
# iptable, etc.) to configure the Linux networking stack, but these utilities
|
|
||||||
# do not yet include a HIDL interface wrapper. This is a solution on
|
|
||||||
# Android O.
|
|
||||||
PRODUCT_PACKAGES += \
|
|
||||||
netutils-wrapper-1.0
|
|
||||||
|
|
||||||
# Telephony:
|
# Telephony:
|
||||||
# Provide a default APN configuration
|
# Provide a default APN configuration
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
@@ -87,3 +62,6 @@ PRODUCT_COPY_FILES += \
|
|||||||
# Name space configuration file for non-enforcing VNDK
|
# Name space configuration file for non-enforcing VNDK
|
||||||
PRODUCT_PACKAGES += \
|
PRODUCT_PACKAGES += \
|
||||||
ld.config.vndk_lite.txt
|
ld.config.vndk_lite.txt
|
||||||
|
|
||||||
|
# Support addtional O-MR1 vendor interface
|
||||||
|
PRODUCT_EXTRA_VNDK_VERSIONS := 27
|
||||||
|
252
target/product/vndk/28.txt
Normal file
@@ -0,0 +1,252 @@
|
|||||||
|
LLNDK: libEGL.so
|
||||||
|
LLNDK: libGLESv1_CM.so
|
||||||
|
LLNDK: libGLESv2.so
|
||||||
|
LLNDK: libGLESv3.so
|
||||||
|
LLNDK: libRS.so
|
||||||
|
LLNDK: libandroid_net.so
|
||||||
|
LLNDK: libc.so
|
||||||
|
LLNDK: libdl.so
|
||||||
|
LLNDK: libft2.so
|
||||||
|
LLNDK: liblog.so
|
||||||
|
LLNDK: libm.so
|
||||||
|
LLNDK: libmediandk.so
|
||||||
|
LLNDK: libnativewindow.so
|
||||||
|
LLNDK: libneuralnetworks.so
|
||||||
|
LLNDK: libsync.so
|
||||||
|
LLNDK: libvndksupport.so
|
||||||
|
LLNDK: libvulkan.so
|
||||||
|
VNDK-SP: android.hardware.graphics.common@1.0.so
|
||||||
|
VNDK-SP: android.hardware.graphics.common@1.1.so
|
||||||
|
VNDK-SP: android.hardware.graphics.mapper@2.0.so
|
||||||
|
VNDK-SP: android.hardware.graphics.mapper@2.1.so
|
||||||
|
VNDK-SP: android.hardware.renderscript@1.0.so
|
||||||
|
VNDK-SP: android.hidl.memory.token@1.0.so
|
||||||
|
VNDK-SP: android.hidl.memory@1.0.so
|
||||||
|
VNDK-SP: android.hidl.memory@1.0-impl.so
|
||||||
|
VNDK-SP: libRSCpuRef.so
|
||||||
|
VNDK-SP: libRSDriver.so
|
||||||
|
VNDK-SP: libRS_internal.so
|
||||||
|
VNDK-SP: libbacktrace.so
|
||||||
|
VNDK-SP: libbase.so
|
||||||
|
VNDK-SP: libbcinfo.so
|
||||||
|
VNDK-SP: libblas.so
|
||||||
|
VNDK-SP: libc++.so
|
||||||
|
VNDK-SP: libcompiler_rt.so
|
||||||
|
VNDK-SP: libcutils.so
|
||||||
|
VNDK-SP: libhardware.so
|
||||||
|
VNDK-SP: libhidlbase.so
|
||||||
|
VNDK-SP: libhidlmemory.so
|
||||||
|
VNDK-SP: libhidltransport.so
|
||||||
|
VNDK-SP: libhwbinder.so
|
||||||
|
VNDK-SP: libhwbinder_noltopgo.so
|
||||||
|
VNDK-SP: libion.so
|
||||||
|
VNDK-SP: liblzma.so
|
||||||
|
VNDK-SP: libunwind.so
|
||||||
|
VNDK-SP: libunwindstack.so
|
||||||
|
VNDK-SP: libutils.so
|
||||||
|
VNDK-SP: libutilscallstack.so
|
||||||
|
VNDK-SP: libz.so
|
||||||
|
VNDK-core: android.frameworks.displayservice@1.0.so
|
||||||
|
VNDK-core: android.frameworks.schedulerservice@1.0.so
|
||||||
|
VNDK-core: android.frameworks.sensorservice@1.0.so
|
||||||
|
VNDK-core: android.frameworks.vr.composer@1.0.so
|
||||||
|
VNDK-core: android.hardware.audio.common-util.so
|
||||||
|
VNDK-core: android.hardware.audio.common@2.0.so
|
||||||
|
VNDK-core: android.hardware.audio.common@2.0-util.so
|
||||||
|
VNDK-core: android.hardware.audio.common@4.0.so
|
||||||
|
VNDK-core: android.hardware.audio.common@4.0-util.so
|
||||||
|
VNDK-core: android.hardware.audio.effect@2.0.so
|
||||||
|
VNDK-core: android.hardware.audio.effect@4.0.so
|
||||||
|
VNDK-core: android.hardware.audio@2.0.so
|
||||||
|
VNDK-core: android.hardware.audio@4.0.so
|
||||||
|
VNDK-core: android.hardware.authsecret@1.0.so
|
||||||
|
VNDK-core: android.hardware.automotive.audiocontrol@1.0.so
|
||||||
|
VNDK-core: android.hardware.automotive.evs@1.0.so
|
||||||
|
VNDK-core: android.hardware.automotive.vehicle@2.0.so
|
||||||
|
VNDK-core: android.hardware.biometrics.fingerprint@2.1.so
|
||||||
|
VNDK-core: android.hardware.bluetooth.a2dp@1.0.so
|
||||||
|
VNDK-core: android.hardware.bluetooth@1.0.so
|
||||||
|
VNDK-core: android.hardware.boot@1.0.so
|
||||||
|
VNDK-core: android.hardware.broadcastradio@1.0.so
|
||||||
|
VNDK-core: android.hardware.broadcastradio@1.1.so
|
||||||
|
VNDK-core: android.hardware.broadcastradio@2.0.so
|
||||||
|
VNDK-core: android.hardware.camera.common@1.0.so
|
||||||
|
VNDK-core: android.hardware.camera.device@1.0.so
|
||||||
|
VNDK-core: android.hardware.camera.device@3.2.so
|
||||||
|
VNDK-core: android.hardware.camera.device@3.3.so
|
||||||
|
VNDK-core: android.hardware.camera.device@3.4.so
|
||||||
|
VNDK-core: android.hardware.camera.metadata@3.2.so
|
||||||
|
VNDK-core: android.hardware.camera.metadata@3.3.so
|
||||||
|
VNDK-core: android.hardware.camera.provider@2.4.so
|
||||||
|
VNDK-core: android.hardware.cas.native@1.0.so
|
||||||
|
VNDK-core: android.hardware.cas@1.0.so
|
||||||
|
VNDK-core: android.hardware.configstore-utils.so
|
||||||
|
VNDK-core: android.hardware.configstore@1.0.so
|
||||||
|
VNDK-core: android.hardware.configstore@1.1.so
|
||||||
|
VNDK-core: android.hardware.confirmationui-support-lib.so
|
||||||
|
VNDK-core: android.hardware.confirmationui@1.0.so
|
||||||
|
VNDK-core: android.hardware.contexthub@1.0.so
|
||||||
|
VNDK-core: android.hardware.drm@1.0.so
|
||||||
|
VNDK-core: android.hardware.drm@1.1.so
|
||||||
|
VNDK-core: android.hardware.dumpstate@1.0.so
|
||||||
|
VNDK-core: android.hardware.gatekeeper@1.0.so
|
||||||
|
VNDK-core: android.hardware.gnss@1.0.so
|
||||||
|
VNDK-core: android.hardware.gnss@1.1.so
|
||||||
|
VNDK-core: android.hardware.graphics.allocator@2.0.so
|
||||||
|
VNDK-core: android.hardware.graphics.bufferqueue@1.0.so
|
||||||
|
VNDK-core: android.hardware.graphics.composer@2.1.so
|
||||||
|
VNDK-core: android.hardware.graphics.composer@2.2.so
|
||||||
|
VNDK-core: android.hardware.health@1.0.so
|
||||||
|
VNDK-core: android.hardware.health@2.0.so
|
||||||
|
VNDK-core: android.hardware.ir@1.0.so
|
||||||
|
VNDK-core: android.hardware.keymaster@3.0.so
|
||||||
|
VNDK-core: android.hardware.keymaster@4.0.so
|
||||||
|
VNDK-core: android.hardware.light@2.0.so
|
||||||
|
VNDK-core: android.hardware.media.bufferpool@1.0.so
|
||||||
|
VNDK-core: android.hardware.media.omx@1.0.so
|
||||||
|
VNDK-core: android.hardware.media@1.0.so
|
||||||
|
VNDK-core: android.hardware.memtrack@1.0.so
|
||||||
|
VNDK-core: android.hardware.neuralnetworks@1.0.so
|
||||||
|
VNDK-core: android.hardware.neuralnetworks@1.1.so
|
||||||
|
VNDK-core: android.hardware.nfc@1.0.so
|
||||||
|
VNDK-core: android.hardware.nfc@1.1.so
|
||||||
|
VNDK-core: android.hardware.oemlock@1.0.so
|
||||||
|
VNDK-core: android.hardware.power@1.0.so
|
||||||
|
VNDK-core: android.hardware.power@1.1.so
|
||||||
|
VNDK-core: android.hardware.power@1.2.so
|
||||||
|
VNDK-core: android.hardware.radio.config@1.0.so
|
||||||
|
VNDK-core: android.hardware.radio.deprecated@1.0.so
|
||||||
|
VNDK-core: android.hardware.radio@1.0.so
|
||||||
|
VNDK-core: android.hardware.radio@1.1.so
|
||||||
|
VNDK-core: android.hardware.radio@1.2.so
|
||||||
|
VNDK-core: android.hardware.secure_element@1.0.so
|
||||||
|
VNDK-core: android.hardware.sensors@1.0.so
|
||||||
|
VNDK-core: android.hardware.soundtrigger@2.0.so
|
||||||
|
VNDK-core: android.hardware.soundtrigger@2.0-core.so
|
||||||
|
VNDK-core: android.hardware.soundtrigger@2.1.so
|
||||||
|
VNDK-core: android.hardware.tetheroffload.config@1.0.so
|
||||||
|
VNDK-core: android.hardware.tetheroffload.control@1.0.so
|
||||||
|
VNDK-core: android.hardware.thermal@1.0.so
|
||||||
|
VNDK-core: android.hardware.thermal@1.1.so
|
||||||
|
VNDK-core: android.hardware.tv.cec@1.0.so
|
||||||
|
VNDK-core: android.hardware.tv.input@1.0.so
|
||||||
|
VNDK-core: android.hardware.usb.gadget@1.0.so
|
||||||
|
VNDK-core: android.hardware.usb@1.0.so
|
||||||
|
VNDK-core: android.hardware.usb@1.1.so
|
||||||
|
VNDK-core: android.hardware.vibrator@1.0.so
|
||||||
|
VNDK-core: android.hardware.vibrator@1.1.so
|
||||||
|
VNDK-core: android.hardware.vibrator@1.2.so
|
||||||
|
VNDK-core: android.hardware.vr@1.0.so
|
||||||
|
VNDK-core: android.hardware.weaver@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.hostapd@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.offload@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.supplicant@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.supplicant@1.1.so
|
||||||
|
VNDK-core: android.hardware.wifi@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi@1.1.so
|
||||||
|
VNDK-core: android.hardware.wifi@1.2.so
|
||||||
|
VNDK-core: android.hidl.allocator@1.0.so
|
||||||
|
VNDK-core: android.hidl.memory.block@1.0.so
|
||||||
|
VNDK-core: android.hidl.token@1.0.so
|
||||||
|
VNDK-core: android.hidl.token@1.0-utils.so
|
||||||
|
VNDK-core: android.system.net.netd@1.0.so
|
||||||
|
VNDK-core: android.system.net.netd@1.1.so
|
||||||
|
VNDK-core: android.system.wifi.keystore@1.0.so
|
||||||
|
VNDK-core: libadf.so
|
||||||
|
VNDK-core: libaudioroute.so
|
||||||
|
VNDK-core: libaudioutils.so
|
||||||
|
VNDK-core: libbinder.so
|
||||||
|
VNDK-core: libcamera_metadata.so
|
||||||
|
VNDK-core: libcap.so
|
||||||
|
VNDK-core: libcn-cbor.so
|
||||||
|
VNDK-core: libcrypto.so
|
||||||
|
VNDK-core: libcrypto_utils.so
|
||||||
|
VNDK-core: libcurl.so
|
||||||
|
VNDK-core: libdiskconfig.so
|
||||||
|
VNDK-core: libdumpstateutil.so
|
||||||
|
VNDK-core: libevent.so
|
||||||
|
VNDK-core: libexif.so
|
||||||
|
VNDK-core: libexpat.so
|
||||||
|
VNDK-core: libfmq.so
|
||||||
|
VNDK-core: libgatekeeper.so
|
||||||
|
VNDK-core: libgui.so
|
||||||
|
VNDK-core: libhardware_legacy.so
|
||||||
|
VNDK-core: libhidlallocatorutils.so
|
||||||
|
VNDK-core: libhidlcache.so
|
||||||
|
VNDK-core: libjpeg.so
|
||||||
|
VNDK-core: libkeymaster_messages.so
|
||||||
|
VNDK-core: libkeymaster_portable.so
|
||||||
|
VNDK-core: libldacBT_abr.so
|
||||||
|
VNDK-core: libldacBT_enc.so
|
||||||
|
VNDK-core: liblz4.so
|
||||||
|
VNDK-core: libmedia_helper.so
|
||||||
|
VNDK-core: libmedia_omx.so
|
||||||
|
VNDK-core: libmemtrack.so
|
||||||
|
VNDK-core: libminijail.so
|
||||||
|
VNDK-core: libmkbootimg_abi_check.so
|
||||||
|
VNDK-core: libnetutils.so
|
||||||
|
VNDK-core: libnl.so
|
||||||
|
VNDK-core: libopus.so
|
||||||
|
VNDK-core: libpagemap.so
|
||||||
|
VNDK-core: libpcre2.so
|
||||||
|
VNDK-core: libpiex.so
|
||||||
|
VNDK-core: libpng.so
|
||||||
|
VNDK-core: libpower.so
|
||||||
|
VNDK-core: libprocinfo.so
|
||||||
|
VNDK-core: libprotobuf-cpp-full.so
|
||||||
|
VNDK-core: libprotobuf-cpp-lite.so
|
||||||
|
VNDK-core: libpuresoftkeymasterdevice.so
|
||||||
|
VNDK-core: libradio_metadata.so
|
||||||
|
VNDK-core: libselinux.so
|
||||||
|
VNDK-core: libsoftkeymasterdevice.so
|
||||||
|
VNDK-core: libspeexresampler.so
|
||||||
|
VNDK-core: libsqlite.so
|
||||||
|
VNDK-core: libssl.so
|
||||||
|
VNDK-core: libstagefright_amrnb_common.so
|
||||||
|
VNDK-core: libstagefright_bufferqueue_helper.so
|
||||||
|
VNDK-core: libstagefright_enc_common.so
|
||||||
|
VNDK-core: libstagefright_flacdec.so
|
||||||
|
VNDK-core: libstagefright_foundation.so
|
||||||
|
VNDK-core: libstagefright_omx.so
|
||||||
|
VNDK-core: libstagefright_omx_utils.so
|
||||||
|
VNDK-core: libstagefright_soft_aacdec.so
|
||||||
|
VNDK-core: libstagefright_soft_aacenc.so
|
||||||
|
VNDK-core: libstagefright_soft_amrdec.so
|
||||||
|
VNDK-core: libstagefright_soft_amrnbenc.so
|
||||||
|
VNDK-core: libstagefright_soft_amrwbenc.so
|
||||||
|
VNDK-core: libstagefright_soft_avcdec.so
|
||||||
|
VNDK-core: libstagefright_soft_avcenc.so
|
||||||
|
VNDK-core: libstagefright_soft_flacdec.so
|
||||||
|
VNDK-core: libstagefright_soft_flacenc.so
|
||||||
|
VNDK-core: libstagefright_soft_g711dec.so
|
||||||
|
VNDK-core: libstagefright_soft_gsmdec.so
|
||||||
|
VNDK-core: libstagefright_soft_hevcdec.so
|
||||||
|
VNDK-core: libstagefright_soft_mp3dec.so
|
||||||
|
VNDK-core: libstagefright_soft_mpeg2dec.so
|
||||||
|
VNDK-core: libstagefright_soft_mpeg4dec.so
|
||||||
|
VNDK-core: libstagefright_soft_mpeg4enc.so
|
||||||
|
VNDK-core: libstagefright_soft_opusdec.so
|
||||||
|
VNDK-core: libstagefright_soft_rawdec.so
|
||||||
|
VNDK-core: libstagefright_soft_vorbisdec.so
|
||||||
|
VNDK-core: libstagefright_soft_vpxdec.so
|
||||||
|
VNDK-core: libstagefright_soft_vpxenc.so
|
||||||
|
VNDK-core: libstagefright_xmlparser.so
|
||||||
|
VNDK-core: libsuspend.so
|
||||||
|
VNDK-core: libsysutils.so
|
||||||
|
VNDK-core: libtinyalsa.so
|
||||||
|
VNDK-core: libtinyxml2.so
|
||||||
|
VNDK-core: libui.so
|
||||||
|
VNDK-core: libusbhost.so
|
||||||
|
VNDK-core: libvixl-arm.so
|
||||||
|
VNDK-core: libvixl-arm64.so
|
||||||
|
VNDK-core: libvorbisidec.so
|
||||||
|
VNDK-core: libwifi-system-iface.so
|
||||||
|
VNDK-core: libxml2.so
|
||||||
|
VNDK-core: libyuv.so
|
||||||
|
VNDK-core: libziparchive.so
|
||||||
|
VNDK-private: libbacktrace.so
|
||||||
|
VNDK-private: libblas.so
|
||||||
|
VNDK-private: libcompiler_rt.so
|
||||||
|
VNDK-private: libft2.so
|
||||||
|
VNDK-private: libgui.so
|
||||||
|
VNDK-private: libunwind.so
|
@@ -16,7 +16,9 @@ LLNDK: libsync.so
|
|||||||
LLNDK: libvndksupport.so
|
LLNDK: libvndksupport.so
|
||||||
LLNDK: libvulkan.so
|
LLNDK: libvulkan.so
|
||||||
VNDK-SP: android.hardware.graphics.common@1.0.so
|
VNDK-SP: android.hardware.graphics.common@1.0.so
|
||||||
|
VNDK-SP: android.hardware.graphics.common@1.1.so
|
||||||
VNDK-SP: android.hardware.graphics.mapper@2.0.so
|
VNDK-SP: android.hardware.graphics.mapper@2.0.so
|
||||||
|
VNDK-SP: android.hardware.graphics.mapper@2.1.so
|
||||||
VNDK-SP: android.hardware.renderscript@1.0.so
|
VNDK-SP: android.hardware.renderscript@1.0.so
|
||||||
VNDK-SP: android.hidl.memory.token@1.0.so
|
VNDK-SP: android.hidl.memory.token@1.0.so
|
||||||
VNDK-SP: android.hidl.memory@1.0.so
|
VNDK-SP: android.hidl.memory@1.0.so
|
||||||
@@ -36,6 +38,7 @@ VNDK-SP: libhidlbase.so
|
|||||||
VNDK-SP: libhidlmemory.so
|
VNDK-SP: libhidlmemory.so
|
||||||
VNDK-SP: libhidltransport.so
|
VNDK-SP: libhidltransport.so
|
||||||
VNDK-SP: libhwbinder.so
|
VNDK-SP: libhwbinder.so
|
||||||
|
VNDK-SP: libhwbinder_noltopgo.so
|
||||||
VNDK-SP: libion.so
|
VNDK-SP: libion.so
|
||||||
VNDK-SP: liblzma.so
|
VNDK-SP: liblzma.so
|
||||||
VNDK-SP: libunwind.so
|
VNDK-SP: libunwind.so
|
||||||
@@ -47,10 +50,17 @@ VNDK-core: android.frameworks.displayservice@1.0.so
|
|||||||
VNDK-core: android.frameworks.schedulerservice@1.0.so
|
VNDK-core: android.frameworks.schedulerservice@1.0.so
|
||||||
VNDK-core: android.frameworks.sensorservice@1.0.so
|
VNDK-core: android.frameworks.sensorservice@1.0.so
|
||||||
VNDK-core: android.frameworks.vr.composer@1.0.so
|
VNDK-core: android.frameworks.vr.composer@1.0.so
|
||||||
|
VNDK-core: android.hardware.audio.common-util.so
|
||||||
VNDK-core: android.hardware.audio.common@2.0.so
|
VNDK-core: android.hardware.audio.common@2.0.so
|
||||||
VNDK-core: android.hardware.audio.common@2.0-util.so
|
VNDK-core: android.hardware.audio.common@2.0-util.so
|
||||||
|
VNDK-core: android.hardware.audio.common@4.0.so
|
||||||
|
VNDK-core: android.hardware.audio.common@4.0-util.so
|
||||||
VNDK-core: android.hardware.audio.effect@2.0.so
|
VNDK-core: android.hardware.audio.effect@2.0.so
|
||||||
|
VNDK-core: android.hardware.audio.effect@4.0.so
|
||||||
VNDK-core: android.hardware.audio@2.0.so
|
VNDK-core: android.hardware.audio@2.0.so
|
||||||
|
VNDK-core: android.hardware.audio@4.0.so
|
||||||
|
VNDK-core: android.hardware.authsecret@1.0.so
|
||||||
|
VNDK-core: android.hardware.automotive.audiocontrol@1.0.so
|
||||||
VNDK-core: android.hardware.automotive.evs@1.0.so
|
VNDK-core: android.hardware.automotive.evs@1.0.so
|
||||||
VNDK-core: android.hardware.automotive.vehicle@2.0.so
|
VNDK-core: android.hardware.automotive.vehicle@2.0.so
|
||||||
VNDK-core: android.hardware.biometrics.fingerprint@2.1.so
|
VNDK-core: android.hardware.biometrics.fingerprint@2.1.so
|
||||||
@@ -59,29 +69,40 @@ VNDK-core: android.hardware.bluetooth@1.0.so
|
|||||||
VNDK-core: android.hardware.boot@1.0.so
|
VNDK-core: android.hardware.boot@1.0.so
|
||||||
VNDK-core: android.hardware.broadcastradio@1.0.so
|
VNDK-core: android.hardware.broadcastradio@1.0.so
|
||||||
VNDK-core: android.hardware.broadcastradio@1.1.so
|
VNDK-core: android.hardware.broadcastradio@1.1.so
|
||||||
|
VNDK-core: android.hardware.broadcastradio@2.0.so
|
||||||
VNDK-core: android.hardware.camera.common@1.0.so
|
VNDK-core: android.hardware.camera.common@1.0.so
|
||||||
VNDK-core: android.hardware.camera.device@1.0.so
|
VNDK-core: android.hardware.camera.device@1.0.so
|
||||||
VNDK-core: android.hardware.camera.device@3.2.so
|
VNDK-core: android.hardware.camera.device@3.2.so
|
||||||
VNDK-core: android.hardware.camera.device@3.3.so
|
VNDK-core: android.hardware.camera.device@3.3.so
|
||||||
|
VNDK-core: android.hardware.camera.device@3.4.so
|
||||||
VNDK-core: android.hardware.camera.metadata@3.2.so
|
VNDK-core: android.hardware.camera.metadata@3.2.so
|
||||||
|
VNDK-core: android.hardware.camera.metadata@3.3.so
|
||||||
VNDK-core: android.hardware.camera.provider@2.4.so
|
VNDK-core: android.hardware.camera.provider@2.4.so
|
||||||
VNDK-core: android.hardware.cas.native@1.0.so
|
VNDK-core: android.hardware.cas.native@1.0.so
|
||||||
VNDK-core: android.hardware.cas@1.0.so
|
VNDK-core: android.hardware.cas@1.0.so
|
||||||
VNDK-core: android.hardware.configstore-utils.so
|
VNDK-core: android.hardware.configstore-utils.so
|
||||||
VNDK-core: android.hardware.configstore@1.0.so
|
VNDK-core: android.hardware.configstore@1.0.so
|
||||||
|
VNDK-core: android.hardware.configstore@1.1.so
|
||||||
|
VNDK-core: android.hardware.confirmationui-support-lib.so
|
||||||
|
VNDK-core: android.hardware.confirmationui@1.0.so
|
||||||
VNDK-core: android.hardware.contexthub@1.0.so
|
VNDK-core: android.hardware.contexthub@1.0.so
|
||||||
VNDK-core: android.hardware.drm@1.0.so
|
VNDK-core: android.hardware.drm@1.0.so
|
||||||
|
VNDK-core: android.hardware.drm@1.1.so
|
||||||
VNDK-core: android.hardware.dumpstate@1.0.so
|
VNDK-core: android.hardware.dumpstate@1.0.so
|
||||||
VNDK-core: android.hardware.gatekeeper@1.0.so
|
VNDK-core: android.hardware.gatekeeper@1.0.so
|
||||||
VNDK-core: android.hardware.gnss@1.0.so
|
VNDK-core: android.hardware.gnss@1.0.so
|
||||||
|
VNDK-core: android.hardware.gnss@1.1.so
|
||||||
VNDK-core: android.hardware.graphics.allocator@2.0.so
|
VNDK-core: android.hardware.graphics.allocator@2.0.so
|
||||||
VNDK-core: android.hardware.graphics.bufferqueue@1.0.so
|
VNDK-core: android.hardware.graphics.bufferqueue@1.0.so
|
||||||
VNDK-core: android.hardware.graphics.composer@2.1.so
|
VNDK-core: android.hardware.graphics.composer@2.1.so
|
||||||
|
VNDK-core: android.hardware.graphics.composer@2.2.so
|
||||||
VNDK-core: android.hardware.health@1.0.so
|
VNDK-core: android.hardware.health@1.0.so
|
||||||
VNDK-core: android.hardware.health@2.0.so
|
VNDK-core: android.hardware.health@2.0.so
|
||||||
VNDK-core: android.hardware.ir@1.0.so
|
VNDK-core: android.hardware.ir@1.0.so
|
||||||
VNDK-core: android.hardware.keymaster@3.0.so
|
VNDK-core: android.hardware.keymaster@3.0.so
|
||||||
|
VNDK-core: android.hardware.keymaster@4.0.so
|
||||||
VNDK-core: android.hardware.light@2.0.so
|
VNDK-core: android.hardware.light@2.0.so
|
||||||
|
VNDK-core: android.hardware.media.bufferpool@1.0.so
|
||||||
VNDK-core: android.hardware.media.omx@1.0.so
|
VNDK-core: android.hardware.media.omx@1.0.so
|
||||||
VNDK-core: android.hardware.media@1.0.so
|
VNDK-core: android.hardware.media@1.0.so
|
||||||
VNDK-core: android.hardware.memtrack@1.0.so
|
VNDK-core: android.hardware.memtrack@1.0.so
|
||||||
@@ -92,6 +113,7 @@ VNDK-core: android.hardware.nfc@1.1.so
|
|||||||
VNDK-core: android.hardware.oemlock@1.0.so
|
VNDK-core: android.hardware.oemlock@1.0.so
|
||||||
VNDK-core: android.hardware.power@1.0.so
|
VNDK-core: android.hardware.power@1.0.so
|
||||||
VNDK-core: android.hardware.power@1.1.so
|
VNDK-core: android.hardware.power@1.1.so
|
||||||
|
VNDK-core: android.hardware.power@1.2.so
|
||||||
VNDK-core: android.hardware.radio.config@1.0.so
|
VNDK-core: android.hardware.radio.config@1.0.so
|
||||||
VNDK-core: android.hardware.radio.deprecated@1.0.so
|
VNDK-core: android.hardware.radio.deprecated@1.0.so
|
||||||
VNDK-core: android.hardware.radio@1.0.so
|
VNDK-core: android.hardware.radio@1.0.so
|
||||||
@@ -100,6 +122,8 @@ VNDK-core: android.hardware.radio@1.2.so
|
|||||||
VNDK-core: android.hardware.secure_element@1.0.so
|
VNDK-core: android.hardware.secure_element@1.0.so
|
||||||
VNDK-core: android.hardware.sensors@1.0.so
|
VNDK-core: android.hardware.sensors@1.0.so
|
||||||
VNDK-core: android.hardware.soundtrigger@2.0.so
|
VNDK-core: android.hardware.soundtrigger@2.0.so
|
||||||
|
VNDK-core: android.hardware.soundtrigger@2.0-core.so
|
||||||
|
VNDK-core: android.hardware.soundtrigger@2.1.so
|
||||||
VNDK-core: android.hardware.tetheroffload.config@1.0.so
|
VNDK-core: android.hardware.tetheroffload.config@1.0.so
|
||||||
VNDK-core: android.hardware.tetheroffload.control@1.0.so
|
VNDK-core: android.hardware.tetheroffload.control@1.0.so
|
||||||
VNDK-core: android.hardware.thermal@1.0.so
|
VNDK-core: android.hardware.thermal@1.0.so
|
||||||
@@ -111,12 +135,16 @@ VNDK-core: android.hardware.usb@1.0.so
|
|||||||
VNDK-core: android.hardware.usb@1.1.so
|
VNDK-core: android.hardware.usb@1.1.so
|
||||||
VNDK-core: android.hardware.vibrator@1.0.so
|
VNDK-core: android.hardware.vibrator@1.0.so
|
||||||
VNDK-core: android.hardware.vibrator@1.1.so
|
VNDK-core: android.hardware.vibrator@1.1.so
|
||||||
|
VNDK-core: android.hardware.vibrator@1.2.so
|
||||||
VNDK-core: android.hardware.vr@1.0.so
|
VNDK-core: android.hardware.vr@1.0.so
|
||||||
VNDK-core: android.hardware.weaver@1.0.so
|
VNDK-core: android.hardware.weaver@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.hostapd@1.0.so
|
||||||
VNDK-core: android.hardware.wifi.offload@1.0.so
|
VNDK-core: android.hardware.wifi.offload@1.0.so
|
||||||
VNDK-core: android.hardware.wifi.supplicant@1.0.so
|
VNDK-core: android.hardware.wifi.supplicant@1.0.so
|
||||||
|
VNDK-core: android.hardware.wifi.supplicant@1.1.so
|
||||||
VNDK-core: android.hardware.wifi@1.0.so
|
VNDK-core: android.hardware.wifi@1.0.so
|
||||||
VNDK-core: android.hardware.wifi@1.1.so
|
VNDK-core: android.hardware.wifi@1.1.so
|
||||||
|
VNDK-core: android.hardware.wifi@1.2.so
|
||||||
VNDK-core: android.hidl.allocator@1.0.so
|
VNDK-core: android.hidl.allocator@1.0.so
|
||||||
VNDK-core: android.hidl.memory.block@1.0.so
|
VNDK-core: android.hidl.memory.block@1.0.so
|
||||||
VNDK-core: android.hidl.token@1.0.so
|
VNDK-core: android.hidl.token@1.0.so
|
||||||
@@ -148,7 +176,6 @@ VNDK-core: libhidlcache.so
|
|||||||
VNDK-core: libjpeg.so
|
VNDK-core: libjpeg.so
|
||||||
VNDK-core: libkeymaster_messages.so
|
VNDK-core: libkeymaster_messages.so
|
||||||
VNDK-core: libkeymaster_portable.so
|
VNDK-core: libkeymaster_portable.so
|
||||||
VNDK-core: libkeymaster_staging.so
|
|
||||||
VNDK-core: libldacBT_abr.so
|
VNDK-core: libldacBT_abr.so
|
||||||
VNDK-core: libldacBT_enc.so
|
VNDK-core: libldacBT_enc.so
|
||||||
VNDK-core: liblz4.so
|
VNDK-core: liblz4.so
|
||||||
@@ -168,6 +195,7 @@ VNDK-core: libpower.so
|
|||||||
VNDK-core: libprocinfo.so
|
VNDK-core: libprocinfo.so
|
||||||
VNDK-core: libprotobuf-cpp-full.so
|
VNDK-core: libprotobuf-cpp-full.so
|
||||||
VNDK-core: libprotobuf-cpp-lite.so
|
VNDK-core: libprotobuf-cpp-lite.so
|
||||||
|
VNDK-core: libpuresoftkeymasterdevice.so
|
||||||
VNDK-core: libradio_metadata.so
|
VNDK-core: libradio_metadata.so
|
||||||
VNDK-core: libselinux.so
|
VNDK-core: libselinux.so
|
||||||
VNDK-core: libsoftkeymasterdevice.so
|
VNDK-core: libsoftkeymasterdevice.so
|
||||||
@@ -175,6 +203,7 @@ VNDK-core: libspeexresampler.so
|
|||||||
VNDK-core: libsqlite.so
|
VNDK-core: libsqlite.so
|
||||||
VNDK-core: libssl.so
|
VNDK-core: libssl.so
|
||||||
VNDK-core: libstagefright_amrnb_common.so
|
VNDK-core: libstagefright_amrnb_common.so
|
||||||
|
VNDK-core: libstagefright_bufferqueue_helper.so
|
||||||
VNDK-core: libstagefright_enc_common.so
|
VNDK-core: libstagefright_enc_common.so
|
||||||
VNDK-core: libstagefright_flacdec.so
|
VNDK-core: libstagefright_flacdec.so
|
||||||
VNDK-core: libstagefright_foundation.so
|
VNDK-core: libstagefright_foundation.so
|
||||||
@@ -219,4 +248,5 @@ VNDK-private: libbacktrace.so
|
|||||||
VNDK-private: libblas.so
|
VNDK-private: libblas.so
|
||||||
VNDK-private: libcompiler_rt.so
|
VNDK-private: libcompiler_rt.so
|
||||||
VNDK-private: libft2.so
|
VNDK-private: libft2.so
|
||||||
|
VNDK-private: libgui.so
|
||||||
VNDK-private: libunwind.so
|
VNDK-private: libunwind.so
|
||||||
|
@@ -13,6 +13,7 @@ echo "ro.build.version.all_codenames=$PLATFORM_VERSION_ALL_CODENAMES"
|
|||||||
echo "ro.build.version.release=$PLATFORM_VERSION"
|
echo "ro.build.version.release=$PLATFORM_VERSION"
|
||||||
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
|
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
|
||||||
echo "ro.build.version.base_os=$PLATFORM_BASE_OS"
|
echo "ro.build.version.base_os=$PLATFORM_BASE_OS"
|
||||||
|
echo "ro.build.version.min_supported_target_sdk=$PLATFORM_MIN_SUPPORTED_TARGET_SDK_VERSION"
|
||||||
echo "ro.build.date=`$DATE`"
|
echo "ro.build.date=`$DATE`"
|
||||||
echo "ro.build.date.utc=`$DATE +%s`"
|
echo "ro.build.date.utc=`$DATE +%s`"
|
||||||
echo "ro.build.type=$TARGET_BUILD_TYPE"
|
echo "ro.build.type=$TARGET_BUILD_TYPE"
|
||||||
|
@@ -1,278 +0,0 @@
|
|||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
Version 2, June 1991
|
|
||||||
|
|
||||||
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
|
|
||||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
|
||||||
Everyone is permitted to copy and distribute verbatim copies
|
|
||||||
of this license document, but changing it is not allowed.
|
|
||||||
|
|
||||||
Preamble
|
|
||||||
|
|
||||||
The licenses for most software are designed to take away your
|
|
||||||
freedom to share and change it. By contrast, the GNU General Public
|
|
||||||
License is intended to guarantee your freedom to share and change free
|
|
||||||
software--to make sure the software is free for all its users. This
|
|
||||||
General Public License applies to most of the Free Software
|
|
||||||
Foundation's software and to any other program whose authors commit to
|
|
||||||
using it. (Some other Free Software Foundation software is covered by
|
|
||||||
the GNU Lesser General Public License instead.) You can apply it to
|
|
||||||
your programs, too.
|
|
||||||
|
|
||||||
When we speak of free software, we are referring to freedom, not
|
|
||||||
price. Our General Public Licenses are designed to make sure that you
|
|
||||||
have the freedom to distribute copies of free software (and charge for
|
|
||||||
this service if you wish), that you receive source code or can get it
|
|
||||||
if you want it, that you can change the software or use pieces of it
|
|
||||||
in new free programs; and that you know you can do these things.
|
|
||||||
|
|
||||||
To protect your rights, we need to make restrictions that forbid
|
|
||||||
anyone to deny you these rights or to ask you to surrender the rights.
|
|
||||||
These restrictions translate to certain responsibilities for you if you
|
|
||||||
distribute copies of the software, or if you modify it.
|
|
||||||
|
|
||||||
For example, if you distribute copies of such a program, whether
|
|
||||||
gratis or for a fee, you must give the recipients all the rights that
|
|
||||||
you have. You must make sure that they, too, receive or can get the
|
|
||||||
source code. And you must show them these terms so they know their
|
|
||||||
rights.
|
|
||||||
|
|
||||||
We protect your rights with two steps: (1) copyright the software, and
|
|
||||||
(2) offer you this license which gives you legal permission to copy,
|
|
||||||
distribute and/or modify the software.
|
|
||||||
|
|
||||||
Also, for each author's protection and ours, we want to make certain
|
|
||||||
that everyone understands that there is no warranty for this free
|
|
||||||
software. If the software is modified by someone else and passed on, we
|
|
||||||
want its recipients to know that what they have is not the original, so
|
|
||||||
that any problems introduced by others will not reflect on the original
|
|
||||||
authors' reputations.
|
|
||||||
|
|
||||||
Finally, any free program is threatened constantly by software
|
|
||||||
patents. We wish to avoid the danger that redistributors of a free
|
|
||||||
program will individually obtain patent licenses, in effect making the
|
|
||||||
program proprietary. To prevent this, we have made it clear that any
|
|
||||||
patent must be licensed for everyone's free use or not licensed at all.
|
|
||||||
|
|
||||||
The precise terms and conditions for copying, distribution and
|
|
||||||
modification follow.
|
|
||||||
|
|
||||||
GNU GENERAL PUBLIC LICENSE
|
|
||||||
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
|
|
||||||
|
|
||||||
0. This License applies to any program or other work which contains
|
|
||||||
a notice placed by the copyright holder saying it may be distributed
|
|
||||||
under the terms of this General Public License. The "Program", below,
|
|
||||||
refers to any such program or work, and a "work based on the Program"
|
|
||||||
means either the Program or any derivative work under copyright law:
|
|
||||||
that is to say, a work containing the Program or a portion of it,
|
|
||||||
either verbatim or with modifications and/or translated into another
|
|
||||||
language. (Hereinafter, translation is included without limitation in
|
|
||||||
the term "modification".) Each licensee is addressed as "you".
|
|
||||||
|
|
||||||
Activities other than copying, distribution and modification are not
|
|
||||||
covered by this License; they are outside its scope. The act of
|
|
||||||
running the Program is not restricted, and the output from the Program
|
|
||||||
is covered only if its contents constitute a work based on the
|
|
||||||
Program (independent of having been made by running the Program).
|
|
||||||
Whether that is true depends on what the Program does.
|
|
||||||
|
|
||||||
1. You may copy and distribute verbatim copies of the Program's
|
|
||||||
source code as you receive it, in any medium, provided that you
|
|
||||||
conspicuously and appropriately publish on each copy an appropriate
|
|
||||||
copyright notice and disclaimer of warranty; keep intact all the
|
|
||||||
notices that refer to this License and to the absence of any warranty;
|
|
||||||
and give any other recipients of the Program a copy of this License
|
|
||||||
along with the Program.
|
|
||||||
|
|
||||||
You may charge a fee for the physical act of transferring a copy, and
|
|
||||||
you may at your option offer warranty protection in exchange for a fee.
|
|
||||||
|
|
||||||
2. You may modify your copy or copies of the Program or any portion
|
|
||||||
of it, thus forming a work based on the Program, and copy and
|
|
||||||
distribute such modifications or work under the terms of Section 1
|
|
||||||
above, provided that you also meet all of these conditions:
|
|
||||||
|
|
||||||
a) You must cause the modified files to carry prominent notices
|
|
||||||
stating that you changed the files and the date of any change.
|
|
||||||
|
|
||||||
b) You must cause any work that you distribute or publish, that in
|
|
||||||
whole or in part contains or is derived from the Program or any
|
|
||||||
part thereof, to be licensed as a whole at no charge to all third
|
|
||||||
parties under the terms of this License.
|
|
||||||
|
|
||||||
c) If the modified program normally reads commands interactively
|
|
||||||
when run, you must cause it, when started running for such
|
|
||||||
interactive use in the most ordinary way, to print or display an
|
|
||||||
announcement including an appropriate copyright notice and a
|
|
||||||
notice that there is no warranty (or else, saying that you provide
|
|
||||||
a warranty) and that users may redistribute the program under
|
|
||||||
these conditions, and telling the user how to view a copy of this
|
|
||||||
License. (Exception: if the Program itself is interactive but
|
|
||||||
does not normally print such an announcement, your work based on
|
|
||||||
the Program is not required to print an announcement.)
|
|
||||||
|
|
||||||
These requirements apply to the modified work as a whole. If
|
|
||||||
identifiable sections of that work are not derived from the Program,
|
|
||||||
and can be reasonably considered independent and separate works in
|
|
||||||
themselves, then this License, and its terms, do not apply to those
|
|
||||||
sections when you distribute them as separate works. But when you
|
|
||||||
distribute the same sections as part of a whole which is a work based
|
|
||||||
on the Program, the distribution of the whole must be on the terms of
|
|
||||||
this License, whose permissions for other licensees extend to the
|
|
||||||
entire whole, and thus to each and every part regardless of who wrote it.
|
|
||||||
|
|
||||||
Thus, it is not the intent of this section to claim rights or contest
|
|
||||||
your rights to work written entirely by you; rather, the intent is to
|
|
||||||
exercise the right to control the distribution of derivative or
|
|
||||||
collective works based on the Program.
|
|
||||||
|
|
||||||
In addition, mere aggregation of another work not based on the Program
|
|
||||||
with the Program (or with a work based on the Program) on a volume of
|
|
||||||
a storage or distribution medium does not bring the other work under
|
|
||||||
the scope of this License.
|
|
||||||
|
|
||||||
3. You may copy and distribute the Program (or a work based on it,
|
|
||||||
under Section 2) in object code or executable form under the terms of
|
|
||||||
Sections 1 and 2 above provided that you also do one of the following:
|
|
||||||
|
|
||||||
a) Accompany it with the complete corresponding machine-readable
|
|
||||||
source code, which must be distributed under the terms of Sections
|
|
||||||
1 and 2 above on a medium customarily used for software interchange; or,
|
|
||||||
|
|
||||||
b) Accompany it with a written offer, valid for at least three
|
|
||||||
years, to give any third party, for a charge no more than your
|
|
||||||
cost of physically performing source distribution, a complete
|
|
||||||
machine-readable copy of the corresponding source code, to be
|
|
||||||
distributed under the terms of Sections 1 and 2 above on a medium
|
|
||||||
customarily used for software interchange; or,
|
|
||||||
|
|
||||||
c) Accompany it with the information you received as to the offer
|
|
||||||
to distribute corresponding source code. (This alternative is
|
|
||||||
allowed only for noncommercial distribution and only if you
|
|
||||||
received the program in object code or executable form with such
|
|
||||||
an offer, in accord with Subsection b above.)
|
|
||||||
|
|
||||||
The source code for a work means the preferred form of the work for
|
|
||||||
making modifications to it. For an executable work, complete source
|
|
||||||
code means all the source code for all modules it contains, plus any
|
|
||||||
associated interface definition files, plus the scripts used to
|
|
||||||
control compilation and installation of the executable. However, as a
|
|
||||||
special exception, the source code distributed need not include
|
|
||||||
anything that is normally distributed (in either source or binary
|
|
||||||
form) with the major components (compiler, kernel, and so on) of the
|
|
||||||
operating system on which the executable runs, unless that component
|
|
||||||
itself accompanies the executable.
|
|
||||||
|
|
||||||
If distribution of executable or object code is made by offering
|
|
||||||
access to copy from a designated place, then offering equivalent
|
|
||||||
access to copy the source code from the same place counts as
|
|
||||||
distribution of the source code, even though third parties are not
|
|
||||||
compelled to copy the source along with the object code.
|
|
||||||
|
|
||||||
4. You may not copy, modify, sublicense, or distribute the Program
|
|
||||||
except as expressly provided under this License. Any attempt
|
|
||||||
otherwise to copy, modify, sublicense or distribute the Program is
|
|
||||||
void, and will automatically terminate your rights under this License.
|
|
||||||
However, parties who have received copies, or rights, from you under
|
|
||||||
this License will not have their licenses terminated so long as such
|
|
||||||
parties remain in full compliance.
|
|
||||||
|
|
||||||
5. You are not required to accept this License, since you have not
|
|
||||||
signed it. However, nothing else grants you permission to modify or
|
|
||||||
distribute the Program or its derivative works. These actions are
|
|
||||||
prohibited by law if you do not accept this License. Therefore, by
|
|
||||||
modifying or distributing the Program (or any work based on the
|
|
||||||
Program), you indicate your acceptance of this License to do so, and
|
|
||||||
all its terms and conditions for copying, distributing or modifying
|
|
||||||
the Program or works based on it.
|
|
||||||
|
|
||||||
6. Each time you redistribute the Program (or any work based on the
|
|
||||||
Program), the recipient automatically receives a license from the
|
|
||||||
original licensor to copy, distribute or modify the Program subject to
|
|
||||||
these terms and conditions. You may not impose any further
|
|
||||||
restrictions on the recipients' exercise of the rights granted herein.
|
|
||||||
You are not responsible for enforcing compliance by third parties to
|
|
||||||
this License.
|
|
||||||
|
|
||||||
7. If, as a consequence of a court judgment or allegation of patent
|
|
||||||
infringement or for any other reason (not limited to patent issues),
|
|
||||||
conditions are imposed on you (whether by court order, agreement or
|
|
||||||
otherwise) that contradict the conditions of this License, they do not
|
|
||||||
excuse you from the conditions of this License. If you cannot
|
|
||||||
distribute so as to satisfy simultaneously your obligations under this
|
|
||||||
License and any other pertinent obligations, then as a consequence you
|
|
||||||
may not distribute the Program at all. For example, if a patent
|
|
||||||
license would not permit royalty-free redistribution of the Program by
|
|
||||||
all those who receive copies directly or indirectly through you, then
|
|
||||||
the only way you could satisfy both it and this License would be to
|
|
||||||
refrain entirely from distribution of the Program.
|
|
||||||
|
|
||||||
If any portion of this section is held invalid or unenforceable under
|
|
||||||
any particular circumstance, the balance of the section is intended to
|
|
||||||
apply and the section as a whole is intended to apply in other
|
|
||||||
circumstances.
|
|
||||||
|
|
||||||
It is not the purpose of this section to induce you to infringe any
|
|
||||||
patents or other property right claims or to contest validity of any
|
|
||||||
such claims; this section has the sole purpose of protecting the
|
|
||||||
integrity of the free software distribution system, which is
|
|
||||||
implemented by public license practices. Many people have made
|
|
||||||
generous contributions to the wide range of software distributed
|
|
||||||
through that system in reliance on consistent application of that
|
|
||||||
system; it is up to the author/donor to decide if he or she is willing
|
|
||||||
to distribute software through any other system and a licensee cannot
|
|
||||||
impose that choice.
|
|
||||||
|
|
||||||
This section is intended to make thoroughly clear what is believed to
|
|
||||||
be a consequence of the rest of this License.
|
|
||||||
|
|
||||||
8. If the distribution and/or use of the Program is restricted in
|
|
||||||
certain countries either by patents or by copyrighted interfaces, the
|
|
||||||
original copyright holder who places the Program under this License
|
|
||||||
may add an explicit geographical distribution limitation excluding
|
|
||||||
those countries, so that distribution is permitted only in or among
|
|
||||||
countries not thus excluded. In such case, this License incorporates
|
|
||||||
the limitation as if written in the body of this License.
|
|
||||||
|
|
||||||
9. The Free Software Foundation may publish revised and/or new versions
|
|
||||||
of the General Public License from time to time. Such new versions will
|
|
||||||
be similar in spirit to the present version, but may differ in detail to
|
|
||||||
address new problems or concerns.
|
|
||||||
|
|
||||||
Each version is given a distinguishing version number. If the Program
|
|
||||||
specifies a version number of this License which applies to it and "any
|
|
||||||
later version", you have the option of following the terms and conditions
|
|
||||||
either of that version or of any later version published by the Free
|
|
||||||
Software Foundation. If the Program does not specify a version number of
|
|
||||||
this License, you may choose any version ever published by the Free Software
|
|
||||||
Foundation.
|
|
||||||
|
|
||||||
10. If you wish to incorporate parts of the Program into other free
|
|
||||||
programs whose distribution conditions are different, write to the author
|
|
||||||
to ask for permission. For software which is copyrighted by the Free
|
|
||||||
Software Foundation, write to the Free Software Foundation; we sometimes
|
|
||||||
make exceptions for this. Our decision will be guided by the two goals
|
|
||||||
of preserving the free status of all derivatives of our free software and
|
|
||||||
of promoting the sharing and reuse of software generally.
|
|
||||||
|
|
||||||
NO WARRANTY
|
|
||||||
|
|
||||||
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
|
|
||||||
FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
|
|
||||||
OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
|
|
||||||
PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
|
|
||||||
OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
||||||
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
|
|
||||||
TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
|
|
||||||
PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
|
|
||||||
REPAIR OR CORRECTION.
|
|
||||||
|
|
||||||
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
|
||||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
|
|
||||||
REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
|
|
||||||
INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
|
|
||||||
OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
|
|
||||||
TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
|
|
||||||
YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
|
|
||||||
PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
|
|
||||||
POSSIBILITY OF SUCH DAMAGES.
|
|
@@ -1,20 +0,0 @@
|
|||||||
Copyright (c) 2011 John Resig, http://jquery.com/
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining
|
|
||||||
a copy of this software and associated documentation files (the
|
|
||||||
"Software"), to deal in the Software without restriction, including
|
|
||||||
without limitation the rights to use, copy, modify, merge, publish,
|
|
||||||
distribute, sublicense, and/or sell copies of the Software, and to
|
|
||||||
permit persons to whom the Software is furnished to do so, subject to
|
|
||||||
the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be
|
|
||||||
included in all copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
||||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
||||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
||||||
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
||||||
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
||||||
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
||||||
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
@@ -1,200 +0,0 @@
|
|||||||
|
|
||||||
/* =============================================================================
|
|
||||||
Columns
|
|
||||||
========================================================================== */
|
|
||||||
/* Applied to body to debug layout alignments
|
|
||||||
.grid {
|
|
||||||
width:100%;
|
|
||||||
height:100%;
|
|
||||||
background:url(../images/grid.png) center repeat-y;
|
|
||||||
top:0px;
|
|
||||||
margin:auto;
|
|
||||||
position:absolute;
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
@media screen, projection, print {
|
|
||||||
.full {
|
|
||||||
padding: 2.5em 0;
|
|
||||||
border-top: solid 1px #ddd;
|
|
||||||
border-bottom: solid 1px #ddd;
|
|
||||||
background: #f7f7f7;
|
|
||||||
}
|
|
||||||
.wrap {
|
|
||||||
margin: 0 auto;
|
|
||||||
width: 100%;
|
|
||||||
min-width:600px;
|
|
||||||
clear: both;
|
|
||||||
}
|
|
||||||
.cols {
|
|
||||||
height: 1%;
|
|
||||||
margin: 0 -1.533742331288343558282%;
|
|
||||||
width: 103.06748466257669%}
|
|
||||||
*+html .cols {
|
|
||||||
margin-bottom: 20px;
|
|
||||||
}
|
|
||||||
.cols:after {
|
|
||||||
clear: both;
|
|
||||||
content: ' ';
|
|
||||||
display: block;
|
|
||||||
height: 0;
|
|
||||||
visibility: hidden;
|
|
||||||
}
|
|
||||||
.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12,
|
|
||||||
.col-13, .col-14, .col-15, .col-16 {
|
|
||||||
float: left;
|
|
||||||
margin: 0 1.063829787234% 20px 1.063829787234%;
|
|
||||||
}
|
|
||||||
* html .col-1, * html .col-2, * html .col-3, * html .col-4, * html .col-5, * html .col-6, * html
|
|
||||||
.col-7, * html .col-8, * html .col-9, * html .col-10, * html .col-11, * html .col-12, * html
|
|
||||||
.col-13, * html .col-14, * html .col-15, * html .col-16 {
|
|
||||||
margin: 0;
|
|
||||||
margin: 0 1.063829787234% 20px 1.063829787234%;
|
|
||||||
}
|
|
||||||
[dir='rtl'] .col-1, [dir='rtl'] .col-2, [dir='rtl'] .col-3, [dir='rtl'] .col-4, [dir='rtl'] .col-5,
|
|
||||||
[dir='rtl'] .col-6, [dir='rtl'] .col-7, [dir='rtl'] .col-8, [dir='rtl'] .col-9, [dir='rtl'] .col-10,
|
|
||||||
[dir='rtl'] .col-11, [dir='rtl'] .col-12 {
|
|
||||||
float: right;
|
|
||||||
}
|
|
||||||
.col-1 {
|
|
||||||
width: 4.16666666666667%;
|
|
||||||
}
|
|
||||||
.col-2 {
|
|
||||||
width: 10.4166666666667%;
|
|
||||||
}
|
|
||||||
.col-3 {
|
|
||||||
width: 16.6666666666667%;
|
|
||||||
}
|
|
||||||
.col-4 {
|
|
||||||
width: 22.9166666666667%;
|
|
||||||
}
|
|
||||||
.col-5 {
|
|
||||||
width: 29.1666666666667%;
|
|
||||||
}
|
|
||||||
.col-6 {
|
|
||||||
width: 35.4166666666667%;
|
|
||||||
}
|
|
||||||
.col-7 {
|
|
||||||
width: 41.6666666666667%;
|
|
||||||
}
|
|
||||||
.col-8 {
|
|
||||||
width: 47.9166666666667%;
|
|
||||||
}
|
|
||||||
.col-9 {
|
|
||||||
width: 55.3333333333333%;
|
|
||||||
}
|
|
||||||
.col-10 {
|
|
||||||
width: 60.4166666666667%;
|
|
||||||
}
|
|
||||||
.col-11 {
|
|
||||||
width: 66.6666666666667%;
|
|
||||||
}
|
|
||||||
.col-12 {
|
|
||||||
width: 72.9166666666667%;
|
|
||||||
}
|
|
||||||
.col-13 {
|
|
||||||
width: 79.1666666666667%;
|
|
||||||
}
|
|
||||||
.col-14 {
|
|
||||||
width: 85.4166666666667%;
|
|
||||||
}
|
|
||||||
.col-15 {
|
|
||||||
width: 91.6666666666667%;
|
|
||||||
}
|
|
||||||
.col-16 {
|
|
||||||
width: 97.9166666666667%;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#header .col-1,
|
|
||||||
#nav-x .col-1 { width: 40px }
|
|
||||||
#header .col-2,
|
|
||||||
#nav-x .col-2 { width: 100px }
|
|
||||||
#header .col-3,
|
|
||||||
#nav-x .col-3 { width: 160px }
|
|
||||||
#header .col-4,
|
|
||||||
#nav-x .col-4 { width: 220px }
|
|
||||||
#header .col-5,
|
|
||||||
#nav-x .col-5 { width: 280px }
|
|
||||||
#header .col-6,
|
|
||||||
#nav-x .col-6 { width: 340px }
|
|
||||||
#header .col-7,
|
|
||||||
#nav-x .col-7 { width: 400px }
|
|
||||||
#header .col-8,
|
|
||||||
#nav-x .col-8 { width: 460px }
|
|
||||||
#header .col-9,
|
|
||||||
#nav-x .col-9 { width: 520px }
|
|
||||||
#header .col-10,
|
|
||||||
#nav-x .col-10 { width: 580px }
|
|
||||||
#header .col-11,
|
|
||||||
#nav-x .col-11 { width: 640px }
|
|
||||||
#header .col-12,
|
|
||||||
#nav-x .col-12 { width: 700px }
|
|
||||||
#header .col-13,
|
|
||||||
#nav-x .col-13 { width: 760px }
|
|
||||||
#header .col-14,
|
|
||||||
#nav-x .col-14 { width: 820px }
|
|
||||||
#header .col-15,
|
|
||||||
#nav-x .col-15 { width: 880px }
|
|
||||||
#header .col-16,
|
|
||||||
#nav-x .col-16 { width: 940px }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
body {
|
|
||||||
padding:0 20px;
|
|
||||||
}
|
|
||||||
#header,
|
|
||||||
#searchResults,
|
|
||||||
#nav-x {
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
#body-content {
|
|
||||||
margin:0;
|
|
||||||
}
|
|
||||||
#body-content > .col-12 {
|
|
||||||
width:77.9804965%;
|
|
||||||
margin:0 0 0 0.97%; /* this percentage chosen to make IE9 happy */
|
|
||||||
}
|
|
||||||
#side-nav {
|
|
||||||
width: 19.9804965%;
|
|
||||||
margin:0 1.063829787234% 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#header .wrap {
|
|
||||||
max-width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
#nav-x .wrap,
|
|
||||||
#searchResults.wrap {
|
|
||||||
max-width:100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.nav-x {
|
|
||||||
margin:-2px 0 0 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
#devdoc-nav.fixed,
|
|
||||||
#devdoc-nav.fixed a.totop {
|
|
||||||
left:20px; /* !important ... for IE i think */
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.col-right {
|
|
||||||
margin-right:0px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width:772px) {
|
|
||||||
.col-5, .col-6, .col-7 {
|
|
||||||
clear: both;
|
|
||||||
width: 97.0238096%}
|
|
||||||
}
|
|
@@ -1,188 +0,0 @@
|
|||||||
$(document).ready(function() {
|
|
||||||
// prep nav expandos
|
|
||||||
var pagePath = document.location.pathname;
|
|
||||||
if (pagePath.indexOf(SITE_ROOT) == 0) {
|
|
||||||
pagePath = pagePath.substr(SITE_ROOT.length);
|
|
||||||
if (pagePath == '' || pagePath.charAt(pagePath.length - 1) == '/') {
|
|
||||||
pagePath += 'index.html';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (SITE_ROOT.match(/\.\.\//) || SITE_ROOT == '') {
|
|
||||||
// If running locally, SITE_ROOT will be a relative path, so account for that by
|
|
||||||
// finding the relative URL to this page. This will allow us to find links on the page
|
|
||||||
// leading back to this page.
|
|
||||||
var pathParts = pagePath.split('/');
|
|
||||||
var relativePagePathParts = [];
|
|
||||||
var upDirs = (SITE_ROOT.match(/(\.\.\/)+/) || [''])[0].length / 3;
|
|
||||||
for (var i = 0; i < upDirs; i++) {
|
|
||||||
relativePagePathParts.push('..');
|
|
||||||
}
|
|
||||||
for (var i = 0; i < upDirs; i++) {
|
|
||||||
relativePagePathParts.push(pathParts[pathParts.length - (upDirs - i) - 1]);
|
|
||||||
}
|
|
||||||
relativePagePathParts.push(pathParts[pathParts.length - 1]);
|
|
||||||
pagePath = relativePagePathParts.join('/');
|
|
||||||
} else {
|
|
||||||
// Otherwise the page path should be an absolute URL.
|
|
||||||
pagePath = SITE_ROOT + pagePath;
|
|
||||||
}
|
|
||||||
|
|
||||||
// select current page in sidenav and set up prev/next links if they exist
|
|
||||||
var $selNavLink = $('.nav-y').find('a[href="' + pagePath + '"]');
|
|
||||||
if ($selNavLink.length) {
|
|
||||||
$selListItem = $selNavLink.closest('li');
|
|
||||||
|
|
||||||
$selListItem.addClass('selected');
|
|
||||||
$selListItem.closest('li>ul').addClass('expanded');
|
|
||||||
|
|
||||||
// set up prev links
|
|
||||||
var $prevLink = [];
|
|
||||||
var $prevListItem = $selListItem.prev('li');
|
|
||||||
if ($prevListItem.length) {
|
|
||||||
if ($prevListItem.hasClass('nav-section')) {
|
|
||||||
// jump to last topic of previous section
|
|
||||||
$prevLink = $prevListItem.find('a:last');
|
|
||||||
} else {
|
|
||||||
// jump to previous topic in this section
|
|
||||||
$prevLink = $prevListItem.find('a:eq(0)');
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// jump to this section's index page (if it exists)
|
|
||||||
$prevLink = $selListItem.parents('li').find('a');
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($prevLink.length) {
|
|
||||||
var prevHref = $prevLink.attr('href');
|
|
||||||
if (prevHref == SITE_ROOT + 'index.html') {
|
|
||||||
// Don't show Previous when it leads to the homepage
|
|
||||||
$('.prev-page-link').hide();
|
|
||||||
} else {
|
|
||||||
$('.prev-page-link').attr('href', prevHref).show();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$('.prev-page-link').hide();
|
|
||||||
}
|
|
||||||
|
|
||||||
// set up next links
|
|
||||||
var $nextLink = [];
|
|
||||||
if ($selListItem.hasClass('nav-section')) {
|
|
||||||
// we're on an index page, jump to the first topic
|
|
||||||
$nextLink = $selListItem.find('ul').find('a:eq(0)')
|
|
||||||
} else {
|
|
||||||
// jump to the next topic in this section (if it exists)
|
|
||||||
$nextLink = $selListItem.next('li').find('a:eq(0)');
|
|
||||||
if (!$nextLink.length) {
|
|
||||||
// no more topics in this section, jump to the first topic in the next section
|
|
||||||
$nextLink = $selListItem.parents('li').next('li.nav-section').find('a:eq(0)');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ($nextLink.length) {
|
|
||||||
$('.next-page-link').attr('href', $nextLink.attr('href')).show();
|
|
||||||
} else {
|
|
||||||
$('.next-page-link').hide();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Set up expand/collapse behavior
|
|
||||||
$('.nav-y li').has('ul').click(function() {
|
|
||||||
if ($(this).hasClass('expanded')) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// hide other
|
|
||||||
var $old = $('.nav-y li.expanded');
|
|
||||||
if ($old.length) {
|
|
||||||
var $oldUl = $old.children('ul');
|
|
||||||
$oldUl.css('height', $oldUl.height() + 'px');
|
|
||||||
window.setTimeout(function() {
|
|
||||||
$oldUl
|
|
||||||
.addClass('animate-height')
|
|
||||||
.css('height', '');
|
|
||||||
}, 0);
|
|
||||||
$old.removeClass('expanded');
|
|
||||||
}
|
|
||||||
|
|
||||||
// show me
|
|
||||||
$(this).addClass('expanded');
|
|
||||||
var $ul = $(this).children('ul');
|
|
||||||
var expandedHeight = $ul.height();
|
|
||||||
$ul
|
|
||||||
.removeClass('animate-height')
|
|
||||||
.css('height', 0);
|
|
||||||
window.setTimeout(function() {
|
|
||||||
$ul
|
|
||||||
.addClass('animate-height')
|
|
||||||
.css('height', expandedHeight + 'px');
|
|
||||||
}, 0);
|
|
||||||
});
|
|
||||||
|
|
||||||
// Stop expand/collapse behavior when clicking on nav section links (since we're navigating away
|
|
||||||
// from the page)
|
|
||||||
$('.nav-y li').has('ul').find('a:eq(0)').click(function(evt) {
|
|
||||||
window.location.href = $(this).attr('href');
|
|
||||||
return false;
|
|
||||||
});
|
|
||||||
|
|
||||||
// Set up play-on-hover <video> tags.
|
|
||||||
$('video.play-on-hover').bind('click', function(){
|
|
||||||
$(this).get(0).load(); // in case the video isn't seekable
|
|
||||||
$(this).get(0).play();
|
|
||||||
});
|
|
||||||
|
|
||||||
// Set up tooltips
|
|
||||||
var TOOLTIP_MARGIN = 10;
|
|
||||||
$('acronym').each(function() {
|
|
||||||
var $target = $(this);
|
|
||||||
var $tooltip = $('<div>')
|
|
||||||
.addClass('tooltip-box')
|
|
||||||
.text($target.attr('title'))
|
|
||||||
.hide()
|
|
||||||
.appendTo('body');
|
|
||||||
$target.removeAttr('title');
|
|
||||||
|
|
||||||
$target.hover(function() {
|
|
||||||
// in
|
|
||||||
var targetRect = $target.offset();
|
|
||||||
targetRect.width = $target.width();
|
|
||||||
targetRect.height = $target.height();
|
|
||||||
|
|
||||||
$tooltip.css({
|
|
||||||
left: targetRect.left,
|
|
||||||
top: targetRect.top + targetRect.height + TOOLTIP_MARGIN
|
|
||||||
});
|
|
||||||
$tooltip.addClass('below');
|
|
||||||
$tooltip.show();
|
|
||||||
}, function() {
|
|
||||||
// out
|
|
||||||
$tooltip.hide();
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
// Set up <h2> deeplinks
|
|
||||||
$('h2').click(function() {
|
|
||||||
var id = $(this).attr('id');
|
|
||||||
if (id) {
|
|
||||||
document.location.hash = id;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// Set up fixed navbar
|
|
||||||
var navBarIsFixed = false;
|
|
||||||
$(window).scroll(function() {
|
|
||||||
var scrollTop = $(window).scrollTop();
|
|
||||||
var navBarShouldBeFixed = (scrollTop > (100 - 40));
|
|
||||||
if (navBarIsFixed != navBarShouldBeFixed) {
|
|
||||||
if (navBarShouldBeFixed) {
|
|
||||||
$('#nav')
|
|
||||||
.addClass('fixed')
|
|
||||||
.prependTo('#page-container');
|
|
||||||
} else {
|
|
||||||
$('#nav')
|
|
||||||
.removeClass('fixed')
|
|
||||||
.prependTo('#nav-container');
|
|
||||||
}
|
|
||||||
navBarIsFixed = navBarShouldBeFixed;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 3.5 KiB |
Before Width: | Height: | Size: 3.0 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 2.9 KiB |
Before Width: | Height: | Size: 2.7 KiB |
Before Width: | Height: | Size: 180 B |
Before Width: | Height: | Size: 181 B |
Before Width: | Height: | Size: 592 B |
Before Width: | Height: | Size: 692 B |