summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Nicolas Geoffray <ngeoffray@google.com> 2018-02-05 16:12:52 +0000
committer Nicolas Geoffray <ngeoffray@google.com> 2018-02-05 17:37:56 +0000
commitab4825d90aecf8d57618faeb822ea0011193fe1c (patch)
treeb952d501e5cedeaf296ede1aa0df0c7ac7161a05
parent066532ee57cf48f5666ace3de969981f4f494126 (diff)
Create the hiddenapi files if frameworks/base is missing.
This is required to build ART for target with the master-art manifest. Change-Id: I9666aa0966a17199b6d33ae75591dfc15ae6731a
-rw-r--r--Android.mk14
-rwxr-xr-xtools/buildbot-build.sh9
2 files changed, 15 insertions, 8 deletions
diff --git a/Android.mk b/Android.mk
index 0a90a0bb24..361ceecc2f 100644
--- a/Android.mk
+++ b/Android.mk
@@ -447,6 +447,19 @@ LOCAL_REQUIRED_MODULES := libopenjdkd
include $(BUILD_PHONY_PACKAGE)
endif
+# Create dummy hidden API lists which are normally generated by the framework
+# but which we do not have in the master-art manifest.
+# We need to execute this now to ensure Makefile rules depending on these files can
+# be constructed.
+define build-art-hiddenapi
+$(shell if [ ! -d frameworks/base ]; then \
+ mkdir -p ${TARGET_OUT_COMMON_INTERMEDIATES}/PACKAGING; \
+ touch ${TARGET_OUT_COMMON_INTERMEDIATES}/PACKAGING/hiddenapi-{blacklist,dark-greylist,light-greylist}.txt; \
+ fi;)
+endef
+
+$(eval $(call build-art-hiddenapi))
+
########################################################################
# "m build-art" for quick minimal build
.PHONY: build-art
@@ -460,6 +473,7 @@ build-art-target: $(TARGET_OUT_EXECUTABLES)/art $(ART_TARGET_DEPENDENCIES) $(TAR
########################################################################
# Phony target for only building what go/lem requires for pushing ART on /data.
+
.PHONY: build-art-target-golem
# Also include libartbenchmark, we always include it when running golem.
# libstdc++ is needed when building for ART_TARGET_LINUX.
diff --git a/tools/buildbot-build.sh b/tools/buildbot-build.sh
index 8956e98ed0..a20175531d 100755
--- a/tools/buildbot-build.sh
+++ b/tools/buildbot-build.sh
@@ -74,14 +74,7 @@ if [[ $mode == "host" ]]; then
make_command+=" dx-tests"
mode_suffix="-host"
elif [[ $mode == "target" ]]; then
- # Create dummy hidden API lists which are normally generated by the framework
- # but which we do not have in the buildbot manifest. These are empty because
- # we do not want to enforce these rules in the buildbots anyway.
- hiddenapi_out_dir=${out_dir}/target/common/obj/PACKAGING
- make_command="mkdir -p ${hiddenapi_out_dir} && "
- make_command+="touch ${hiddenapi_out_dir}/hiddenapi-{blacklist,dark-greylist,light-greylist}.txt && "
-
- make_command+="make $j_arg $extra_args $showcommands build-art-target-tests $common_targets"
+ make_command="make $j_arg $extra_args $showcommands build-art-target-tests $common_targets"
make_command+=" libjavacrypto-target libnetd_client-target linker toybox toolbox sh"
make_command+=" ${out_dir}/host/linux-x86/bin/adb libstdc++ "
make_command+=" ${out_dir}/target/product/${TARGET_PRODUCT}/system/etc/public.libraries.txt"