Commit graph

432 commits

Author SHA1 Message Date
Bowgo Tsai
b3ce1ea72b Merge "Support signing custom images with AVB HASH or AVB HASHTREE" am: fe7aeb1de7 am: 16b64cbb58 am: 3989b738b8
am: b4c268eb7b

Change-Id: I516f6d60361e5397d32de0537dc1b1fa7bcc46a3
2017-05-31 03:42:56 +00:00
Bowgo Tsai
b4c268eb7b Merge "Support signing custom images with AVB HASH or AVB HASHTREE" am: fe7aeb1de7 am: 16b64cbb58
am: 3989b738b8

Change-Id: I11393e1833db97301ffdd31ec3db0968e87c1a24
2017-05-31 03:38:24 +00:00
Bowgo Tsai
7ea994b21c Support signing custom images with AVB HASH or AVB HASHTREE
`make custom_images` supports to build different kinds of *non-droid* images,
e.g., odm.img. Adding the support of signing them with either AVB HASH footer
or AVB HASHTREE footer. The user can use HASH for small images and
HASHTREE for large images.

Sample signing configurations:
 * AVB HASH footer:
   - CUSTOM_IMAGE_AVB_HASH_ENABLE := true
   - CUSTOM_IMAGE_AVB_ADD_HASH_FOOTER_ARGS := --append_to_release_string my_odm_image

 * AVB HASHTREE footer:
   - CUSTOM_IMAGE_AVB_HASHTREE_ENABLE := true
   - CUSTOM_IMAGE_AVB_ADD_HASHTREE_FOOTER_ARGS := --fec_num_roots 8

 * Using custom signing key:
   - CUSTOM_IMAGE_AVB_ALGORITHM := SHA256_RSA2048
   - CUSTOM_IMAGE_AVB_KEY_PATH := external/avb/test/data/testkey_rsa2048.pem

Bug: 36701014
Test: `make custom_images` with AVB HASH footer
Test: `make custom_images` with AVB HASHTREE footer
Test: `make droid` to check system.img is still properly signed with AVB HASHTREE
Test: `make droid` to check vendor.img is still properly signed with AVB HASHTREE

Change-Id: I8dc420e12e37e9a631345c0cd883339db05d489f
2017-05-24 14:21:03 +08:00
Sen Jiang
f738df32b8 Merge "Add support for avbtool in custom_images." am: 8a8ca3438b am: 7cdc14d8b0 am: c900a7cd48
am: c5d5fdee22

Change-Id: I6682a91e7963308d7cbc41438b510addb70acb27
2017-05-16 18:14:43 +00:00
Sen Jiang
c5d5fdee22 Merge "Add support for avbtool in custom_images." am: 8a8ca3438b am: 7cdc14d8b0
am: c900a7cd48

Change-Id: I6612fc8c91ae83ff9da7fa7f78460f6d8249a687
2017-05-16 18:09:45 +00:00
Sen Jiang
5b0fe18feb Add support for avbtool in custom_images.
Set CUSTOM_IMAGE_AVB_ENABLE := true to enable avb, add_hashtree_footer
args can be added in CUSTOM_IMAGE_AVB_ADD_HASHTREE_FOOTER_ARGS.

Bug: 38319818
Test: m custom_images

Change-Id: Ia452dc5ce8b55bcbd3abba9e965b72e78fd8c104
2017-05-15 17:34:42 -07:00
Steven Thomas
10bd2af812 Update whitelisted package name for google vr
The vr platform lib was renamed from com.google.vr.gvr.platform to
com.google.vr.platform, so update the whitelist accordingly. Also narrow
the whitelist to just the .platform subpackage.

Bug: 38134403
Test: Booted a Marlin.
Change-Id: I9243ed3ab7a918e0bc716a7ddafe0b3c068700de
2017-05-11 01:54:14 -07:00
Narayan Kamath
22cad14a60 Merge "Build: Remove com.google from the boot classpath whitelist." 2017-05-03 09:58:11 +00:00
Colin Cross
5aeff27adf Merge "Sort inputs to compatibility suite zip files" am: 328290459d am: a2b1052ae2 am: ba89e33a6c
am: 151cd4c75c

Change-Id: I46c10478eb9d227b188b6eac4a806149d0630151
2017-05-03 02:55:18 +00:00
Colin Cross
151cd4c75c Merge "Sort inputs to compatibility suite zip files" am: 328290459d am: a2b1052ae2
am: ba89e33a6c

Change-Id: I9831de58c41545dc1e0e40edadd96a83df3b70a1
2017-05-03 02:52:18 +00:00
Colin Cross
30c33b1c2b Sort inputs to compatibility suite zip files
Sort the inputs to remove duplicates, which fixes:
found two file paths to be copied into dest path: "target/testcases/minikin_perftests/minikin_perftests", both ["target/testcases/minikin_perftests/minikin_perftests"]"out/target/product/bullhead/testcases/minikin_perftests/minikin_perftests" and ["target/testcases/minikin_perftests/minikin_perftests"]"out/target/product/bullhead/testcases/minikin_perftests/minikin_perftests"!

Test: m -j device-tests
Change-Id: I8d7e83cd077c62461c9a08e7f1b49c321fbcb0e3
2017-05-02 17:56:57 -07:00
Narayan Kamath
39c2ecef8c Build: Remove com.google from the boot classpath whitelist.
Replace it with finer grained exemptions. These aren't fine grained
enough, but they're a start.

Bug: 37266786
Test: make

Change-Id: I986f215c08461df2291753a6eb02ad9390dcbedc
2017-05-02 11:24:31 +01:00
Jeff Gaston
dd3a5b5503 slightly clarify error message from check_boot_jars.py
Bug: 36792868
Test: build/core/tasks/check_boot_jars/check_boot_jars.py build/core/tasks/check_boot_jars/package_whitelist.txt  out/target/common/obj/JAVA_LIBRARIES/core-oj_intermediates/classes.jar
Change-Id: I656b52fe97278a9d2f5e86678ec335e9c055ee15
2017-04-26 08:53:12 -07:00
Dan Willemsen
4e9e5d526c Merge "Rewrite link type checking" am: e4d92ef568 am: d76aaed983
am: e834d5f059

Change-Id: I02342b80077a7e1e36e61d1f9384d3b104a982c1
2017-04-20 15:15:19 +00:00
Dan Willemsen
b47d4e9cf1 Rewrite link type checking
All the new features are turned off for now, since multiple branches and
products need to be verified before they can be turned on. So everything
should behave the same as today, except for no partition-based
warnings.

Instead of the current link type checks that happen during the build,
run as many as possible immediately after loading all the Android.mk
files. If we're allowing missing dependencies ('mm',
ALLOW_MISSING_DEPENDENCIES, tapas, etc), we'll defer the link type
checks to during the build. If we're not allowing missing dependencies,
we'll produce a better error message to the user about the missing
dependencies.

See core/main.mk for a description of the storage format.

This also remove the partition-based type checking. It hasn't worked all
that well, particularly with ASAN builds. The new VNDK checks will
handle the most pressing cases.

Test: Verify all link_type files and dependencies are the same:
  grep link_type: out/build-aosp_arm64.ninja | sed -E "s/ rule[0-9]+//" | sort
Change-Id: Id643658b9d9e84f99f5db0d526aad88c1f5d3417
2017-04-19 22:41:32 -07:00
Simran Basi
d2bde8da0f Merge "Revert "Revert "device-tests: As a dependency to tests""" am: ba0ebe9230 am: d46e933f1d
am: 379f25cd43

Change-Id: I7c6a73c688eddd2064a52b64350c71787d663911
2017-04-12 21:24:49 +00:00
Treehugger Robot
ba0ebe9230 Merge "Revert "Revert "device-tests: As a dependency to tests""" 2017-04-12 21:05:08 +00:00
Simran Basi
0b07a30ac8 Merge "Common testcase directories: Clean up duplicates" am: 4d15a84fc0 am: dce141bce8
am: 6f9ebf3c98

Change-Id: I41e04a59620eaf09e7f0bfc4e388ac4f1bb933d1
2017-04-12 08:27:19 +00:00
Simran Basi
65850daeb0 Revert "Revert "device-tests: As a dependency to tests""
This reverts commit df086140a8.

CQ-DEPEND=CL:365575
Bug: 35386840
Test: None

Change-Id: I17dc00ed64e220c5ce532386da1a1bc15cbfc439
2017-04-05 20:51:01 +00:00
Simran Basi
8a431d9c7d Common testcase directories: Clean up duplicates
This CL addresses the problem that native tests build for multiple
architectures and also build for host.

First it restructures each testcase folder to the following layout:
<testcase>/<testcase>.config
<testcase>/<arch 1>/testcase
<testcase>/<arch 2>/testcase

Secondly it now uses the new soong-zip prefix capability to
separate out host and target testcases in the device-tests &
general-tests zip files.

Bug:36692141
Test: `make device-tests general-tests cts -j` &
      ensured all built successfully.

Change-Id: I4e8b084ee56fa8940914911649ff35507d87eb27
2017-04-05 13:38:20 -07:00
Jin Qian
cbe0e25af2 Merge "Revert "device-tests: As a dependency to tests"" am: 5b216025ba am: 9c0b12db47
am: e95bc4fc6d

Change-Id: I69cb94d34737e1e692015338e40b0708db7ae91f
2017-03-21 01:14:02 +00:00
Jin Qian
df086140a8 Revert "device-tests: As a dependency to tests"
This reverts commit f153603ccc.

Change-Id: Ib439e2351da6c5eabcf412b29c6d798d05e01612
2017-03-21 01:00:41 +00:00
Simran Basi
1c90fcbefc Merge "device-tests: As a dependency to tests" am: 26594fce3f am: 318840dfb6
am: e3567c4847

Change-Id: I15832d0b20788df5374930dc1b09fe0ec9ac3122
2017-03-20 22:28:51 +00:00
Simran Basi
f153603ccc device-tests: As a dependency to tests
This change will build device-tests whenever tests is built.

Bug: 35386840
Test: None
Change-Id: If587bf74bb66b7ce5552493c73368bb68b6d34af
2017-03-20 13:14:49 -07:00
Simran Basi
af5c1f3144 Merge "device-tests & general-tests: build out zips." am: dd908dd925 am: 0aa305aacc
am: 38c95e4d6d

Change-Id: I1bdfa6a248cfb58abfc59970c82c466595c2d91e
2017-03-17 17:56:51 +00:00
Treehugger Robot
dd908dd925 Merge "device-tests & general-tests: build out zips." 2017-03-17 17:45:05 +00:00
Simran Basi
c8f21f6c4e device-tests & general-tests: build out zips.
Generates the output zips of the device-tests & general-tests
buildable suites.

Bug: 35386840
Test: make dist device-tests general-tests -j
Change-Id: I253bcd8615379334b52b4d770a5c4f7e07a58795
2017-03-15 17:56:50 -07:00
Colin Cross
4b6bc2b427 Merge "package-modules: use && instead of ; between copy commands" am: e0e20079c2 am: 8843039368
am: d826201c69

Change-Id: Ib5529cd05e439878a1083756e3b73d4d08940809
2017-03-15 02:28:39 +00:00
Colin Cross
f075bcbc98 package-modules: use && instead of ; between copy commands
Using ; to join commands in a rule causes failures to be ignored by
make.  Use && instead, and add true at the end as the second operand
to the last && operator.

Also inline copy-test-in-batch, batching is no longer necessary as
kati will fall back to a shell script if the recipe is too long to
fit in a command line.

Test: builds
Change-Id: I4a2528bf2a15106cfabaae0336662c4a0464271d
2017-03-14 16:58:34 -07:00
Dan Willemsen
ff490b6763 Merge "Speed up *TS zip file creation" am: 6d0f949296 am: 83667a3821
am: d6f077092b

Change-Id: Icf328eb0c239b7bd0a0ba602490860cad02f56db
2017-03-13 20:07:18 +00:00
Dan Willemsen
c4cf49569f Speed up *TS zip file creation
This also makes the resulting zip files more repeatable -- the file list
is sorted and the entries have static timestamps.

On my machine, this saves ~30 seconds for android-cts.zip, it now takes
less than a second.

Test: m -j cts; compare output from without this change
Change-Id: Ia71e35878ff98ba9775115860530e87eee47739f
2017-03-10 13:39:26 -08:00
Dan Willemsen
aa7e67c871 Merge changes I5e684409,I4fa35540,I24015ef0 am: 93de77745c am: d1378dec05
am: ead8af8580

Change-Id: I0608060da7307b9bd9a5bd15e601b1787c510dd4
2017-02-28 21:41:33 +00:00
Dan Willemsen
e19ca033c6 Improve warnings for package-modules.mk
Include the calling makefile and package name instead of just a warning
pointing to package-modules.mk

Test: multiproduct_kati, grep logs
Change-Id: I4fa35540b9695b44eea6c23463e137ec37d1d2c9
2017-02-24 15:49:50 -08:00
Simran Basi
a7886dc417 Merge "Add device-tests and general-tests make targets." am: c436f9eeec am: 0d0f7e1c7b
am: c1eb9a69c8

Change-Id: I6288642e2dcfa7210605030e968dae4122c8deb6
2017-02-22 19:49:48 +00:00
Simran Basi
9c295b4415 Add device-tests and general-tests make targets.
Adds the device-tests and general-tests makefiles and
added include lines to main.mk so that individual test
modules can be built properly.

These targets do not build any special tradefed wrapper
that normal *TS's usually employ. They are not necessary
here.

Bug: 35350788
Test: Updated several CTS test modules to belong to these
      suites instead and ran:
      `rm -rf out; make clean; make device-tests general-tests -j`
      then verified the output.

Change-Id: I40e3958375f7b39cb56508f2812ce9760d403f6f
2017-02-21 17:04:47 -08:00
Alex Deymo
df32f43f1e Merge "Include the LOCAL_REQUIRED_MODULES when packaging." am: 06f3258694 am: 2ee71f6946 am: af5554c699
am: 0f9093a31c

Change-Id: Ib02724ee1825334069e48af6b7342364b759fbe4
2017-02-13 16:15:10 +00:00
Alex Deymo
06f3258694 Merge "Include the LOCAL_REQUIRED_MODULES when packaging." 2017-02-13 16:01:35 +00:00
Joachim Sauer
4f5091d44f Merge "Add java.time packages to whitelist." am: 4dbe67cddc am: 4f60acde39 am: 95874afdfb
am: 8d9300bbc5

Change-Id: Ibcb3d995791e375b30d03e2a3c22a7a271e70c4d
2017-01-13 21:41:59 +00:00
Joachim Sauer
66d05aebd6 Add java.time packages to whitelist.
Bug: 28832222
Test: builds
Change-Id: I5a77f519f51eca93c34e4697b92a92bf72f4eda9
2017-01-11 12:48:33 +00:00
Alex Deymo
00dc66760e Include the LOCAL_REQUIRED_MODULES when packaging.
When building test modules, dependencies added by the test modules get
build but don't get included in the packaged tests .zip file.

When packaging modules into a .zip file, this patch includes the modules
explicitly listed as a dependency in LOCAL_REQUIRED_MODULES for the
requested modules to package.

If these LOCAL_REQUIRED_MODULES dependencies are not used in the base
system image, they were build as part of the "tests" target but weree
not included in the package nor in the system image. This patch includes
those modules, making it easier to define dependencies of a test
module in the Android.mk file that defined said module, instead of
requiring to re-list all the dependent modules when packaging test
modules.

Bug: 27348226

Change-Id: Ic6f60cf2916b3fae0fa39f84aee8a4f440af9539
2017-01-05 12:12:42 -08:00
Keun Soo Yim
18a316c161 delete vts.mk (which is moved to test/vts)
Test: m -j vts
Change-Id: I3ab29e59b6f77f3ac92bbfe7a6f7a8f36b2ba3bd
(cherry picked from commit a942dc8433)
2017-01-04 13:16:33 -08:00
Tao Bao
eac8bbcb81 Merge "HOST_OUT_EXECUTABLES path is not needed in misc_info file" am: 376c0146b3 am: 7def52bfe8 am: f2cffd6849
am: 70e1bacb1a

Change-Id: I4e484604f6a691f0cb48015192cbba120d3306cc
2016-12-21 18:15:06 +00:00
Joe Onorato
9aa0b89177 make protobuf available to CTS host tools
Test: make -j32 cts
Change-Id: I866aebd6313fe2b0b6d3a1876ac8e5ada473a7b0
2016-12-20 22:28:54 -08:00
Vikram Dattu
29e88b850e HOST_OUT_EXECUTABLES path is not needed in misc_info file
HOST_OUT_EXECUTABLES is already added to the PATH variable,
so it is not needed to add the path info for binaries in
misc_info.txt and <partition>_image_info.txt.

Earlier the mkuserimg item in the build_image dictionary is
hardcoded to "mkuserimg.sh", but now it is customized for
mkuserimg.sh and mkuserimg_mke2fs.sh, and maintained in
dictionary "ext_mkuserimg=$(MKEXTUSERIMG)" in misc_info.txt
and <partition>_image_info.txt, where it is used in the
build_image script while creating the images.

The problem here is the value for this key is set to build
path of the file mkuserimg file
$(HOST_OUT_EXECUTABLES)/mkuserimg.sh,
i.e. out/host/linux_x86/bin/mkuserimg.sh,
there by standalone signing the images using otatools is
not working as the executables are packed in bin folder.

Test: tools/releasetools/sign_target_files_apks
    -p <extracted ota-tools.zip folder>
    --extra_signapk_args=-f /etc/opt/cert_data.dat
    -v
    --replace_verity_private_key ~/build/target/product/security/verity
    --replace_verity_public_key ~/build/target/product/security/verity.x509.pem
    -k <key maping>
    <input target files zip>
    <output target files zip>

Change-Id: I57af1025ec38f3794f779c49faa0bf965afc6a5d
2016-12-20 13:55:06 +01:00
Paul Duffin
1d0355691e Merge "Use legacy-test instead of core-junit" am: e28eb9ff0e am: 34e4a7b7fd am: 2c373fbeb4
am: 4ba342a74f

Change-Id: I33d0c68c8a6725b5bcf381f35865dbae19448ea5
2016-12-13 10:04:27 +00:00
Paul Duffin
5bf0587461 Use legacy-test instead of core-junit
The core-junit library has been replaced with the legacy-test
library. The latter included everything that was in core-junit
plus some android.test classes that were in frameworks.

Bug: 30188076
Test: make checkbuild
Change-Id: Id2ba827705dbd2c27a1183e1153b03c11a8a4074
2016-12-09 15:21:45 +00:00
bowgotsai
6dd1058761 Merge "custom_image: fix build break" am: 52897d4ecb am: ab0ae8e728 am: 882fc2c96a
am: 5f58152b73

Change-Id: I0bf4729aa396a1566b555c6fe2e4dfeff31b0e72
2016-12-07 03:38:30 +00:00
Treehugger Robot
52897d4ecb Merge "custom_image: fix build break" 2016-12-07 03:20:13 +00:00
bowgotsai
0f72bca96b custom_image: fix build break
Fix build break caused by
https://android-review.googlesource.com/#/c/305575/.

Bug: 33358681
Test: make custom_images

Change-Id: I1ba7cf61491c8593b20bdac58e984f1928697b8c
2016-12-06 17:36:31 +08:00
Stuart Scott
270faa62e1 Remove tradefed prebuilt dependancy
Test: make cts
Change-Id: I6d75e9e8ca0f4327c0e6e1203d9009359d3819b8
2016-11-22 15:12:35 -08:00