Commit Graph

32736 Commits

Author SHA1 Message Date
Colin Cross
8873713f36 Add TARGET_PLATFORM_VERSION to lunch
lunch can now take combos in the form:
$TARGET_PRODUCT
$TARGET_PRODUCT-$TARGET_BUILD_VARIANT
$TARGET_PRODUCT-$TARGET_BUILD_VARIANT-$TARGET_PLATFORM_VERSION

If all 3 are not specified the unspecified ones will take the
default values provided by the build system (eng, and currently
OPR1).

In addition, error handling for invalid products, variants and
versions is moved to the build system.

Bug: 34972208
Test: build/make/tests/envsetup_tests.sh
Change-Id: Ib0aaa98633448ba9bd8df911704c9cb3a8ebbe85
2017-03-23 09:44:08 -07:00
Treehugger Robot
2c280271ac Merge "Add a missing default value for OPTIONS.extracted_input." 2017-03-22 07:34:15 +00:00
Tao Bao
5f8ff9319b Add a missing default value for OPTIONS.extracted_input.
Test: ota_from_target_files.py without --extracted_input_target_files.
Change-Id: Ieaba43fa557b544b24f3eeccd68ac289d1fe3d31
2017-03-21 22:36:20 -07:00
Dan Willemsen
47ba4239c8 Merge "Speed up non-AB ota_from_target_files in the build system" 2017-03-22 01:41:39 +00:00
Treehugger Robot
53d66b5903 Merge "Use new naming scheme for TARGET_PLATFORM_VERSION" 2017-03-22 01:19:53 +00:00
Jaesoo Lee
946af3fa5d Merge "removed "android.hardware.configstore@1.0-impl" from PRODUCT_PACKAGES" 2017-03-22 00:42:33 +00:00
Colin Cross
9efe51f27a Use new naming scheme for TARGET_PLATFORM_VERSION
Replace the current naming scheme for TARGET_PLATFORM_VERSION
(O, ODR1, OMR1, P) with one that matches the user-visible
branch version (OPR1, OPD1, OPM1, PPR1).

Temporarily map P -> PPR1 to decouple this change from updating
the build servers.

Bug: 34972208
Test: m -j TARGET_PLATFORM_VERSION=PPR1
Test: m -j TARGET_PLATFORM_VERSION=P
Change-Id: Ib00b13abe79a744e344b88bb1d800524ab09d585
Merged-In: Ib00b13abe79a744e344b88bb1d800524ab09d585
2017-03-21 23:38:02 +00:00
Dan Willemsen
cea5cd210e Speed up non-AB ota_from_target_files in the build system
We've just created the target files package and still have the extracted
directory, so pass that to ota_from_target_files so that it doesn't have
to re-extract what we just compressed.

This saves a little bit of time -- for bullhead-userdebug on internal
master, this brings the time to build an OTA from ~340s -> ~310s. Much
of the time is still spent generating and signing the OTA.

Test: lunch bullhead-userdebug; m -j otapackage
Test: bullhead-ota-*.zip is identical before/after
Change-Id: Ib51cf6b02123e9c49280e9957c6590645470a52c
2017-03-21 15:34:27 -07:00
Treehugger Robot
8b6458e9a9 Merge "Fixed the issue that dirname: META got zipped twice." 2017-03-21 22:15:19 +00:00
Nan Zhang
cabecd9c55 Fixed the issue that dirname: META got zipped twice.
When building target-files-package, dir: META has to be copied first
to help early validation of the .zip file.

In order to prevent $(zip_root)/META from getting copied twice to $@.list,
use the method (find -path -prune -o -print) instead of (grep pattern -v).

Test: m target-files-package
Bug: b/31676493
Change-Id: Id6b4d77fb62aa136253de88573cc51a575b90be2
2017-03-21 20:07:41 +00:00
Colin Cross
767cb900a1 Merge changes I0508b2cc,I3d6bbc36
* changes:
  Don't desugar static java libraries
  Use DEFAULT_APP_TARGET_SDK for dx and desugar
2017-03-21 19:30:46 +00:00
Colin Cross
31060fdde1 Don't desugar static java libraries
Static java libraires are designed to be included in another
java library.  If desugar runs on the static java library,
the resulting jar will contain the desugared lambda classes.
When the static jar is included into another java library
and desugar runs again, it desugars the static java library
classes again, producing the same desugared lambda classes
and colliding in the final jar.

Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I0508b2cc9c56dbbd4ac0aba44fb99ea2a27715e0
2017-03-21 10:23:45 -07:00
Colin Cross
d01997faa6 Use DEFAULT_APP_TARGET_SDK for dx and desugar
DEFAULT_APP_TARGET_SDK is PLATFORM_VERSION_CODENAME (for example 'P')
for non-release builds, and PLATFORM_SDK_VERSION (for example 25) for
release builds.  Use it for dx and desugar, and translate
PLATFORM_VERSION_CODENAME to 10000 to enable features in the current
development version.

Bug: 36087246
Bug: 36118520
Test: m -j ANDROID_COMPILE_WITH_JACK=false
Change-Id: I3d6bbc36a8869e4ced6bb850bc32f37b4cba3f85
2017-03-21 10:23:45 -07:00
Treehugger Robot
d69837deea Merge "Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE" 2017-03-21 06:02:14 +00:00
Dan Willemsen
05a2b931e9 Add LOCAL_VENDOR_MODULE as a synonym to LOCAL_PROPRIETARY_MODULE
The vendor image will have more than just proprietary modules in it
under Treble, so let's stop marking open source code as proprietary just
to move it to vendor.

Bug: 36452052
Test: compare build-aosp_arm.ninja before/after, no changes.
Test: Try defining LOCAL_VENDOR_MODULE / LOCAL_PROPRIETARY_MODULE in the
same and different ways, ensure it works.
Change-Id: I0ab046bcb7563a20d44ed00667e18497ef0873a8
2017-03-20 20:57:04 -07:00
Jaesoo Lee
a1d99c1351 removed "android.hardware.configstore@1.0-impl" from PRODUCT_PACKAGES
This change removes the passthough mode implemention of Configstore.

Bug: 35325577
Test: android.hardware.configstore@1.0-impl.so not exist in outputs and
    Configstore works in binderized mode

Change-Id: Ie9ec24c33701356b7fa8c4f6cfc372c09051f62c
Merged-In: Ic16d5ebe30fabfd62ba4e444fe2775ddfbe2a18a
2017-03-21 11:01:53 +09:00
Jin Qian
5b216025ba Merge "Revert "device-tests: As a dependency to tests"" 2017-03-21 01:03:08 +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
Treehugger Robot
ebf57f6f0a Merge "Remove USE_SOONG_UI=false" 2017-03-20 23:11:10 +00:00
Treehugger Robot
46eeb0580c Merge "Use built module instead of installed module for profman" 2017-03-20 22:46:07 +00:00
Treehugger Robot
26594fce3f Merge "device-tests: As a dependency to tests" 2017-03-20 22:15:34 +00:00
Dan Willemsen
25e9607a46 Remove USE_SOONG_UI=false
Test: m -j
Change-Id: I4eccbf9884385f11db84f6e0f28d55d21d06cac3
2017-03-20 14:22:20 -07:00
Dan Willemsen
3d072d547f Use built module instead of installed module for profman
This means that we won't have to rebuild the odex files after an
installclean.

Test: profile.prof is identical before/after
Test: m -j; m installclean; m -j
Change-Id: I53c630ce0c5a985d856e26bd7bb3d8c76958aaab
2017-03-20 14:00:31 -07: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
Treehugger Robot
8311d46c86 Merge "Revert "install *.so in different paths for their types"" 2017-03-17 22:45:31 +00:00
Treehugger Robot
dd908dd925 Merge "device-tests & general-tests: build out zips." 2017-03-17 17:45:05 +00:00
Treehugger Robot
406d3b6df1 Merge "Emulator: Enable logcat -Q to run in emulator" 2017-03-17 16:23:54 +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
Tao Bao
83a6b953c9 Merge "releasetools: Remove a dead line." 2017-03-16 22:24:25 +00:00
Tao Bao
2f80e83e98 releasetools: Remove a dead line.
system_root_image has been dead since commit
2ce63edab7.

Test: pylint --rcfile=pylintrc add_img_to_target_files.py
Change-Id: Id791747b7313923b82279a21d264a998455a92d4
2017-03-16 11:59:24 -07:00
Tianjie Xu
53ba93d615 Merge "Provide more info for bsdiff/imgdiff exceptions." 2017-03-16 18:43:28 +00:00
Treehugger Robot
3fd80635af Merge "Add TARGET_OUT_VENDOR_RENDERSCRIPT_BITCODE definition." 2017-03-16 06:45:48 +00:00
Treehugger Robot
d5c3d1366f Merge "Silence module path warnings for a while" 2017-03-16 05:49:25 +00:00
bohu
8c3364bd59 Emulator: Enable logcat -Q to run in emulator
Create qemu_cmdline property and make sure logcat
can read it.

Change-Id: I83261a1ba29ecf9fd9b51a815425742177018c87
2017-03-15 22:27:08 -07: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
Treehugger Robot
f32107fbb2 Merge "Remove unused /selinux_version" 2017-03-15 19:59:03 +00:00
Treehugger Robot
da00e137ec Merge "Compute PLATFORM_VERSION and PLATFORM_VERSION_CODENAME" 2017-03-15 17:04:58 +00:00
Alex Klyubin
4fe461d2a0 Remove unused /selinux_version
This file is no longer needed because it was needed for supporting
reloadable/dynamic SELinux policy which is no longer supported.

Test: Clean build, flash, device boots without additional denials.
      Reboot to recovery works, no additional denials.
Bug: 33642277
Change-Id: Ie65e74b8c8437694bc1ea019ab844f60f9e89ade
2017-03-15 09:47:36 -07:00
Colin Cross
e0e20079c2 Merge "package-modules: use && instead of ; between copy commands" 2017-03-15 02:09:20 +00:00
Tianjie Xu
b59c17fc8f Provide more info for bsdiff/imgdiff exceptions.
When bsdiff/imgdiff fails, dump the output along with the src/tgt
filenames and block ranges. Also, exit the script gracefully instead
of raising an exception about iterating over 'NoneType'.

Bug: 31381530
Test: Package generates successfully for angler, and error outputs
      correctly with error injection.

Change-Id: I06a2dfe545fbdff7043de05fee34b378453a9291
2017-03-14 18:51:21 -07: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
Treehugger Robot
77dab1ed35 Merge "Add /file_contexts.bin only to devices which need it" 2017-03-14 14:41:31 +00:00
Jaesoo Lee
2b61f19254 Merge "configstore: add default implementation of configstore@1.0 HAL" 2017-03-14 06:44:13 +00:00
Treehugger Robot
b1331938a3 Merge "fix: cannot determine the type of modules with class 'samples'" 2017-03-14 02:14:59 +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
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
6d0f949296 Merge "Speed up *TS zip file creation" 2017-03-13 19:50:44 +00:00