Commit Graph

11990 Commits

Author SHA1 Message Date
Simran Basi 0aa305aacc Merge "device-tests & general-tests: build out zips."
am: dd908dd925

Change-Id: If51d656f068fac56cc8ebf2e0a25235ccc97cdd7
2017-03-17 17:50:23 +00:00
Treehugger Robot dd908dd925 Merge "device-tests & general-tests: build out zips." 2017-03-17 17:45:05 +00:00
Dan Willemsen de4e71b27b Revert "install *.so in different paths for their types"
This reverts commit 842a985f90. It's
causing test failures, warnings and complaints, so backing it out and
we'll resolve those before putting it back in.

This also bundles in the revert of a minor warning/error fixup for this
code, and does the correct thing with the CleanSpec.mk (which can't just
be reverted).

Bug: 33681361
Test: m -j
Change-Id: Ic889ce6a4737a497ad6bf633424ce1860713f7d0
2017-03-16 16:54:40 -07:00
Miao Wang 45976ab0c9 Merge "Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition."
am: 3fd80635af

Change-Id: Id6c164577684e0ed03e8ff1adf29d4648cf31f6c
2017-03-16 06:49:54 +00:00
Treehugger Robot 3fd80635af Merge "Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition." 2017-03-16 06:45:48 +00:00
Jiyong Park 42fc6363a6 Merge "Silence module path warnings for a while"
am: d5c3d1366f

Change-Id: I9bc012f72dd347b725c1104c22eb84940966df5c
2017-03-16 05:54:32 +00:00
Jiyong Park 79f5918199 Silence module path warnings for a while
Warning messages like, "libart_fake: framework library must be installed
to system/lib64 but requested to be installed at system/fake-libs64.
Please fix.", are temporarily muted since some of those warnings might
be false alarms.

Let's just silence the warning for everybody and investigate the cases
internally by turning on the build flag SHOW_MODULE_PATH_WARNINGS.

Test: the warning messages should not be shown unless built with
SHOW_MODULE_PATH_WARNINGS=true.

Change-Id: I5eb3ab3385c92a5192723ff1008277c321162191
2017-03-16 12:57:21 +09: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 2afade582d resolve merge conflicts of da00e137ec to stage-aosp-master
Change-Id: Ie81c0f4f5f14ae3e51ee717a50d0c29b26161b90
2017-03-15 10:20:24 -07:00
Treehugger Robot da00e137ec Merge "Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME" 2017-03-15 17:04:58 +00:00
Colin Cross 8843039368 Merge "package-modules: use && instead of ; between copy commands"
am: e0e20079c2

Change-Id: I5984eeac0581b8fdd5ae6186291cce02f430e450
2017-03-15 02:18:40 +00:00
Colin Cross b3bfc7172b Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME
Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME from
TARGET_PLATFORM_VERSION.  Add explicit values for O, even though
they are the same as the fall backs, as placeholders for future
values.

Bug: 35445510
Test: manual
Merged-In: I30a7142f732c85b637d2ce072373bc867cedcd42
Change-Id: I30a7142f732c85b637d2ce072373bc867cedcd42
2017-03-15 01:10:28 +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
Alex Klyubin 47b3e3d92e Merge "Add /file_contexts.bin only to devices which need it"
am: 77dab1ed35

Change-Id: Ic290b4c919b28bd9110f0f7fd782a564beb53ca0
2017-03-14 14:47:24 +00:00
Treehugger Robot 77dab1ed35 Merge "Add /file_contexts.bin only to devices which need it" 2017-03-14 14:41:31 +00:00
Jiyong Park 0871e0029f Merge "fix: cannot determine the type of modules with class 'samples'"
am: b1331938a3

Change-Id: I2908df25418d37f4be1c653110233900a063af8c
2017-03-14 02:21:43 +00:00
Jiyong Park d4ca89bfd6 fix: cannot determine the type of modules with class 'samples'
Test: make sdk should not break

Change-Id: I849befde3c6b91f0b417aa6b11a909c6c4aad627
2017-03-14 09:40:29 +09:00
Jiyong Park a2b86b14a5 Merge "install *.so in different paths for their types"
am: 55b14bdaa4

Change-Id: I170c49e7107dc7f345e844e544e89d1590ad59d3
2017-03-14 00:22:47 +00:00
Treehugger Robot 55b14bdaa4 Merge "install *.so in different paths for their types" 2017-03-14 00:15:50 +00:00
Alex Klyubin 092c9025a9 Add /file_contexts.bin only to devices which need it
/file_contexts.bin is needed only by devices which do not have
PRODUCT_FULL_TREBLE set to true. Adding this file to devices which
have PRODUCT_FULL_TREBLE set to true causes confusion and wastes
about 800 kB of space.

/file_contexts.bin was being added unconditionally to all devices due
to the build system needing the combined file_contexts file for
host-side labelling of filesystems in images and for inclusion into
target files ZIP (again, to be used for host-side labelling later).

This change switches these targets to depend on the same file, but
from intermediates directory. As a result, everything continues to
work just fine, but without pulling in /file_contexts.bin. On devices
which need /file_contexts.bin, it is pulled in by
system/core/init/Android.mk.

Test: /file_contexts.bin still there on bullhead, but not there on
      sailfish with PRODUCT_FULL_TREBLE set to true.
Test: Clean build, device boots up with, no new denials.
      Reboot to recovery, recovery boots up fine too, no denials.
      This was tested on sailfish-eng and marlin-eng.
Bug: 36002414

Change-Id: I9bbbb08bbf7d874bba0bafcc19bcbf9eec564326
2017-03-13 13:28:34 -07:00
Dan Willemsen 83667a3821 Merge "Speed up *TS zip file creation"
am: 6d0f949296

Change-Id: I082a5072d27d4e93008de98fc864be1e20f03748
2017-03-13 19:55:17 +00:00
Dan Willemsen 6d0f949296 Merge "Speed up *TS zip file creation" 2017-03-13 19:50:44 +00:00
Alex Klyubin 05796fe8b3 Merge "Explicitly depend on sepolicy artifacts in recovery targets"
am: cc6e84223b

Change-Id: I129bfe67ed120254d5b6c8e8f00b0ddfed346156
2017-03-13 18:24:43 +00:00
Alex Klyubin 2a7171a71a Explicitly depend on sepolicy artifacts in recovery targets
This makes recoveryimage/bootimage targets explicitly depend on SELinux
policy artifacts needed by recovery. Prior to this change, the
dependency was contrived: these targets would rely on copying these
files from "root" directory, and then overwriting sepolicy file with
sepolicy.recovery.

Test: Clean build, flash, device boots up just fine. No new denials.
      Reboot into recovery, recovery boot up just fine, no denials.
      This was tested on bullhead (non A/B device) and sailfish (A/B
      device).
Bug: 33642277
Change-Id: Id2369253d0c7e02e079ae01ac7140b41880fd5ad
2017-03-13 08:43:02 -07:00
Jiyong Park 842a985f90 install *.so in different paths for their types
Shared libraries are now installed to different directories depending on
their types.

* NDK libraries: /system/lib/ndk (with symlink from /system/lib)
* VNDK libraries: /system/lib/vndk
* VNDK-ext libraries: /system/lib/vndk-ext
* Framework-only libraries: /system/lib
* Vendor-only libraries: /vendor/lib
* Same-process HALs: /vendor/lib/sameprocess

However, if LOCAL_MODULE_PATH is explicitly set, then it is respected,
with a warning message. Module owners are highly encouraged to
investigate the warnings and use alternatives to LOCAL_MODULE_PATH;
combination of LOCAL_[PROPRIETARY|OEM|ODM]_MODULE, LOCAL_MODULE_CLASS
and LOCAL_RELATIVE_PATH will cover most of the cases.

Furthermore, for each shared libraries whose path is changed, a symolic
link from the original path to the new path is *temporarily* generated.
e.g. /system/lib/libbase.so -> vndk/libbase.so. This is
to prevent sudden breakage of the code expecting the lib from the old
path. This symbolic links will eventually be removed before O launch
(b/34917183).

Finally, BOARD_SAME_PROCESS_HAL_DEPS is added. It contains the list of
shared libraries implementing the same-process HALs and its internal sub
libraries. This is designed to be defined in BoardConfig.mk

Bug: 33681361
Test: build & run. Libraries must be in the correct directories.
Symlinks from the old path to the new path must exist.

Change-Id: I46130aac09ae65400fd4d0abbc2e12dddd154fb1
2017-03-13 08:27:09 +09: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
Tao Bao a592924505 Merge "releasetools: Drop the support for BBOTA v1 and v2."
am: c3e3406125

Change-Id: Id4903588e514c5182f2db1126c5778f69e86a370
2017-03-10 19:32:18 +00:00
Tao Bao debedc3343 Merge "releasetools: Remove dead functions in EdifyGenerator."
am: c87b38f547

Change-Id: Ia1eae3a4e401048c8cbfbf9bc85597dfc450fc4c
2017-03-09 20:31:19 +00:00
Tao Bao 8fad03e771 releasetools: Drop the support for BBOTA v1 and v2.
BBOTA v1 and v2 (introduced in L and L MR1 respectively) don't support
resumable OTA. We shouldn't generate packages using v1/v2 at the risk of
bricking devices.

BBOTA v3 (since M) and v4 (since N) both support resumable OTAs. BBOTA
v4 additionally supports using FEC to possibly recover a corrupted
image.

Bug: 33694730
Test: Generate full and incremental OTAs w/ and w/o the CL. They should
      give identical packages (in v4).
Change-Id: Ib89d9cd63ba08e8e9aa4131bed18876b89d244c0
2017-03-09 12:25:46 -08:00
Tao Bao c87b38f547 Merge "releasetools: Remove dead functions in EdifyGenerator." 2017-03-09 20:24:19 +00:00
Tao Bao f388104eaa releasetools: Remove dead functions in EdifyGenerator.
Remove the following functions that are needed for file-based OTAs only:
 - SetPermissions()
 - SetPermissionsRecursive()
 - MakeSymlinks()
 - DeleteFiles()
 - DeleteFilesIfNotMatching()
 - RenameFiles()
 - SkipNextActionIfTargetExists()

Bug: 35853185
Test: Verified there's no reference to these functions.
Change-Id: Iff24a9d705476211effaef28eed2a147fa5fcbce
2017-03-08 16:37:07 -08:00
Steven Moreland 05a7a4da70 Merge "hardware/interfaces: Android.mk always -Werror"
am: df58de6303

Change-Id: I5bc41aee011d13f7579563fa0e8e6aa6988ddc04
2017-03-08 23:20:58 +00:00
Treehugger Robot df58de6303 Merge "hardware/interfaces: Android.mk always -Werror" 2017-03-08 23:16:35 +00:00
Dan Willemsen 6ffe13f8e7 Merge changes Ia5ce6870,I155654cd
am: c619f99e2f

Change-Id: I5006c4e87607a55f914b90f7218802bc29fc76c5
2017-03-08 20:51:19 +00:00
Dan Willemsen c619f99e2f Merge changes Ia5ce6870,I155654cd
* changes:
  Zip after add_img_to_target_files
  Allow add_img_to_target_files to work on a directory
2017-03-08 20:45:56 +00:00
Steven Moreland 324c436084 hardware/interfaces: Android.mk always -Werror
Bug: 35840847
Test: pass
Change-Id: I6ebf3f5d279ff405446592cdabaeca9d1fdf6cf9
2017-03-08 16:29:50 +00:00
Sen Jiang 75a7a591ba Merge "Put system_version in target_files.zip"
am: 3838ae7e9b

Change-Id: I357ce185442ec04c028858f187e42187c062a287
2017-03-08 03:25:41 +00:00
Sen Jiang 9b8e4ca518 Put system_version in target_files.zip
Bug: 35364984
Test: m dist
Change-Id: I309acb41eb85de239c4c1718e14d9442ca1b0408
(cherry picked from commit cea4d52d2fee19281e660943129e1ad3bdc51fef)
2017-03-07 17:40:27 -08:00
Dan Willemsen 2a5a34f6bd Zip after add_img_to_target_files
For aosp_marlin (on AOSP), this speeds up target files creation from
~57 seconds to ~15 seconds.

For marlin-userdebug (on internal master), this speeds up target files
creation from ~300 seconds to ~95 seconds.

This does make some minor changes to the resulting target_files zip:

* All of the META files are actually at the beginning of the zip now,
  previously the ones created by add_img_to_target_files would be at
  the end.
* The images are slightly larger. Go's zip implementation in soong_zip
  isn't quite as good as the `zip` tool.
* vendor_filesystem_config.txt isn't present if we're not building a
  vendor image.

Test: aosp_marlin target_files zip changes look reasonable
Test: marlin target_files zip changes look reasonable
Test: bullhead target_files zip changes look reasonable
Change-Id: Ia5ce6870b85559d65107c3b94332391b4b43a0ea
2017-03-07 15:28:42 -08:00
Steven Moreland 0e1913f4ff Merge "Add vnod."
am: 2b33e46593

Change-Id: I006ef6b77e33f5b6e075fa392326e3e0eebb4610
2017-03-07 21:59:18 +00:00
Steven Moreland a2e734d786 Add vnod.
Short name for vendorimage-nodeps like snod.

Bug: 33356516
Test: works
Change-Id: Iad62aa5a021d603fa9cebe90f4e28cf09d5d49ae
2017-03-07 12:17:51 -08:00
Mathieu Chartier 52e0317804 Merge "Fix profile dependency"
am: 4d42fef1db

Change-Id: Idd14fa4a1e0141558a301b80eb53da0442adf79b
2017-03-06 20:22:20 +00:00
Mathieu Chartier fb6c6b38c3 Fix profile dependency
Otherwise it doesn't work for incremental builds.

Bug: 34929159
Bug: 35997300

Test: repo sync && m

Change-Id: I78ead57cf89a9d0f26dbf4f3a225a9357bdca1b3
2017-03-06 11:38:49 -08:00
Howard Chen 8fafc4a830 Merge "Support kernel modules in vendor, recovery images"
am: 2f6c2b44d0

Change-Id: Iaca1daa513a5474d97324a47c182d14485146be2
2017-03-04 03:41:05 +00:00
Treehugger Robot 2f6c2b44d0 Merge "Support kernel modules in vendor, recovery images" 2017-03-04 03:35:00 +00:00
Howard Chen adbb9c30d1 Support kernel modules in vendor, recovery images
Support BOARD_VENDOR_KERNEL_MODULES which accepts a list of the
kernel module binaries. Binaries listed there are copied to
$(TARGET_OUT_VENDOR)/lib/modules and 'depmod' is executed to generate
the dependencies. BOARD_RECOVERY_KERNEL_MODULES is similarly
implemented to provide a way to specify kernel modules to be copied
to the recovery image.

Bug: 33305644
Test: android master build on marlin and load dummy modules
Merged-In: I0a58a270dbb0d2d38fd089f4abff66e62e14fac1
Change-Id: Ia5f429508ca3d7c77448358e42af6efa98fa8624
2017-03-03 18:35:30 -08:00
Mathieu Chartier bc8f7d7f52 Merge "Move profile logic to dex_preopt_odex_install"
am: b05880e311

Change-Id: If5beeb66a79b90d3dd1963033c4473d0ab75b487
2017-03-04 02:25:30 +00:00
Mathieu Chartier b05880e311 Merge "Move profile logic to dex_preopt_odex_install" 2017-03-04 02:21:24 +00:00
Alex Deymo 4afbddcdf7 Merge "Update product_id and product_version location."
am: a57a2fd118

Change-Id: Ie1b80f0eb8e7a2041a9c693187d95cb331cf0940
2017-03-04 01:51:25 +00:00
Alex Deymo c4ca4c41f8 Merge "Add PRODUCT_IOT to the list of product vars."
am: e90295014f

Change-Id: I1f41687a0e747765baa07931035b360977683837
2017-03-04 01:51:00 +00:00
Alex Deymo a57a2fd118 Merge "Update product_id and product_version location." 2017-03-04 01:46:21 +00:00
Alex Deymo e90295014f Merge "Add PRODUCT_IOT to the list of product vars." 2017-03-04 01:46:06 +00:00
Mathieu Chartier 2ac264fe13 Move profile logic to dex_preopt_odex_install
It is not necessary to have it in setup_one_odex since the profile is
the same for multilib.

Prevents errors related to using ../ in profile path resulting in not
having a directory.

Bug: 34929159
Test: m

Change-Id: Ifdcba119f3599b0c80e27594781db5e4d64bd473
2017-03-03 16:23:14 -08:00
Mathieu Chartier ab70e664c3 Merge "Avoid copying profile"
am: c2159fd5b6

Change-Id: Ida40968af33c5559986336c328067f1bfdfacdde
2017-03-03 22:42:15 +00:00
Mathieu Chartier c2159fd5b6 Merge "Avoid copying profile" 2017-03-03 22:36:46 +00:00
Sen Jiang efcda5173d Merge "Remove DBus support."
am: cf858d873b

Change-Id: I09cbc25da9f801128b21bbda691f18f465fb2c9c
2017-03-03 20:57:36 +00:00
Sen Jiang cf858d873b Merge "Remove DBus support." 2017-03-03 20:54:38 +00:00
Mathieu Chartier 62e1ed7a63 Avoid copying profile
We can just use the source profile.

Bug: 34929159
Test: m

Change-Id: Ibbc0b392052f2a7f76bada13493ca62dc0334ace
2017-03-03 12:47:30 -08:00
Mathieu Chartier 1bf2231a4a Merge "Use ANDROID_LOG_TAGS to filter spammy profman output"
am: 4fdf2189b0

Change-Id: I278362252ae7d8b5d70795e7394d3730a61a1fc1
2017-03-03 17:50:25 +00:00
Mathieu Chartier 4fdf2189b0 Merge "Use ANDROID_LOG_TAGS to filter spammy profman output" 2017-03-03 17:47:08 +00:00
Alex Deymo b4309d4f54 Update product_id and product_version location.
These files are used by the update console to determine the product
associated with a given target_files.zip.

Bug: 35804180
Bug: 33211225
Test: `make dist` generates a target_files.zip with these files.
Change-Id: I6066da07d76749ae64c26d5f661c7a6d06f3fb3d
2017-03-03 17:32:42 +00:00
Alex Deymo 8fe63c3899 Add PRODUCT_IOT to the list of product vars.
This variable tells whether the product is an Android Things variant of
Android.

Bug: 32549448
Test: `make dist` on an iot product.
Change-Id: I0875951ae57867bc8bf47885e77e494d6284acdb
2017-03-02 22:08:41 -08:00
Vijay Venkatraman e4f88be6ed Merge "Fix for compile error when BUILD_HEADER_LIBRARY is used"
am: 69e8252aec

Change-Id: Icddb2f285d9f08a6fce89dcac69cf38259d9edf6
2017-03-03 04:15:40 +00:00
Vijay Venkatraman 69e8252aec Merge "Fix for compile error when BUILD_HEADER_LIBRARY is used" 2017-03-03 04:10:50 +00:00
Sen Jiang d1f397e8b4 Remove DBus support.
external/dbus and external/dbus-binding-generator was removed from
the manifest.

Bug: 31602715
Test: make checkbuild
Change-Id: Iea0277720acad8ac0fa630b8745f90fb3c3b5f00
2017-03-02 18:00:21 -08:00
Mathieu Chartier c185f742e1 Merge "Add local preopt options for generating app image and profile"
am: fea31c0b9e

Change-Id: I58a6232ff9b001669b6b0f2c88e42b282e2e0ddc
2017-03-03 01:18:16 +00:00
Mathieu Chartier fea31c0b9e Merge "Add local preopt options for generating app image and profile" 2017-03-03 01:14:03 +00:00
Mathieu Chartier 1e91c9db07 Use ANDROID_LOG_TAGS to filter spammy profman output
Test: mm

Bug: 34929159

Change-Id: I794c4a063ab3b4e515ecc20b58a6f985e093fa21
2017-03-02 17:03:06 -08:00
Miao Wang 57be564940 Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition.
- TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE is the output directory of
 RENDERSCRIPT_BITCODE (libclcore.bc) for vendors.
 - It is only used if LOCAL_PROPRIETARY_MODULE := true specified for the
 bitcode module.

Bug: 34396220
Bug: 34334222
Test: mm
Change-Id: I10237470eff0d8a693ce73313944e9b24595c5b7
2017-03-02 15:48:24 -08:00
Mathieu Chartier a4b993b5b9 Add local preopt options for generating app image and profile
If true, LOCAL_DEX_PREOPT_APP_IMAGE cause dex2oat to generate an app
image.

If true, LOCAL_DEX_PREOPT_GENERATE_PROFILE generates a profile based
on a class listing. LOCAL_DEX_PREOPT_PROFILE_CLASS_LISTING must be
defined in this case.

Bug: 34929159

Test: device booting, image loaded

(cherry picked from commit 9968fdcd85)

Change-Id: Ib79ada86a4ac617491723f80d99a3add3d52a7f4
2017-03-02 15:17:04 -08:00
Vijay Venkatraman 465b17fc3c Fix for compile error when BUILD_HEADER_LIBRARY is used
Test: include $(BUILD_HEADER_LIBRARY) in Android.mk and compile
Change-Id: If720be2d73b1c026961c75b65d82887b5dd41442
2017-03-02 11:47:33 -08:00
Richard Uhler bf0fea29e6 Merge "Don't include patch information for dex preopt."
am: 6f8e0d06e4

Change-Id: I99b47062c2c4db2c3f64e16a4188ff046fd5e7d4
2017-03-02 09:24:22 +00:00
Richard Uhler 6f8e0d06e4 Merge "Don't include patch information for dex preopt." 2017-03-02 09:18:48 +00:00
Steven Moreland 848e9430bc Merge "Add PRODUCT_FULL_TREBLE."
am: 5236e11c54

Change-Id: I40bf15624baf78113e3731476d46f2be0eb9cf61
2017-03-02 04:39:27 +00:00
Steven Moreland c10f1413d5 Add PRODUCT_FULL_TREBLE.
PRODUCT_FULL_TREBLE: whether the device has Treble fully enabled (no
passthrough hals, vendor.img, split sepolicy, etc..)

PRODUCT_FULL_TREBLE_OVERRIDE: used if someone wants to consider a device
as full Treble even if it didn't launch with Android O.

Bug: 35809750
Test: PRODUCT_FULL_TREBLE set appropriately with
PRODUCT_FULL_TREBLE_OVERRIDE and PRODUCT_SHIPPING_API_LEVEL = 24/25

Change-Id: I069448beaf26c70acb6c45d4228d8fdfe9476410
2017-03-01 19:08:24 -08:00
Ryan Campbell 425bbada28 Merge "Use c and cpp objects for gcov."
am: d579b8eb1f

Change-Id: I6490b5b6c443952ac672847df8748df31e5933ff
2017-03-01 03:10:24 +00:00
Ryan Campbell d579b8eb1f Merge "Use c and cpp objects for gcov." 2017-03-01 03:05:56 +00:00
Ryan Campbell 5a6ea36cb8 Use c and cpp objects for gcov.
Instead of using all_objects and translating .o to .gcno, use
cpp_objects, gen_cpp_objects, c_objects, gen_c_objects, objc_objects,
and objcpp_objects. Fixes bug with .s files breaking coverage builds.

Bug: 35843991
Test: lunch sailfish-userdebug && make -j60 NATIVE_COVERAGE=true
COVERAGE_PATHS="vendor/google_devices/marlin/proprietary/mm-camera/mm-camera2"
Change-Id: Ib2f8eef889f075ec82f79d8c3ae0fe31962b653d
2017-02-28 16:29:06 -08:00
Simran Basi 22cc401165 Merge "Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories."
am: 6abedc9b3e

Change-Id: Ic01ee13e25df68d8cf850fa81b445150f16f1136
2017-02-28 23:46:09 +00:00
Treehugger Robot 6abedc9b3e Merge "Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories." 2017-02-28 23:42:18 +00:00
Dan Willemsen d1378dec05 Merge changes I5e684409,I4fa35540,I24015ef0
am: 93de77745c

Change-Id: I2ac9d2922435058bcd900f902c308736f6710bed
2017-02-28 21:37:03 +00:00
Dan Willemsen 93de77745c Merge changes I5e684409,I4fa35540,I24015ef0
* changes:
  Improve module tags warnings
  Improve warnings for package-modules.mk
  Fix all_named_products, remove kati_all_products
2017-02-28 21:30:55 +00:00
Dan Willemsen d9b773845d Merge "Turn USE_SOONG_UI on by default"
am: 39a6418d76

Change-Id: If4a59c9d051f4d3dd4152f5f30da50bf5feeceaf
2017-02-28 20:42:27 +00:00
Simran Basi 6bea37c7fa Add support for multiple LOCAL_COMPATIBILITY_SUITES & undefined testcase directories.
1) Updates the LOCAL_COMPATIBILITY_SUITE line to allow for a
   testcase to belong to multiple suites.
2) Building testcases no longer fails if
   COMPATIBILITY_TESTCASES_OUT_<suite> is not defined. This
   testcase will just not output to that directory.
   This will be utilized by the device-tests and general-tests
   suites that don't require any extra output besides the common
   testcase directory.

Bug: 35394351
Test: 1) Added multiple *TS testcases to cts & vts and verified they
       ended up in the common directory and each suite's testcase
       directory. Specifically tested CtsSplitApp to ensure the
       split usecase still works as well.
      2) Added a CTS testcase to the device-tests suite, built
       device-tests and verified the cts/android-cts/testcases
       copy was not produced.

Change-Id: Ic4c4e87e62be4fc0c5e394d88cc359518346dffa
2017-02-28 12:41:40 -08:00
Dan Willemsen 73da612ed0 Turn USE_SOONG_UI on by default
Set USE_SOONG_UI=false to disable the new soong_ui wrapper.

Test: m -j blueprint_tools
Test: USE_SOONG_UI=false m -j blueprint_tools
Change-Id: I0b217939a29fd51e69ef594f824b14e25a4c8c4d
2017-02-28 18:57:12 +00:00
Richard Uhler 41408b0e1a Don't include patch information for dex preopt.
Because we always compile pic, patch information is not needed.

Test: phone boots.
Bug: 33192586
Change-Id: I46a6db713e0ce21300e3f4b86bd771a68eeed0c4
2017-02-28 17:05:12 +00:00
Ryan Campbell 26a4ce0b65 Merge "Support path exclusion for native coverage."
am: e317a2d19e

Change-Id: I1b0f1d4bc0664ba5bd0f24dee8e0778d18a82504
2017-02-28 02:11:25 +00:00
Treehugger Robot e317a2d19e Merge "Support path exclusion for native coverage." 2017-02-28 02:06:57 +00:00
Ryan Campbell b55ff74713 Support path exclusion for native coverage.
Specify list of paths to exclude from coverage instrumentation.

Test: make NATIVE_COVERAGE=true COVERAGE_PATHS=hardware/interfaces
COVERAGE_EXCLUDE_PATHS=hardware/interfaces/graphics
Bug: 35769817

Change-Id: I3747fdddb381101b9ebf51909b9686e820148aad
2017-02-27 09:09:16 -08:00
Colin Cross d730a19870 Merge "Port java.mk desugar changes to host_dalvik_java_library.mk"
am: 12e17ca46c

Change-Id: I31bec1f575b0fcf9d4875f381a1f982abc2d9d7b
2017-02-25 01:40:50 +00:00
Dan Willemsen 1e4fb7f161 Improve module tags warnings
Stop blaming base_rules.mk, put the module makefile at the beginning
of the line. That way scripts like warn.py can parse this better.

Test: multiproduct_kati, grep logs
Change-Id: I5e6844097b44e47b8126159c1760b7524134310d
2017-02-24 23:52:22 +00:00
Colin Cross 8f2f7b9fab Port java.mk desugar changes to host_dalvik_java_library.mk
host_dalvik_java_library.mk shares less of the implementation
with the device side than I thought, port the desugar changes
from java.mk.

Test: m -j ANDROID_FORCE_JACK_ENABLED=disabled core-oj-hostdex
Change-Id: I5e09673c5eae6bf95d63540e7b626c67da87e9f1
2017-02-24 23:51:12 +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
Dan Willemsen 594c3fc3d7 Fix all_named_products, remove kati_all_products
all_named_products was giving the file path instead of product name for
the name:path format of PRODUCT_MAKEFILES.

kati_all_products has been replaced with multiproduct_kati

Test: get_build_var all_named_products
Test: multiproduct_kati
Change-Id: I24015ef0778ac7cd45201aa55c1737b0553f09fe
2017-02-24 15:49:46 -08:00
Josh Gao aa19e7a2bb Merge "Statically link libwinpthread into windows binaries."
am: 61d68b6152

Change-Id: I616c7ddc16239086006f0d9a99fd0742ea0cd780
2017-02-24 21:08:55 +00:00
Josh Gao 61d68b6152 Merge "Statically link libwinpthread into windows binaries." 2017-02-24 21:02:25 +00:00
Dan Willemsen 100edc4a4c Merge "Add progress indicator to Android.mk includes"
am: 353a659a31

Change-Id: Iee11804f88b35c6b6c8da47792dc4568f9862307
2017-02-24 17:56:08 +00:00
Dan Willemsen 353a659a31 Merge "Add progress indicator to Android.mk includes" 2017-02-24 17:50:13 +00:00
Tao Bao e44f4e439d Merge "Make the packaging of VBOOT_SIGNER tools conditional."
am: 56a2d9ff56

Change-Id: Icaac7d166f3d7d61d7e4480dd15f72cc44817407
2017-02-24 17:45:07 +00:00
Tao Bao 56a2d9ff56 Merge "Make the packaging of VBOOT_SIGNER tools conditional." 2017-02-24 17:41:33 +00:00
Josh Gao 4d9268e704 Statically link libwinpthread into windows binaries.
Statically link libwinpthread.a, so that we don't have to ship a
libwinpthread dll with all of our windows exectuables.

Bug: http://b/31665213
Test: wine adb.exe
Test: wine fastboot.exe
Change-Id: I96414e980d8894f8f6a58c1c7bbd9dc5e0f5169c
2017-02-23 17:56:44 -08:00
Tao Bao d2aed4309a Make the packaging of VBOOT_SIGNER tools conditional.
Otherwise it may fail the targets that don't have
external/vboot_reference in the manifest.

Bug: 35467608
Test: lunch aosp_dragon-userdebug; m otatools-package
Test: lunch aosp_bullhead-userdebug; m otatools-package
Change-Id: I35700a4d7d0723992badcfb4a03be85d07a4b9a9
2017-02-23 14:32:44 -08:00
Colin Cross dced3d40ad Merge "Remove cpusets and schedboost product variables"
am: 1adeeb8b3c

Change-Id: I850154eab83fa021423630d935b84afa20e7eced
2017-02-23 19:21:13 +00:00
Treehugger Robot 1adeeb8b3c Merge "Remove cpusets and schedboost product variables" 2017-02-23 19:16:07 +00:00
Tao Bao 3dec68ea3f Merge "Makefile: Add the missing dependency on FUTILITY."
am: 4e429cccd6

Change-Id: I4e26b51ae65f1d13bf4d8e959422876c0956c568
2017-02-23 18:52:41 +00:00
Tao Bao 4e429cccd6 Merge "Makefile: Add the missing dependency on FUTILITY." 2017-02-23 18:47:13 +00:00
Colin Cross 4a4325d313 Merge "Pass min sdk version to dx and desugar"
am: bbad7c3e1f

Change-Id: I5bfc25abcca9a3cfcb22ed0c5bf39e626fe64ec4
2017-02-23 18:20:23 +00:00
Colin Cross bbad7c3e1f Merge "Pass min sdk version to dx and desugar" 2017-02-23 18:18:38 +00:00
Colin Cross 119e97b375 Remove cpusets and schedboost product variables
They are no longer needed, remove them.

Bug: 35129304
Bug: 35128496
Test: builds
Change-Id: Ic0bb04f80d78a1aef2adfeb2af816eecabdbc4ba
2017-02-23 09:47:36 -08:00
Tao Bao 4b577413ff Makefile: Add the missing dependency on FUTILITY.
Bug: 35467608
Test: lunch aosp_dragon-userdebug; m dist
Change-Id: If3824ac22926f3c3cc09d5b82cb0f6da4132f937
2017-02-22 22:54:49 -08:00
Colin Cross c432176a09 Merge "Don't duplicate default platform libraries into proguard flags"
am: f7b6bf8cb1

Change-Id: Ie0320268dcd5c751570fe333f0e32cfdd7c81524
2017-02-23 02:15:18 +00:00
Colin Cross f7b6bf8cb1 Merge "Don't duplicate default platform libraries into proguard flags" 2017-02-23 02:12:27 +00:00
Colin Cross 5118a25bd9 Don't duplicate default platform libraries into proguard flags
Test: builds
Change-Id: Ib972d954972614f3e6ce522c58fce06beeda3cea
2017-02-22 14:37:03 -08:00
Simran Basi 0d0f7e1c7b Merge "Add device-tests and general-tests make targets."
am: c436f9eeec

Change-Id: Ic238377df600af06397d31bd4f5661e9a7e5316e
2017-02-22 19:46:18 +00:00
Treehugger Robot c436f9eeec Merge "Add device-tests and general-tests make targets." 2017-02-22 19:35:47 +00:00
Dan Willemsen 33631b3580 Add progress indicator to Android.mk includes
Test: m -j
Change-Id: I1e6fd020a06b49c243be14953d9f417e64ac7b8b
2017-02-22 11:20:51 -08:00
Colin Cross 536ef4e35a Pass min sdk version to dx and desugar
Test: make checkbuild
Change-Id: Idde9712508571ea623126c7d25d2fa67eccf4833
2017-02-22 11:10:37 -08:00
Paul Duffin 3e93d553ec Merge "Filter JUnit and android.test classes from applications using proguard"
am: 38a231d6c3

Change-Id: I42f53657f38aaead6bfde4015992991dbb058575
2017-02-22 12:20:54 +00:00
Paul Duffin 38a231d6c3 Merge "Filter JUnit and android.test classes from applications using proguard" 2017-02-22 12:15:27 +00:00
Colin Cross f78a2f821c Merge "Use ifndef or ifeq () instead of ifeq """
am: 1948f64dd5

Change-Id: I0a582b85ae540f9b164c93cf5363049258983a64
2017-02-22 04:30:00 +00:00
Colin Cross 63fe36abbe Use ifndef or ifeq () instead of ifeq ""
ifeq with quotes is technically correct make syntax, but rarely used.
Replace it with the simpler ifndef when comparing against empty, or
with parenthesis for consistency.

Test: builds
Change-Id: Idcbe0586c4626c67d560694596b0bd9f5f93484a
2017-02-21 17:29:10 -08: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
Dan Willemsen 283ed982cd Merge "Stop double-printing config"
am: a7d4e0cd73

Change-Id: Icefca1547a8361d3678b8be7d30776325de47b73
2017-02-22 00:58:46 +00:00
Dan Willemsen 0d25529b4c Stop double-printing config
Don't print the config in Kati when we've already printed it in soong_ui
or the make wrapper.

Test: m -j
Test: USE_SOONG_UI=true m -j
Change-Id: Ic6dce0ab29d584d85c6642c597f6e9dcd6ba9dca
2017-02-21 15:12:15 -08:00
Paul Duffin f22aca1e47 Filter JUnit and android.test classes from applications using proguard
The new javac/desugar/proguard/dx based toolchain can fail if
there are duplicate classes in the -injars and -libraryjars
passed to proguard. That causes problems for b/30188076 which
is attempting to remove various junit and android.test classes
from the API because it requires the changes to add those
classes statically to applications are submitted simultaneously
with the change to remove the classes from the API which is not
feasible.

This change simply causes Proguard to ignore the classes from
the application JAR so it will always use them from the library.
That allows the changes to be done separately and only requires
that this change is reverted simultaneously with the change to
update the API.

Bug: 30188076
Test: make checkbuild and make -j ANDROID_FORCE_JACK_ENABLED=disabled checkbuild
Change-Id: I6ed6c45a159d6261d90245551aa2913cc82d2e8b
2017-02-21 13:11:13 +00:00
Paul Duffin 4e5d1b0624 Merge "2nd attempt to remove legacy-test from TARGET_DEFAULT_JAVA_LIBRARIES"
am: 6cf9da761a

Change-Id: Ie5425a088e63d2b13c1b4e92da2243176ce9706b
2017-02-20 11:58:37 +00:00
Paul Duffin 6cf9da761a Merge "2nd attempt to remove legacy-test from TARGET_DEFAULT_JAVA_LIBRARIES" 2017-02-20 11:51:01 +00:00
Colin Cross 58ffd38f97 Merge "Revert "Revert "Add soong_javac_filter to all javac commands"""
am: 29f3642dd1

Change-Id: I1e39a9155fecc6cb0a1031d2b04299fdfdf1442b
2017-02-20 07:01:22 +00:00
Colin Cross 440079b84b Revert "Revert "Add soong_javac_filter to all javac commands""
This reverts commit 52d2253ff9.

Test: pipe the grok build output through soong_javac_filter
Change-Id: I449a61ed2c95b3e1afd51a31a11baab15d97e2f2
2017-02-19 19:56:51 -08:00
Colin Cross 2f23c5caf7 Merge "Disable building coverage with javac"
am: 271b1f6521

Change-Id: Ie65e362bd9736623dec3041891f060cf56b98895
2017-02-19 06:28:53 +00:00
Treehugger Robot 271b1f6521 Merge "Disable building coverage with javac" 2017-02-19 06:22:26 +00:00
Colin Cross 25a79dacd9 Disable building coverage with javac
Emma is unable to process framework.jar, and making framework
classes.jar depend on the emma output causes builds to fail when
emma is enabled.  Make classes.jar depend on the jarjar output
instead, bypassing emma for now.

Test: m -j EMMA_INSTRUMENT=true EMMA_INSTRUMENT_FRAMEWORK=true check-public-api
Change-Id: I861282292816e29ca27b67a3eef978d951c1a4dc
2017-02-17 23:47:26 -08:00
Colin Cross 9003bc7d4b Merge "Build all the way to classes.dex for checkbuild"
am: 41c7d8423b

Change-Id: I11b0cea9ccd40b29e6dc1338a0d29194df1d2579
2017-02-18 01:38:21 +00:00
Treehugger Robot 41c7d8423b Merge "Build all the way to classes.dex for checkbuild" 2017-02-18 01:35:40 +00:00
Colin Cross e4381dcac2 Merge "Add a desugar step between javac and proguard"
am: 9e92c2fd18

Change-Id: I1bcbc1a9d98cad43b5f67f54b8e09de8bf8eb67b
2017-02-18 01:13:19 +00:00
Colin Cross 9e92c2fd18 Merge "Add a desugar step between javac and proguard" 2017-02-18 01:10:08 +00:00
Tao Bao 6498b2efbf Merge "Build FUTILITY tool from futility-host."
am: c53607d9cc

Change-Id: Ieabf4a622916a7ed18b0adac4f5091dcea96d659
2017-02-18 01:09:48 +00:00
Tao Bao c53607d9cc Merge "Build FUTILITY tool from futility-host." 2017-02-18 01:04:31 +00:00
Dan Willemsen e4a0dd15cc Merge "Remove unused zipalign macros"
am: 56183c2ee2

Change-Id: I7c743f2b694652af35f74b0e61c3dfe290812b18
2017-02-18 00:18:45 +00:00
Treehugger Robot 56183c2ee2 Merge "Remove unused zipalign macros" 2017-02-18 00:12:42 +00:00
Dan Willemsen ea2687fab6 Merge "Add Header Library support to Make"
am: 4f794fdd50

Change-Id: I44b0f0fe5c0f4d65bf205165e4ec05403f738066
2017-02-17 23:55:16 +00:00
Dan Willemsen 4f794fdd50 Merge "Add Header Library support to Make" 2017-02-17 23:50:41 +00:00
Colin Cross e1159f5b39 Build all the way to classes.dex for checkbuild
Test: m -j checkbuild
Change-Id: Ie1b7be01c9bbcf1a32399f19d050a93410bdb42b
2017-02-17 15:03:07 -08:00
Colin Cross eac5ce4e97 Add a desugar step between javac and proguard
This enables support for lambdas by passing class files through the
desugar tool.

Test: m -j checkbuild tests cts
Change-Id: I14ec152355243fd67fe2f107ccbe67a1b4e7e262
2017-02-17 15:03:06 -08:00
Colin Cross cb78c50239 Merge "Revert "Add soong_javac_filter to all javac commands""
am: 6dd4debe74

Change-Id: I31aedc360439bd26f205d6db1502297d7ca5b63a
2017-02-17 23:00:09 +00:00
Colin Cross 6dd4debe74 Merge "Revert "Add soong_javac_filter to all javac commands"" 2017-02-17 22:54:06 +00:00
Colin Cross 52d2253ff9 Revert "Add soong_javac_filter to all javac commands"
This reverts commit a341bf0f86.

Breaks grok builds that replace javac with another tool:
reading standard input: bufio.Scanner: token too long

Change-Id: I825587c465b05c1fbddb7794dc1c84f5f2c883d1
2017-02-17 22:53:42 +00:00
Colin Cross 8283b186be Merge changes I7e8fcd2e,Ie12d743c
am: 547f7393d7

Change-Id: Id9cd5b894a599ca660363234863fdfc6602575d2
2017-02-17 22:34:39 +00:00
Colin Cross 547f7393d7 Merge changes I7e8fcd2e,Ie12d743c
* changes:
  Add soong_javac_filter to all javac commands
  Re-enable dx support
2017-02-17 22:19:08 +00:00
Tao Bao e98fb7a8d3 Build FUTILITY tool from futility-host.
Also pack the tool, vboot_signer.sh script and the test keys into
otatools.zip. This allows signing ryu target without a source repo.

Bug: 35467608
Test: m otatools-package and check the newly included files.
Test: Use otatools.zip to sign a ryu target.
Change-Id: I70f7b359f21a579463d5c7251daac81a97e338cc
2017-02-17 14:16:46 -08:00