Commit Graph

3186 Commits

Author SHA1 Message Date
Michael Wright 0b733a2036 Merge "Revert "Correct some GSI settings to board makefile"" 2018-02-07 15:11:07 +00:00
Michael Wright 87163300c2 Revert "Correct some GSI settings to board makefile"
This reverts commit 6e96487968.

Reason for revert: build_test broken by this change.

Change-Id: I0f48bb84dc8c521540c745814daa11c2900ac2c8
2018-02-07 12:08:51 +00:00
Treehugger Robot 2f7f7ca1c0 Merge "Correct some GSI settings to board makefile" 2018-02-07 09:02:40 +00:00
hansson ee00360292 Merge "Add a base makefile for 64 bit only builds." 2018-02-06 10:08:48 +00:00
Treehugger Robot fe34c5b52c Merge "Move system manifest / device matrix build rules" 2018-02-05 22:27:18 +00:00
Anton Hansson 1ac8a6df9a Add a base makefile for 64 bit only builds.
This makefile specifies a configuration that only starts a 64 bit
zygote (as opposed to both 64/32, as standard 64 bit builds do).
It should be inherited by products that only supports 64 bit apps.

Bug: 72810053
Test: Manual, using product in https://android-review.googlesource.com/608276
Change-Id: Ib88eccf8d4c575bfd93d6edb130348aeca4ae3f8
2018-02-05 18:24:16 +00:00
Carmen Jackson 343428120a Add Traceur to user builds.
This adds the Traceur app to all builds on phones and tablets.
Previously, it was included on userdebug builds on specific devices only.

Bug: 64762598
Test: Flashed a user build and a userdebug build and saw Traceur on both
builds.

Change-Id: I9bf7d68c737845a519f57f8f60ee9064bf33a2f5
2018-02-02 11:19:49 -08:00
Yifan Hong 87328762e4 Move system manifest / device matrix build rules
Test: build these files
Change-Id: I6467f4b7ce421358c30ad7a4c72a77dcc2ed3f88
2018-02-01 15:36:40 -08:00
SzuWei Lin 6e96487968 Correct some GSI settings to board makefile
TARGET_SUPPORTS_32_BIT_APPS and TARGET_SUPPORTS_64_BIT_APPS should
be board config variables. Move them to
target/board/treble_common_64.mk

Bug: 70951849
Test: lunch aosp_arm64_ab-userdebug; make -j
Change-Id: Ia3f6d5db1a7edc956597ab34c2feed088ecc6062
2018-01-30 17:23:47 +08:00
Treehugger Robot d8e3c4eb07 Merge "Fix /sys denials." 2018-01-29 22:04:32 +00:00
Primiano Tucci 90ebe5baf2 Add perfetto daemons and cmdline client to core makefiles
Perfetto is a tracing daemon that allows both to capture
traces from the kernel (via the traced_probes binary)
and allows data to be pushed from userspace (via the
traced binary). Tracing is never enabled by default
and can be kicked off either via statsd or by the shell.
The daemon executables are split only for the sake
of security and isolating SELinux domains. Under the
hoods they are just two shells that run code in the
same shared libarary.
See go/perfetto-sys-health-details for expected
binary / memory / overhead impact.

Bug: 72484603
Test: builds (see go/perfetto-test-spec for test plan)
Change-Id: Ib5fbd7cd2113010398802b622363b75f3eef738d
2018-01-25 15:32:11 +00:00
Tri Vo 82ca9a743a Fix /sys denials.
Labeled files linked from /sys/class/{rtc, net}.
Fixes these denials:
avc: denied { read } for pid=6413 comm="system_server" name="hctosys"
dev="sysfs" ino=10068 scontext=u:r:system_server:s0
tcontext=u:object_r:sysfs:s0 tclass=file permissive=0

avc: denied { write } for pid=4785 comm="Binder:4785_2" name="mtu"
dev="sysfs" ino=9213 scontext=u:r:netd:s0 tcontext=u:object_r:sysfs:s0
tclass=file permissive=0

Test: files labeled as expected; emulator boots without above denials.
Change-Id: I8fd8cc993ede0ddfd4404c0647a60da4867ef128
2018-01-24 12:39:47 -08:00
Tri Vo 30a532a1bf healthd: fix /sys denials.
Label /sys/class/power_supply/* appropriately and give healthd read
permissions to that directory.

Fixes this denial:
avc: denied { read } for pid=1386 comm="healthd" name="power_supply"
dev="sysfs" ino=2562 scontext=u:r:healthd:s0
tcontext=u:object_r:sysfs:s0 tclass=dir permissive=0

Bug: 72437093
Test: emulator boots with no denials from healthd
Change-Id: Ie3853cb5e9167fcd70f393ff589971ad6212c580
2018-01-24 11:13:22 -08:00
Justin Yun e3a7b1b4ca Install ld.config.noenforce.txt instead of copying it
ld.config.noenforce.txt is defined as a module.
For GSI, install the module instead of copying it.

Bug: 70704112
Bug: 70603313
Test: Build GSI and boot on Android-P sailfish device
Change-Id: I894921fa3089411f60d1b4f58ad48e9aa25a519b
2018-01-23 16:13:33 +09:00
Badhri Jagan Sridharan c8cdf75d1b Merge "Build usbd" 2018-01-23 03:09:27 +00:00
Yifan Hong 5ff1f0a38a Add System SDK Versions to VINTF.
Add PLATFORM_SYSTEMSDK_VERSIONS to framework manifest
and BOARD_SYSTEMSDK_VERSIONS to device comp matrix.

Test: m framework_manifest.xml -j
Test: BOARD_SYSTEMSDK_VERSIONS=P m device_compatibility_matrix.xml -j

Bug: 69088799
Change-Id: I0b5ac6f1c2802c353b2989b017c1cdfc9fe27987
2018-01-22 14:18:16 -08:00
Treehugger Robot 9b8fc9e3c2 Merge "Add 'blank_screen' to embedded.mk." 2018-01-22 20:27:17 +00:00
Yifan Hong 65310d6b06 Merge "move VINTF metadata to /etc/vintf/ ." 2018-01-19 22:01:28 +00:00
Steven Moreland 3ea4e46429 Add 'blank_screen' to embedded.mk.
This utility shuts off the screen.

Bug: 70846424
Test: manual + w/ init
Change-Id: I11bf8b709e81dd127de7d12c50da4ab5be456cfb
2018-01-19 13:01:13 -08:00
Yifan Hong 8f863693c9 move VINTF metadata to /etc/vintf/ .
In particular,
/vendor/manifest.xml => /vendor/etc/vintf/manifest.xml
/system/manifest.xml => /system/etc/vintf/manifest.xml
/vendor/compatibility_matrix.xml =>
    /vendor/etc/vintf/compatibility_matrix.xml

Test: verify that fileis exist in destination
Test: hwservicemanager can read these files
Bug: 36790901
Change-Id: Ic361a48e170fb9a77faec76ad0e829625427820d
2018-01-19 10:52:27 -08:00
Badhri Jagan Sridharan 09935e4174 Build usbd
Bug: 63669128
Test: Manually tested whether usbd was able to configure
usb stack while boot-up.
Change-Id: I28ff31d14a6c12a7a85316f41409ceda3ca2a170
2018-01-19 06:30:13 -08:00
Treehugger Robot 469aafe421 Merge "Normalize the 2nd CPU architect of 64 bits arm GSI" 2018-01-19 04:26:40 +00:00
Treehugger Robot 866cdf8c07 Merge "Separate vndk_snapshot_package from vndk_package" 2018-01-19 03:06:34 +00:00
Justin Yun 992ef6c6e0 Separate vndk_snapshot_package from vndk_package
vndk_package only includes current VNDK builds without snapshots.
The snapshots will be included by PRODUCT_EXTRA_VNDK_VERSIONS
regardless of vndk_package in PRODUCT_PACKAGES.

Bug: 71609233
Test: Generate snapshot files and include the version in
      PRODUCT_EXTRA_VNDK_VERSIONS. Check if snapshots are installed.

Change-Id: If788af2f7773dd50b8b9ceb1957b8e54fde9ca9f
2018-01-19 09:51:24 +09:00
bohu 1695288dc0 emulator: enable 32bit x86 to run on 64bit kernel
BUG: 71861550
Change-Id: Iea8fae11375d66a141babd40f66dd2e3da6075e0
2018-01-18 22:26:32 +00:00
Yifan Hong 238c6ba8fe add <vendor-ndk> to VINTF.
Test: libvintf_test
Test: vintf_object_test
Test: build and verify that <vendor-ndk> tags
are in framework manifest and device compatibility
matrix.

Fixes: 36400653

Change-Id: I4d44bff81fecc8fd2f7ab8e15770544b7b85aef9
2018-01-16 21:49:52 +00:00
Yifan Hong 1e7ab9db8f Merge "framework_cm.xml: move to hardware/interfaces" 2018-01-11 19:14:24 +00:00
Nicolas Geoffray 08e7159672 Merge "Remove copy/paste code." 2018-01-11 09:20:05 +00:00
Yifan Hong 919dcf1b6e framework_cm.xml: move to hardware/interfaces
Test: m dist
Bug: 69636193

Change-Id: Ic15a445d700552cb0973d6919ed5843bdecba363
2018-01-10 16:32:04 -08:00
Tri Vo c727d6d40e bootanim: remove access to vendor_file type
This domain should instead depend on same_process_hal_file, to which all
domains already have access.

Bug: 70990973
Test: emulator -gpu guest; boots with no denials from bootanim.
Change-Id: Ic577dd3c3895f8471d68a0da245d37a17cd6a3f3
2018-01-10 09:13:44 -08:00
Nicolas Geoffray b7c5e3bbb9 Remove copy/paste code.
The options passed are already the default.

This is also to reduce the difference between user and userdebug
related to dexopt.

Test: m
Change-Id: Id62c38f145909b511761b471160028915000fc23
2018-01-10 10:01:11 +00:00
Dan Willemsen dd3a27394f Remove armv5te
This architecture only existed for unbundled use, but even the NDK is
removing support in their r17 release, so just remove support for it.

Test: build/soong/build_test.bash -only-config
Test: check buildserver configs, I don't see anything still using armv5
Change-Id: Ic183b510c9ada94438bd4cc2b9362fa438a29ced
2018-01-08 15:26:16 -08:00
Treehugger Robot b2e9b2b34f Merge "Correct some GSI settings to board makefile" 2018-01-05 08:17:44 +00:00
Jae Shin 8b759c08ca Merge changes Ida449978,I8c6953f1
* changes:
  Apply snapshot variant to vndk package module name
  Additionally package TARGET_2ND_ARCH variants
2018-01-05 01:16:06 +00:00
Treehugger Robot 9e8b5892e4 Merge "Don't install unnecessary VNDK libs" 2018-01-04 16:14:52 +00:00
SzuWei Lin 43672c0fc5 Normalize the 2nd CPU architect of 64 bits arm GSI
In order to let GSI more generic. Normalize the 64 bits arm GSI
to be:

    TARGET_2ND_ARCH_VARIANT := armv8-a
    TARGET_2ND_CPU_VARIANT := generic

Bug: 64775084
Test: Build pass and boot to home screen
Change-Id: I1dd5aa8524c1d243f832372bf7e3e64fae09e945
Merged-In: I1dd5aa8524c1d243f832372bf7e3e64fae09e945
2018-01-04 11:07:29 +08:00
Jae Shin 240d97a249 Apply snapshot variant to vndk package module name
VNDK snapshot phony package, vndk_v$VER, is redefined to
separate phony packages per VNDK snapshot build variant,
vndk_v$VER_$VARIANT, where $VARIANT is defined as the primary
$TARGET_ARCH of the build target.

Accordingly, top level Android.bp file under prebuilts/vndk/v$VER
is redefined as separate Android.bp files for each snapshot
variant at prebuilts/vndk/v$VER/$VARIANT/Android.bp.

Test: m -j PRODUCT_EXTRA_VNDK_VERSIONS=27 (after installing
snapshot to prebuilts/vndk/v27)
Bug: 71370248

Change-Id: Ida449978090fe8a4f16376c991d34fa0945be596
2018-01-04 10:23:19 +09:00
SzuWei Lin 83890eb262 Correct some GSI settings to board makefile
Some setting currently in target/product/treble_common.mk, but
they should be board config variables. So, move them to
target/board/treble_common.mk.

Bug: 70951849
Test: Build pass and check on a Pixel device with GSI
Change-Id: I511fbc481583555182dab76503e67c5f56efa8eb
Merged-In: I511fbc481583555182dab76503e67c5f56efa8eb
2017-12-26 03:36:33 +00:00
Treehugger Robot 15820578b2 Merge "Allow devices to extend the system manifest." 2017-12-23 01:17:24 +00:00
Justin Yun c104764f73 Use current VNDK directories if version is not set on GSI
Only for GSI, if "ro.vndk.version" property is not defined, the
vendor modules will use current version of VNDK libs.

Bug: 70704112
Test: On Android-P sailfish device, install GSI and check boot
Change-Id: Ib8eb28604ab3e33474179dffbc07358921e7439c
2017-12-23 08:16:59 +09:00
Steven Moreland b14b530f82 Allow devices to extend the system manifest.
Introduces DEVICE_FRAMEWORK_MANIFEST_FILE, a list
of files which are added to system/manifest.xml.
This is required for devices to properly display
what hals they implement and also therefore for
them to pass vts_treble_vintf_test since it
now tests manifests based on hal origin.

Notice, this is named singularly to match
DEVICE_MANIFEST_FILE which is also a list of files.
They may be better both named "FILES", but for
consistency and legacy reasons, they can be thought
of as "everything that composes the X manifest
file".

Fixes: 70042049
Test: add system manifest extension which needs it
  and it no longer fails vts_treble_vintf_test for
  hals being served from the wrong partitions.

Change-Id: I1f59d5c3cadb7a7d4576b73196ca7b41103a49c5
2017-12-22 14:02:11 -08:00
Jiyong Park 4cdafdeb6b Don't install unnecessary VNDK libs
vndk_package is a phony module that includes ALL VNDK libs found in the
source code. As a result, VNDK libs that were actually not needed for
the device have been installed consuming storage. For example,
/system/lib/vndk/android.hardware.automotive*.so files were installed
even though walleye/taimen do not have automotive HALs.

VNDK libs are now installed by their link time dependencies (i.e. if a
vendor module uses libcutils, then /system/lib[64]/vndk-sp/libcutils.so
is automatically installed.).

By the way, there is a few number of VNDK libs that do not have any
link time dependency from vendor modules. They are always opened via
dlopen. In such cases, the vndk modules are added to `required`
or `LOCAL_REQUIRED_MODULES` of the module that dlopens them. Or, they
are directly added to PRODUCT_PACKAGES of the base products so that they
are always installed.

Bug: 67002788
Test: walleye builds and boots to the UI
Test: basic functionalities work (sound, camera, camcorder, slow-mo,
youtube, wifi, bluetooth)

Change-Id: I0eb36701858cd456ccb69dd0cf0a1880773675c7
2017-12-22 00:32:50 +09:00
Justin Yun fc951ff268 Do not enforce VNDK on GSI if VNDK version is not set
If ro.vndk.version is not defined, use the namespace configuration
file that does not enforce VNDK restriction.
This is only for GSI.

Bug: 70704112
Test: Flash sailfish with PI and test with PI GSI image
Change-Id: Ic2b41357905ef47a3483b2eff635e8ae239e28aa
2017-12-21 08:24:36 +09:00
Bo Hu d9ee7467fd Merge "emulator: disable location service" 2017-12-15 19:14:20 +00:00
Yifan Hong b1b5a0969b Merge changes from topic "fcm_version"
* changes:
  Move fwk comp mat level logic into assemble_vintf
  PRODUCT_COMPATIBILITY_MATRIX_LEVEL_OVERRIDE is deprecated.
2017-12-15 18:58:34 +00:00
Yifan Hong 43ec6ead28 Rename VINTF XML module names
* system_compatibility_matrix/manifest.xml
   => framework_...
* compatibility_matrix/manifest.xml
   => device_...

This is to follow the naming scheme in VINTF
doc.

Test: build all four targets

Change-Id: If5f6a99ded9964f3500c8e5fb97278f8fd0de387
2017-12-14 18:19:44 -08:00
Yifan Hong ed42caf94d Move fwk comp mat level logic into assemble_vintf
Deprecation schedule requirements is specified in assemble_vintf.
Move all checking logic to assemble_vintf.

Test: builds

Bug: 69636193
Change-Id: I2d62555633494014dc0005931de6c8ae9e6877fa
Merged-In: I2d62555633494014dc0005931de6c8ae9e6877fa
2017-12-14 15:35:15 -08:00
bohu 680ab2effb emulator: disable location service
So that watchdog does not reboot the
system because location service is not
responding.

This is just to get emulator images
booting on aosp.

BUG: 70378659
Change-Id: I81277208e6b9f92bb56c11b072a1f108ea964bb7
Merged-In: I81277208e6b9f92bb56c11b072a1f108ea964bb7
2017-12-14 17:09:18 +00:00
Treehugger Robot 973301af79 Merge "Replace build/tools with build/make/tools" 2017-12-13 02:34:42 +00:00
Justin Yun 2a233b3b86 Define PLATFORM_VNDK_VERSION
PLATFORM_VNDK_VERSION means the VNDK version that current build
provides. This value will be set to PLATFORM_SDK_VERSION once the
version is release. Otherwise, it will be set to "current".

Bug: 69883025
Test: device boot
Change-Id: I3fde4943aa062d9d148a3d7fc2798948870a48c6
2017-12-13 10:48:34 +09:00