Commit Graph

32383 Commits

Author SHA1 Message Date
Tao Bao bb6935051a Merge "Makefile: Pack e2fsdroid into otatools.zip." 2017-01-09 19:17:21 +00:00
Tao Bao bcc3109262 Makefile: Pack e2fsdroid into otatools.zip.
e2fsdroid is needed to create ext4 images with mke2fs. Also pack both
sets of mke2fs and make_ext4fs tools into otatools.zip. Because we use
the latest otatools.zip to create OTAs, which needs to handle
target_files.zip using either of them.

Bug: 34126605
Test: `m otatools-package` and check it has e2fsdroid and make_ext4fs.
Test: Use otatools.zip to sign a TF.zip that defines
      TARGET_USES_MKE2FS={true,false}.

Change-Id: I9967e4f078cbe912914c6c511681cba82356ae8e
2017-01-06 14:32:51 -08:00
Treehugger Robot 10f6bf093d Merge "Allow goldfish-setup to take wake locks" 2017-01-06 19:57:53 +00:00
Lingfeng Yang de0eaf2b7b Allow goldfish-setup to take wake locks
Change-Id: I6a5db8586168e47e974a82afd2e75fd858aa5750
2017-01-06 10:12:08 -08:00
Treehugger Robot 80e70ae04a Merge "Build split file_contexts." 2017-01-06 17:23:45 +00:00
Dan Willemsen 81648927fb Merge "TARGET_RECOVERY_UPDATER_LIBS should not be used with AB updates" 2017-01-05 22:42:07 +00:00
dcashman b52f040bec Build split file_contexts.
Bug: 31363362
Test: Device uses new file_contexts files for labeling decisions.
Change-Id: I33c3297a2ec806f4b9f5dd25f3dd20c4b1001641
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-05 11:25:13 -08:00
Dan Willemsen 00cf76767f TARGET_RECOVERY_UPDATER_LIBS should not be used with AB updates
Also mark these variables as readonly so that later Android.mk cannot
change them.

Bug: 33607778
Test: build/tools/kati_all_products.sh -j12
Change-Id: I5f9a4df02bfdfd56549728f074bbb3fc251edb3d
2017-01-04 17:36:30 -08:00
Elliott Hughes abf3dbe248 Merge changes from topic 'fsconfig2-fixups'
* changes:
  fsconfig: fix pylint warning
  fsconfig: fix style formating with yapf
2017-01-05 00:26:04 +00:00
Dan Willemsen d0c693ff64 Merge changes from topic 'build-vts-zip'
* changes:
  delete vts.mk (which is moved to test/vts)
  include VTS packaging task files
2017-01-04 22:58:54 +00: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
Keun Soo Yim b74649d027 include VTS packaging task files
Test: m -j vts
Change-Id: I8737412bf4e7b5c2db32325105e7c588949b959d
(cherry picked from commit 199a710f73)
2017-01-04 13:16:33 -08:00
William Roberts 4165c635b8 fsconfig: fix pylint warning
Fix pylint warning:
W:292,47: Cell variable lineno defined in loop (cell-var-from-loop)

For the closure function that prints the error message, we actually
want the value of modified lineno within the closure.

Test: run unit tests

Change-Id: I7d08184563d347c826ca1af7558fb8e378f151e1
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2017-01-04 18:22:05 +00:00
William Roberts 820421c9b5 fsconfig: fix style formating with yapf
A few changes got introduced that yapf re-styles. To make it easy,
keep this file formated to:

yapf -i --style=google fs_config_generator.py

Test: run unit tests

Change-Id: I3160b92d7fd07a4d315dde59f1d20fe4c7587da1
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2017-01-04 18:21:28 +00:00
Treehugger Robot 1a4a0a4539 Merge "Define TARGET_OUT_VENDOR_APPS_PRIVILEGED for 2nd arch" 2017-01-04 02:44:04 +00:00
Elliott Hughes ce6c8e629f Merge "fs_config: Fix oem range parsing" 2017-01-04 00:37:58 +00:00
Tao Bao 7cfc591596 Merge "blockimgdiff.py: Clean up stash id computation in BBOTA v3+." 2017-01-03 23:44:41 +00:00
Treehugger Robot c184ef515c Merge "Remove option for non-pic dex preopt." 2017-01-03 09:39:39 +00:00
Johan Redestig 1552a28e5f fs_config: Fix oem range parsing
Addresses the following build error:
  "value" not in valid range [], got: 2901 for: "AID_ABC" file:\
  "device/somc/abc/config.fs"

that happens when parsing device/somc/abc/config.fs:
  [AID_ABC]
  value: 2901

The problem is that the AID.PREFIX is 'AID_' so the _OEM_RANGE
expression is searching for AID__OEM_RESERVED, which never
exists. Drop the extra '_'.

Change-Id: I8a1556731e14e49cef66e3e91121e4be23a308e0
Test: ./build/tools/fs_config/fs_config_generator.py fsconfig --aid-header=system/core/include/private/android_filesystem_config.h device/somc/abc/config.fs
2017-01-03 09:45:33 +01:00
Tao Bao 3a2e350239 blockimgdiff.py: Clean up stash id computation in BBOTA v3+.
Only BBOTA v2 needs to maintain a pool of available 'stash slot id'.
BBOTA v3+ uses the hash of the stashed blocks as the slot id, which
doesn't need the id pool anymore.

Bug: 33694544
Test: Generate v2 and v4 incrementals w/ and w/o the CL. They produce
      the same packages respectively.
Change-Id: I8121af5b6b1bee98c3639d54a00b06fd12e378e8
2016-12-28 09:26:46 -08:00
Elliott Hughes 5f60b74297 Merge "Revert "Revert "Merge changes from topic 'fsconfig-2'""" 2016-12-27 20:51:07 +00:00
Treehugger Robot cafc7efee0 Merge "Update pathmap.mk for renderscript support library migration" 2016-12-23 03:02:55 +00:00
Alan Viverette cdeb44df2f Update pathmap.mk for renderscript support library migration
Bug: 30255901
Change-Id: I213baaf4c76a7e5b8d20168624b74eb61582d215
(cherry picked from commit 49f03349c8)
2016-12-22 17:32:20 -08:00
Dan Willemsen fb2efba189 Merge "Remove --ignore_dirty=$(OUT_DIR)/% from Kati flags" 2016-12-22 23:27:38 +00:00
Dan Willemsen 584e4724ba Remove --ignore_dirty=$(OUT_DIR)/% from Kati flags
We really should be re-running Kati when a file in here changes, since
it may actually affect the result. The general problem we've run into is
when there are two kati output files that are clean according to the
current rules, but if they actually ran we'd force an installclean.

This also had the side-effect of not running shell commands that touched
$OUT_DIR, like writing files using $(shell echo ... >out/...), now those
may be run.

This will cause Kati to re-read the makefiles more often -- twice when a
CleanSpec.mk changes, twice when switching products on the same device.
Basically every time we read the old state, do something about it, and
write out the new state, we need to rerun the next time so we aren't
continuously cleaning up what changed.

Bug: 30947985
Test: Manual, switching between configurations; enable --regen_debug
Change-Id: I888f9f8295f318f8214b2c79525cf94f457a5a8b
2016-12-22 22:19:19 +00:00
Dan Willemsen d25d80e193 Merge "Fix incremental builds with AAPT2" 2016-12-22 21:28:25 +00:00
Treehugger Robot c1a11ec83f Merge "embedded.mk: +android.hidl.memory@1.0-service" 2016-12-22 21:20:37 +00:00
Dan Willemsen 912de8e691 Fix incremental builds with AAPT2
When we removed the src/ directory, the R.stamp file was removed -- with
AAPT, this triggers src/android/Manifest.java to be regenerated. But
AAPT2 only uses the R.stamp file as a timestamp to find the
Manifest.java file, not to create it.

So add a new CleanSpec.mk to fix the builds by removing the target that
AAPT2 uses to generate the src/android/Manifest.java file.

Test: None
Change-Id: If56f326ad701f7f92aa7c8aeda57e92d9c62cff9
2016-12-22 13:18:21 -08:00
Dan Willemsen 561b0a3753 Merge "Support non-gtest NATIVE_TESTS" 2016-12-22 20:29:41 +00:00
Treehugger Robot f57aa792c3 Merge "Remove generated java source post clean logic" 2016-12-22 20:09:13 +00:00
Steven Moreland 7676451252 embedded.mk: +android.hidl.memory@1.0-service
This is the service that provides shared memory for hidl/treble
processes.

Bug: 32185232
Test: builds
Change-Id: I79162a781daad7aa704f4ee071fef0bbdea59a18
2016-12-22 11:39:11 -08:00
Dan Willemsen cf324af6b8 Remove generated java source post clean logic
Just move the proto and renderscript sources into their own directories
-- the entire directory is wiped if the file list changes since the
command line will change. So we can just enable/disable pulling sources
from those directories based on whether there were files in the list or
not.

Bug: 30947985
Test: m -j java
Test: Remove a proto file from a java lib, ensure the generated source
      is not included.
Change-Id: If7529979de6fa62a651933a3a974f47b033851d6
2016-12-22 10:37:31 -08:00
Vijay Venkatraman 0c29ffb74d Merge "Revert "Revert "Extends VNDK support in Make by setting LOCAL_USE_VNDK for modules going into vendor partition, except when they already have LOCAL_SDK_VERSION set.""" 2016-12-22 05:54:03 +00:00
Vijay Venkatraman 43a7f0c765 Revert "Revert "Extends VNDK support in Make by setting LOCAL_USE_VNDK for modules going into vendor partition, except when they already have LOCAL_SDK_VERSION set.""
This reverts commit 823172e209.

Test: build.ninja for any target doesnt change, unless
BOARD_VNDK_VERSION is turned on in BoardConfig.mk
Change-Id: I4e1baaf5a2251de20f71a47096ce53e23d7e2d80
2016-12-22 05:53:39 +00:00
Dan Willemsen 9416c20b79 Support non-gtest NATIVE_TESTS
We've had this in Soong for a while, but never supported it in Make.

Bug: 33819328
Test: Change LOCAL_GTEST on a module, check m -j ... showcommands
Change-Id: Id8f4b9908c82c05d9a986a38945b33bac578e991
2016-12-21 20:27:06 -08:00
Tao Bao 376c0146b3 Merge "HOST_OUT_EXECUTABLES path is not needed in misc_info file" 2016-12-21 06:08:23 +00:00
Tao Bao 0ced0a1f50 Merge "otatools: added missing shared library for make_ext4fs" 2016-12-21 04:30:26 +00:00
Treehugger Robot 04f2cbd92a Merge "logpersist: introduce split to logcat and logpersist domains" 2016-12-20 22:08:42 +00:00
Mark Salyzyn 239ef9d502 logpersist: introduce split to logcat and logpersist domains
logcat_exec transition to logpersist from init with perms

Test: compile
Bug: 30566487
Change-Id: I0cea55f71be011e921841ef9d3e1283f11606f36
2016-12-20 20:32:01 +00:00
Hiroshi Yamauchi e34819ccce Merge "Add ART_USE_READ_BARRIER to product variables." 2016-12-20 18:56:20 +00: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
Vikram Dattu 8be44674a1 otatools: added missing shared library for make_ext4fs
Added the missing shared library libpcre2.so for make_ext4fs
in the otatools.zip.
Standalone signing the images with otatools zip is not working
due to missing library for make_ext4fs.

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: I4fc71a1c710f3075bb3bdb90d915538526004ee6
2016-12-20 13:53:34 +01:00
Hiroshi Yamauchi 64594c4f53 Add ART_USE_READ_BARRIER to product variables.
Bug: 33492005
Test: top-level build for angler.
Change-Id: I12aa2e18487c16423223f110b6dfb0d6dff1e7e8
2016-12-19 16:25:00 -08:00
Tao Bao f967849693 Merge "blockimgdiff.py: Add a test case for ReviseStashSize()." 2016-12-19 21:15:18 +00:00
Tao Bao 304ee27e88 blockimgdiff.py: Add a test case for ReviseStashSize().
Bug: 33687949
Test: python -m unittest test_blockimgdiff
Change-Id: I31e42648d2c0e60b941908c098ce5ccc967861ca
2016-12-19 11:17:12 -08:00
Richard Uhler c30981e2d0 Remove option for non-pic dex preopt.
Test: make checkbuild, aosp_bullhead-userdebug boots.
Bug: 33192586

Change-Id: I4dd179fac33d777fb10cc85a99ff68c3b0d0e03d
2016-12-19 09:52:25 +00:00
Elliott Hughes 2d7c86dfea Revert "Revert "Merge changes from topic 'fsconfig-2'""
This reverts commit fad4b4b715.

Incorporating the following fixes:

1.

fsconfig: fix fs_config_* build for discovered headers

When android_file system_config.h is picked up from the device
directory, neither TARGET_FS_CONFIG_GEN or TARGET_ANDROID_FILESYSTEM_CONFIG_H
are specified. Thus, the build is not generating the required fs_config_files
and fs_config_dirs.

Test: Ensure that make fs_config_files works, and produces the same output as before
      Build the system image and mount it as a loop back and dump the file system
      capabilities with getcap. Verify that output to the supplied
      android_file system_config.h

From the loopback of the system.img mount, from CWD system/bin:
$ getcap *
cnss-daemon = cap_net_bind_service+ep
hostapd = cap_net_admin,cap_net_raw+ep
imsdatadaemon = cap_net_bind_service+ep
ims_rtp_daemon = cap_net_bind_service+ep
logd = cap_setgid,cap_audit_control,cap_syslog+ep
mm-qcamera-daemon = cap_sys_nice+ep
pm-service = cap_net_bind_service+ep
run-as = cap_setgid,cap_setuid+ep
surfaceflinger = cap_sys_nice+ep
webview_zygote32 = cap_setgid,cap_setuid,cap_setpcap+ep
webview_zygote64 = cap_setgid,cap_setuid,cap_setpcap+ep

Compared to the android_filesystem_config.h:
    { 00700, AID_CAMERA,    AID_SHELL,     (1ULL << CAP_SYS_NICE), "system/bin/mm-qcamera-daemon" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/pm-service" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/imsdatadaemon" },
    { 00755, AID_SYSTEM,    AID_RADIO,     (1ULL << CAP_NET_BIND_SERVICE), "system/bin/ims_rtp_daemon" },
    { 00755, AID_SYSTEM,    AID_SYSTEM,    (1ULL << CAP_NET_BIND_SERVICE), "system/bin/cnss-daemon"},

2.

fsconfig: fix error message for duplicate AID

Fixes:
    raise ValueError('Duplicate aid value "%u" for %s' % value,
TypeError: %u format: a number is required, not str

and

    raise ValueError('Duplicate aid value "%s" for %s' % value,
TypeError: not enough arguments for format string

3.

fsconfig: add test for duplicate ranges

Add a test for duplicate range detection.

4.

fsconfig: skip AID_APP, AID_USER and all ranges

Do not output AID_APP, AID_USER and ranges. A range
is defined as ending with AID_ and ending in _START or
_END.

5.

fsconfig: test for skip AID_APP, AID_USER and all ranges

Test against AIDs that caused the bionic tests to fail.

Change-Id: I95569a9ccc83bd3231f8a6f395532cc2de316bd2
Signed-off-by: William Roberts <william.c.roberts@intel.com>
2016-12-18 10:55:35 -08:00
Daniel Cashman cbdc0bd096 Merge "Revert "Add build dependencies for split sepolicy files."" 2016-12-17 00:59:43 +00:00
Daniel Cashman df1e2102c6 Revert "Add build dependencies for split sepolicy files."
This reverts commit 086189145c.

Change-Id: Idfd210d1f16eefcedda6154b0361611f53c5158f
2016-12-17 00:53:52 +00:00
Treehugger Robot 298f9b5925 Merge "Add build dependencies for split sepolicy files." 2016-12-17 00:17:13 +00:00