Commit Graph

30167 Commits

Author SHA1 Message Date
Dan Willemsen 7db70a3b0a Fix libgcov.a dependency
Now that Soong is generating libgcov.a, we need a dependency here.

Change-Id: Ie8d97339fd584eed178cc57b9333d38754ab1135
2016-09-12 18:09:20 +00:00
David Brazdil 3a04e1b82f Merge "Update build rules for VDEX" 2016-09-12 14:57:19 +00:00
Colin Cross 39c1c9ae12 Merge "Remove global linker search paths" 2016-09-09 20:27:21 +00:00
Colin Cross 067d781530 Remove global linker search paths
Remove the global linker search path, as it can cause spurious build
failures.  If a library with the same name as a system library is in the
process of being written to the directory in the global search path, and
the linker may try to read the partially-written built one instead of the
system one.  We already use full paths to libraries for target builds,
do the same for host builds.  Also remove the normalize library
functions, they are no longer necessary.

Test: m -j checkbuild
Bug: 31393456
Change-Id: If9fc631e111f568c700fd73e103445c30d7e9d11
2016-09-09 11:01:15 -07:00
David Brazdil 70470166c7 Update build rules for VDEX
ART now produces a new output file called VDEX, produced alongside the
existing OAT file. This patch updates the relevant build rules.

Bug: 30937355
Change-Id: Ib6be9f8f36c8f061dbbebd72cb55a5d4b6dc27eb
2016-09-09 09:41:10 +01:00
Treehugger Robot 6b363e24bd Merge "Prevent Kati from seeing MAKEFLAGS" 2016-09-09 01:25:21 +00:00
Dan Willemsen 5ad9ccaf2a Prevent Kati from seeing MAKEFLAGS
We never want Kati to see MAKEFLAGS, as forcefully overriding variables
is terrible. The variables in MAKEFLAGS are still available in the
environment, so if part of the build wants input from the user, it
should be explicitly checking for an environment variable or using ?=

This commit shouldn't actually change any behavior -- the version of
Kati checked into our tree doesn't actually read MAKEFLAGS (the latest
version does, which is why this change is necessary). We're also already
clearing MAKEFLAGS during makeparallel, so the USE_GOMA case already
doesn't pass through MAKEFLAGS.

Test: Manual $(warnings $(origin MYTEST) $(MYTEST)) with old and new Kati
Change-Id: I5e4ffa66b3539a539cc7a26da24645b11445c469
2016-09-08 17:14:43 -07:00
Dan Willemsen b2498a22c2 Merge "Blacklist the GOMACC_PATH environment variable" 2016-09-08 20:47:19 +00:00
Chih-hung Hsieh 9d66e2c2ef Merge "Define DEFAULT_TIDY_HEADER_DIRS." 2016-09-08 20:24:07 +00:00
Dan Willemsen c4f595e88f Blacklist the GOMACC_PATH environment variable
The clang compiler wrapper will be looking for this environment
variable, but it should only ever be set by the `gomacc` in CC_WRAPPER.
Make sure that it isn't otherwise set in the environment.

Change-Id: I4b26c7183bc47f71dffa7dfcc2e5b08e840a11b1
2016-09-08 12:45:15 -07:00
Treehugger Robot 6e85eeaf53 Merge ""SignApk" in Created-By header" 2016-09-08 17:10:37 +00:00
Treehugger Robot d81559e6ac Merge "Build symlinks for -host and -target phony modules" 2016-09-07 22:00:24 +00:00
Colin Cross aaf888a09a Build symlinks for -host and -target phony modules
Move extra module dependencies like symlinks from dependencies of
$(my_register_name) to $(my_all_targets), and make $(my_register_name)
and other convenience phony modules depend on $(my_all_targets).  Move
$(LOCAL_MODULE)-host/-target to depend on $(my_all_targets) instead of
directly depending on the built and installed modules.

Change-Id: I3b093986db7a1bff118f1f2482275f0997a98fb6
2016-09-07 14:03:32 -07:00
Alex Klyubin 969e354b1f "SignApk" in Created-By header
The switch to apksig changed the Created-By header value in .SF file
from "1.0 (Android SignApk)" to "1.0 (Android apksigner)". This commit
reverts the value back to "1.0 (Android SignApk)".

Change-Id: I2fc462cade40a5b31bb6191996fd6f18fabbf08f
2016-09-07 13:21:00 -07:00
Treehugger Robot bfea84dabc Merge "Add tool to copy files in to fat16 images" 2016-09-07 19:51:06 +00:00
Chih-hung Hsieh 0c9a2ee864 Merge "Recognize new clang-tidy and Java warnings." 2016-09-07 05:27:45 +00:00
Chih-Hung Hsieh 0862c48770 Recognize new clang-tidy and Java warnings.
Test: run warn.py with build.log
Change-Id: I11ff844bcfd7fb13aef8909307bc7eb1f5ee9b2a
2016-09-07 05:27:16 +00:00
Chih-Hung Hsieh 0a33f65cc8 Define DEFAULT_TIDY_HEADER_DIRS.
Let clang-tidy report warnings in header files in the
system and current directories but not the external
and vendor directories.

Test: build with WITH_TIDY=1
Change-Id: I1723b8eb95948961fb7164a19989e0a926e5bf8a
2016-09-06 20:06:28 -07:00
Treehugger Robot 126ea5a55c Merge changes I65c3fa9a,Id1ea5e8b
* changes:
  Pair mips64r6 with mips32r2 on Aosp
  Allowing pairing mips64r6 with mips32r1 and r2
2016-09-06 22:38:40 +00:00
Treehugger Robot 72dcbeb4bc Merge "Use full path in symbols zip file" 2016-09-06 21:40:19 +00:00
Dan Willemsen 572deecbca Use full path in symbols zip file
This was accidentally changed when moving to soong_zip.

Change-Id: I5f889c3c83b6f888e765d4c35486576fa11f6945
2016-09-06 13:47:05 -07:00
Colin Cross 182ff5e2e7 Merge "Remove HOST_PREFER_32_BIT" 2016-09-03 00:29:41 +00:00
Vishwath Mohan 0464662888 Merge "Create sub-directory for fuzzers under nativetest." 2016-09-02 21:27:41 +00:00
Casey Dahlin 29e2b21c0a Add tool to copy files in to fat16 images
fat16copy.py can be used to copy files or directories in to the root of
a fat16 image.

Usage: fat16copy <image> <file> [<file> ...]

Test: Used to compose a Raspberry Pi 3 boot image
Bug: 28912590
Change-Id: I29c9eec3786e2c5cc94f9a160360bac850809a93
2016-09-02 14:13:47 -07:00
Vishwath Mohan b6baba059b Create sub-directory for fuzzers under nativetest.
This CL changes BUILD_FUZZ_TEST to generate binaries in a
sub-directory called fuzzers/ under the nativetest directory. This
allows fuzzers to be distinguished from the other native tests and
makes it easier to perform automated fuzz-testing.

Bug: 25714111
Change-Id: I452e43f15728ec9168dd44776b6ffcea6037fa7f
2016-09-02 13:25:59 -07:00
Colin Cross 70e0ac6bc1 Remove HOST_PREFER_32_BIT
HOST_PREFER_32_BIT was used during the switch to 64-bit host tools to
keep the SDK building as 32-bit, but is never set any more.

Change-Id: I874f89c7d1e9cd8c9d4c879048d81a4362ce4dce
2016-09-02 13:20:52 -07:00
Treehugger Robot ef5751c1ec Merge "build_image: add padding to match partition size" 2016-09-02 18:13:34 +00:00
Sami Tolvanen 433905f50e build_image: add padding to match partition size
For some partition sizes, we currently build an image that's 1-2
blocks smaller than the actual partition, which causes fs_mgr to
not find metadata. This change adds padding to FEC metadata that
correctly positions the metadata header at the end.

Bug: 28865197
Change-Id: Ie0e044715a9c5ae8ba395e7d2ff9fbd7cffc0b4c
2016-09-02 10:20:02 -07:00
Treehugger Robot 5ccafd0f29 Merge "Walk up tree to find makefiles in mma" 2016-09-01 23:34:52 +00:00
Colin Cross 127fceae06 Walk up tree to find makefiles in mma
Call findmakefile in mma to walk up the tree to find the nearest
makefile.  Fixes mma in subdirectories of directories that have
Android.mk or Android.bp files.

Change-Id: I6fa509171699071fc34a2a75dd7e191d4ddca31a
2016-09-01 15:35:57 -07:00
Treehugger Robot a5b02ff1ef Merge "Canonicalize mmm path" 2016-09-01 17:04:50 +00:00
Colin Cross b7a12806b1 Merge "Don't double-wrap with gomacc" 2016-09-01 15:59:38 +00:00
Colin Cross 4bfae06e71 Canonicalize mmm path
Canonicalize the mmm path relative to the top level before creating the
MODULES-IN-dir target.  Fixes cd frameworks/base; mmm -j .

Test: cd frameworks/base; mmm -j
Change-Id: If7bc321e8a87b76121f876bf4bc296b0f9b80578
2016-08-31 22:00:03 -07:00
Colin Cross 44303e9f26 Merge "Create more shortcut phony targets" 2016-08-31 21:16:22 +00:00
Colin Cross 44005d41dc Don't double-wrap with gomacc
config.mk is parsed by make and then kati, and goma.mk appends to
CC_WRAPPER.  Only export it from make so gomacc doesn't appear twice on
the command line.

Bug: 31142427
Change-Id: I5ad97ee3a00b013faa620215c839499b48528e00
2016-08-31 13:51:16 -07:00
Colin Cross 753ed863c5 Merge "Enable goma in soong" 2016-08-31 20:08:57 +00:00
Colin Cross 5a5befb7c0 Enable goma in soong
Pass the USE_GOMA flag to soong, and export the CC_WRAPPER environment
variable after adding gomacc to it.

Bug: 31142427
Change-Id: I6de698a40817c0615b03fa17bd27075465d79ffd
2016-08-31 09:48:21 -07:00
Dan Willemsen 2e5dc07c1f Merge "Simplify Soong bootstrapping" 2016-08-31 16:06:35 +00:00
Dan Willemsen 0533e4df40 Simplify Soong bootstrapping
Now we only run the "main" stage from Soong once, and only when combined
with the Kati ninja file. So we can now depend on pools or rules defined
by Kati in Soong.

Change-Id: I7a8fd699ddc0d41bbcbbf3c6f2edb9e26ccfc4c9
2016-08-31 00:58:12 -07:00
Colin Cross b43204b2ac Create more shortcut phony targets
Create shortcut phony targets for the host and device halves of
modules.

Change-Id: I1cf3a49118db830d78a1b83b2177715175949871
2016-08-30 16:16:32 -07:00
Treehugger Robot 049dd57872 Merge "Check USE_GOMA consistently" 2016-08-29 20:36:00 +00:00
Pirama Arumuga Nainar 3500ddfe1b Merge "Switch to prebuilt clang-3217047" 2016-08-29 19:38:34 +00:00
Dan Willemsen 937cef48eb Check USE_GOMA consistently
Currently, the only way to properly disable goma is to unset USE_GOMA.
If you set USE_GOMA=false, we won't turn on goma, but we'll pass -j500
to ninja.

Test: USE_GOMA={x,false} m -j48 showcommands (inspect)
Change-Id: I6b327d08ebadbe614a3bf7646fd597054bbfaaa2
2016-08-27 18:33:11 -07:00
Treehugger Robot c6bada8acd Merge "Identify modules ready to be converted to Soong" 2016-08-26 22:37:19 +00:00
Pirama Arumuga Nainar 6290aac57a Switch to prebuilt clang-3217047
Bug: http://b/30421084
Change-Id: I41acd016992a0c5043b6ea018f205fad44c88b9e
Test: Tested build, boot and common usage for several devices in AOSP
and internal branch.
2016-08-26 21:57:29 +00:00
Dan Willemsen fc92fb2b9b Identify modules ready to be converted to Soong
The output will be in the `m dist` results as soong_to_convert.txt, or
can be built using:

  $ m $OUT/soong_to_convert.txt

The output is a list of modules that are probably ready to convert to
Soong:

  # Blocked on Module (potential problems)
           283 libEGL (srcs_dotarm)
           246 libicuuc (dotdot_incs dotdot_srcs)
           221 libspeexresampler
           215 libcamera_metadata
               ...
             0 zram-perf (dotdot_incs)

The number at the beginning of the line shows how many native modules
depend on that module.

All of their dependencies have been satisfied, and any potential
problems that Make can detect are listed in parenthesis after the
module:

  dotdot_srcs: LOCAL_SRC_FILES contains paths outside $(LOCAL_PATH)
  dotdot_incs: LOCAL_C_INCLUDES contains paths include '..'
  srcs_dotarm: LOCAL_SRC_FILES contains source files like <...>.c.arm
  aidl: LOCAL_SRC_FILES contains .aidl sources
  dbus: LOCAL_SRC_FILES contains .dbus-xml sources
  objc: LOCAL_SRC_FILES contains Objective-C sources
  proto: LOCAL_SRC_FILES contains .proto sources
  rs: LOCAL_SRC_FILES contains renderscript sources
  vts: LOCAL_SRC_FILES contains .vts sources

Not all problems can be discovered, but this is a starting point.

Change-Id: I45674fe93fd267d4d1fb0bc3bc9aa025e20c5ac6
2016-08-26 13:33:31 -07:00
Treehugger Robot fe3163400e Merge "Export TARGET_PREFER_32_BIT_EXECUTABLES to soong" 2016-08-26 00:02:34 +00:00
Colin Cross 76c4533899 Export TARGET_PREFER_32_BIT_EXECUTABLES to soong
Change-Id: I1427d88c7539c5ed0c4c238bad4a28f73d29ef0f
2016-08-25 14:49:17 -07:00
Colin Cross 6f1cf129f2 Merge "Install symlinks when using shortcut phony targets" 2016-08-25 20:39:31 +00:00
Chih-hung Hsieh a9ee94f441 Merge "Suppress clang-tidy checks in frameworks/compile/mclinker." 2016-08-25 02:24:32 +00:00