Commit Graph

11389 Commits

Author SHA1 Message Date
Connor O'Brien 20f08c3e16 Pass flash erase & logical block size to mke2fs
This information can be used to tune ext4 stripe and stride in the
userdata partition for better performance

Test: Build & flash userdata, confirm correct stripe & stride values
Bug: 33243520
Merged-In: Ia97cdd2d0239c3484b895fce49299f692ef911d8
Change-Id: Ia97cdd2d0239c3484b895fce49299f692ef911d8
Signed-off-by: Connor O'Brien <connoro@google.com>
2017-01-13 12:17:05 -08:00
Joachim Sauer 4dbe67cddc Merge "Add java.time packages to whitelist." 2017-01-13 10:18:20 +00:00
Treehugger Robot 7b66d28b25 Merge "Add mk file parsers to support build variables required by system/bt" 2017-01-12 08:31:26 +00:00
Jack He da214cd572 Add mk file parsers to support build variables required by system/bt
* BtConfigIncludeDir: Path to device specific config headers
                      BOARD_BLUETOOTH_BDROID_BUILDCFG_INCLUDE_DIR
* BTHcilpIncluded: Path to Hcilp headers
                   BOARD_BLUETOOTH_BDROID_HCILP_INCLUDED
* BtHciUseMct: Whether MCT is used
               BLUETOOTH_HCI_USE_MCT

Bug: 32958753
Test: Code compilation, no user visible effects

Change-Id: I94cad65c77464e5b467abee05951ddfd35b9f27d
2017-01-11 17:11:32 -08:00
Treehugger Robot c1df498f0c Merge "Don't run find on directories that don't exist" 2017-01-11 23:42:41 +00:00
Colin Cross efb30be703 Don't run find on directories that don't exist
$(shell find vendor) causes a warning in AOSP where vendor doesn't
exist.

Test: m -j, no warning
Change-Id: I28916594e0720c53823a3d9ed99b8af1d356af23
2017-01-11 23:31:46 +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
Jean-Luc Brouillet a3ab4cc9c9 Merge "Move rs/scriptc to rs/script_api/include." 2017-01-11 02:04:16 +00:00
Jean-Luc Brouillet eba449391e Move rs/scriptc to rs/script_api/include.
Test: Compiled ImageProcessing_jb

Change-Id: Icf05a603671499665d2f31a8989fa69585a6f834
2017-01-08 17:57:48 -08: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
Dan Willemsen 81648927fb Merge "TARGET_RECOVERY_UPDATER_LIBS should not be used with AB updates" 2017-01-05 22:42:07 +00: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
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
Treehugger Robot 1a4a0a4539 Merge "Define TARGET_OUT_VENDOR_APPS_PRIVILEGED for 2nd arch" 2017-01-04 02:44:04 +00:00
Treehugger Robot c184ef515c Merge "Remove option for non-pic dex preopt." 2017-01-03 09:39:39 +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 561b0a3753 Merge "Support non-gtest NATIVE_TESTS" 2016-12-22 20:29:41 +00: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 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
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
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
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
dcashman 086189145c Add build dependencies for split sepolicy files.
Add build targets for split sepolicy files so they'll appear in the root dir for
on-device compilation.  nonplat_sepolicy will eventually be removed as it should
be provided by a different partition.  Also replace sepolicy.recovery with the
appropriate split components.

Bug: 31363362
Test: Policy builds on-device and boots.
Change-Id: I017dabe6940c3cd20de6c00bb5253274d5a9269b
2016-12-16 14:01:29 -08:00
Alex Klyubin 3cfff7386f Merge "aapt no longer needed for signing APKs" 2016-12-16 17:21:13 +00:00
Alex Klyubin 5a1ba84c30 Merge "Remove unused get-package-min-sdk-version-int" 2016-12-16 17:20:23 +00:00
Vijay Venkatraman e4be608d2f Merge "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-16 02:11:12 +00:00
Vijay Venkatraman 823172e209 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 2b6c204c73.

Change-Id: I60a042f2ed0c767ec3a45c31ee1b99d43891efaa
2016-12-16 02:08:18 +00:00
Alex Klyubin 664cc31fd8 Remove unused get-package-min-sdk-version-int
The only user of get-package-min-sdk-version-int was signapk. signapk
no longer needs to be provided with the APK's minSdkVersion though.

(cherry picked from commit e185da21ca)
Test: make clean && make

Change-Id: I6867a004aec0f3752cbbc99cc30e02ca5404b3c4
2016-12-15 16:37:37 -08:00
Alex Klyubin 1b391c002d aapt no longer needed for signing APKs
signapk now auto-detects the APK's minSdkVersion, removing the need to
run aapt dump badging during APK signing.

Test: make clean && make
Change-Id: Ifc74292a9900443d053e437b50b540c8d0b33dbd
2016-12-15 16:37:21 -08:00
Vijay Venkatraman b777f169f8 Merge "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-15 21:26:16 +00:00
Treehugger Robot f61205d5c7 Merge "Remove variables exported by Soong" 2016-12-15 07:19:03 +00:00
Treehugger Robot e9c4079e91 Merge "Don't clean generated java sources when AIDL list changes" 2016-12-15 07:01:13 +00:00
Dan Willemsen 3c6bba0af0 Don't clean generated java sources when AIDL list changes
AIDL doesn't generate into the intermediate src directory, we pass exact
aidl->java files to the compiler. So there is no need to clean the
intermediate src directory when the aidl file list changes for a module.

Test: None, just code inspection
Change-Id: I01feff7cc399ac5b88b83333a1ac86928d0a81e6
2016-12-14 19:53:54 -08:00
Dan Willemsen d3cc4950f8 Merge "Identify non-local EXPORT_C_INCLUDE_DIRS in soong_to_convert" 2016-12-15 00:30:04 +00:00
Dan Willemsen 56c6a9d1ff Remove variables exported by Soong
LLVM_RELEASE_VERSION is unused from envsetup.sh and during product
config loading.  LLVM_PREBUILTS_VERSION is still used in envsetup.sh, so
needs to stay.

Delay reading core/clang/config.mk until after Soong's variables are
read so that we don't need a copy of LLVM_PREBUILTS_BASE.

Test: Compare build-aosp_flounder.ninja
Change-Id: I85b5836a2230838c8f3766fb19c6108fc5c9ca50
2016-12-14 16:27:08 -08:00
Alex Klyubin 9b75e272b6 Faster auto-detection of APK's minSdkVersion
Prior to this change, when signing APKs, the build system invoked
'aapt dump badging' on each APK, to detect the value to pass into
signapk as --min-sdk-version. Now that signapk uses the apksig
library, it can auto-detect that value on its own, thus avoiding the
need to invoke 'aapt dump badging' and thus speeding up the build
process.

The semantics of signapk's --min-sdk-version flag is changed by this
commit from having the default value of 0 to having the default value
of "auto-detect from APK".

P.S. The get-package-min-sdk-version-int is not removed from
core/definitions.mk in this commnit, because this function is used in
another project's .mk file and thus that .mk file needs to be modified
first.

Test: rm -Rf out/ && make
Change-Id: I0972fcf0abbde9cbf6794e6c05c743c77c8a78f9
2016-12-14 12:53:44 -08:00
Dan Willemsen 0be6907b2b Identify non-local EXPORT_C_INCLUDE_DIRS in soong_to_convert
Soong only supports exporting include directories under the current
directory. So bring non-local directories up as a potential problem in
soong_to_convert.txt

Test: m -j $OUT/soong_to_convert.txt, inspect
Change-Id: I7a15b92e10a1d8b8d3496c6f0529a0d0824f301e
2016-12-13 18:29:59 -08:00
Dan Willemsen d07ba4e2a6 Implement LOCAL_TEST_DATA to ship data with tests
This can be used to ship source data as test artifacts next to native
tests. It works for both local builds and the test bundles using
package_modules.mk.

You just specify a file list relative to the local directory, and those
files will be copied next to the executable under
/data/nativetest*/<module>/...:

  LOCAL_MODULE := mytest
  LOCAL_TEST_DATA := data/file1 file2

  /data/nativetest/mytest/mytest
  /data/nativetest/mytest/data/file1
  /data/nativetest/mytest/file2

If the data is in another directory, you may also specify a different
prefix for the source files:

  LOCAL_TEST_DATA := external/skia:resources/f.xml

  /data/nativetest/skia_test/resources/f.xml

And there's a new convenience macro to find a list of files in this
format:

  LOCAL_TEST_DATA := $(call find-test-data-in-subdirs,external/skia,"*.xml",resources)

I'll expand this to native benchmarks and fuzz tests in a later change,
since they don't have their own module classes yet.

Bug: 30564705
Test: m -j minikin_tests; ls $OUT/data/nativetest*/minikin_tests
Test: m -j continuous_native_tests dist; zipinfo -1 out/dist/*continuous_native_tests*.zip
Change-Id: Ic76a7b62e7f567f259c4ab1510ee97d26600ba9a
2016-12-13 17:18:36 -08:00
Dan Willemsen e26036ad5e Merge "Sort and reorganize clear_vars.mk to make merges easier" 2016-12-13 22:22:59 +00:00
Dan Willemsen d78d6c9fc0 Sort and reorganize clear_vars.mk to make merges easier
Moved common variables from other sections back to the common section,
then sort each section.

Test: build-aosp_angler.ninja is identical before/after
Change-Id: Ibb75935205aa80aaa392c358f8d0599ba624f90d
Merged-In: Ibb75935205aa80aaa392c358f8d0599ba624f90d
2016-12-13 21:14:25 +00:00
Paul Duffin e28eb9ff0e Merge "Use legacy-test instead of core-junit" 2016-12-13 09:34:17 +00:00