Commit Graph

5437 Commits

Author SHA1 Message Date
Jeff Gaston 1855861067 Merge "Prohibit accidental renames of product config json fields"
am: e261615792

Change-Id: Ib18850cfb81f7d3f5f69305f236e3d6c3972372f
2017-11-21 20:26:28 +00:00
Jeff Gaston e261615792 Merge "Prohibit accidental renames of product config json fields" 2017-11-21 20:20:42 +00:00
Pirama Arumuga Nainar c17b275ed3 Use -mcpu=cortex-a53 for devices with Kryo
Bug: http://b/69481735

While Clang supports -mcpu=kryo, the GNU assembler doesn't.  Use
Cortex-a53 instead, which is close to Kryo.  The current alternative of
using Krait causes problems when also using armv8, which is not
available in Krait.

Test: Build marlin with internal CL 3248394 cherry-picked.
Change-Id: I571739e6ab4f1b37fafb304ecad2865c9394e04f
2017-11-21 09:35:42 -08:00
Colin Cross 1c2a091d8f Make AndroidRuleFunc callback take a Config
am: cf31fcfc71

Change-Id: Ia982afcebaaa0efac1b42fbc002ccdca5419fa7b
2017-11-21 04:44:30 +00:00
Chih-Hung Hsieh 64a38dcb18 Add default -Wall -Werror or -Wall.
* When -Wno-error and -Werror are not used:
  add -Wall to the front of cflags
  if the project is in the WarningAllowedProjects,
  otherwise add -Wall -Werror.
* Add -Wall -Werror to ndk_library build targets.
* Collect names of modules with -Wno-error or without -Werror,
  and pass them to makefile variables:
      SOONG_MODULES_USING_WNO_ERROR
      SOONG_MODULES_ADDED_WERROR
      SOONG_MODULES_ADDED_WALL
* Generate ANDROID_WARNING_ALLOWED_PROJECTS for old makefiles.

Bug: 66996870
Test: normal build
Change-Id: I31385e12b80ca946c7395a5a184ef259b029aac6
2017-11-20 18:28:26 -08:00
Jeff Gaston f5f6e49478 Prohibit accidental renames of product config json fields
Can be caused by `json:"omitempty"` instead of `json:",omitempty"`

Bug: 69076024
Test: m -j # which runs unit tests
Change-Id: I92e3193d00a740c72d36a56748e0b0a8ad1d772e
2017-11-20 16:28:53 -08:00
Colin Cross cf31fcfc71 Make AndroidRuleFunc callback take a Config
Convert the interface{} to android.Config before calling
the callback.

Test: m checkbuild
Change-Id: Iab1173d3c0bbeff662afcbc1d6ce7c982b6b7720
2017-11-20 12:23:00 -08:00
Tobias Thierer 90b3c9f593 Merge "kotlinc: Always pass -jvm-target 1.8"
am: 6693613f11

Change-Id: Id7e6ec4d5a1c90eb74e2bd83dd4f1294ab2aef91
2017-11-20 13:17:28 +00:00
Tobias Thierer 6693613f11 Merge "kotlinc: Always pass -jvm-target 1.8" 2017-11-20 13:14:05 +00:00
Tobias Thierer 96427d63bc kotlinc: Always pass -jvm-target 1.8
AOSP's current version of kotlinc only supports -jvm-target
1.8 or 1.6. Previously, we were passing the javaVersion
(the value passed to javac -target) but that would fail if
javaVersion was eg. 1.9.

This CL changes the kotlinc invocation to always pass
-jvm-target 1.8, regardless of javaVersion.

Bug: 69160377
Test: Treehugger
Change-Id: Ib12a8c2afbe908319513861a5380e70bf09d0be0
2017-11-18 04:11:59 +00:00
Colin Cross 8a4e6952f6 Merge "Revert "Set -fomit-frame-pointer for all devices""
am: ea7b201536

Change-Id: If28de88b9a78a01605cfb0c3590af79721b84faa
2017-11-18 02:15:19 +00:00
Treehugger Robot ea7b201536 Merge "Revert "Set -fomit-frame-pointer for all devices"" 2017-11-18 02:13:08 +00:00
Colin Cross bc2c7c26e1 Revert "Set -fomit-frame-pointer for all devices"
This reverts commit 20823f95e6.

Reason for revert: caused a minor performance regression in some benchmarks.

Bug: 69470341
Test: builds
Change-Id: I1a852b5d7a2aa1d08ecb54617898f814cddd7600
2017-11-18 00:11:21 +00:00
Colin Cross afe52cbd9d Replace root.bp with a comment
am: 393667285e

Change-Id: Ic9caad113669faedf71478845f7b0343bfa38519
2017-11-17 23:11:08 +00:00
Colin Cross 12a6e4705e Add license headers to all go and shell files
am: d00350c61b

Change-Id: I28a229fe5c3e38a79f2a2c0560e6924bd95ba50b
2017-11-17 23:11:06 +00:00
Colin Cross 393667285e Replace root.bp with a comment
root.bp is no longer useful, replace its contents with a comment.

Bug: 64363847
Test: m checkbuild
Change-Id: I41f5bfa06edc26c86f372224c90300b687a32ab2
2017-11-17 23:05:41 +00:00
Colin Cross d00350c61b Add license headers to all go and shell files
Test: none
Change-Id: I75c443e05f2b1e17fcb6823182717d2e6f5df7c4
2017-11-17 23:05:26 +00:00
Jeff Gaston dea7e4d932 Autodetect files named Android.bp in tests
Bug: 65683273
Test: m -j nothing # which runs unit tests
Change-Id: I416530eba1f30ffe0c38609483d7e548b0a42198
2017-11-17 14:29:07 -08:00
Colin Cross 91453a791a Merge changes from topics "soong_logtags", "droiddoc_srcjars"
am: 6dfde48ba1

Change-Id: I32a41c27dca1a17413d23fda9644795092781b0b
2017-11-17 21:38:42 +00:00
Colin Cross 08a6a3fd98 Use logtags without merged file
am: b1bd1aabca

Change-Id: Ibad4317fbf0624418c4650b2d2f8e4e486d0913a
2017-11-17 21:38:28 +00:00
Colin Cross 735dc93f3f Export extract-srcjars.sh to Make
am: 1763da8eb9

Change-Id: I1c5860fb7e040bf4e9a60f66b479d8a41743a5fd
2017-11-17 21:38:14 +00:00
Colin Cross bfb1ffdfee Remove partial javastream proto support
am: d243091381

Change-Id: Ic9909601d35596450c27b2df3d0860f193767229
2017-11-17 21:37:57 +00:00
Colin Cross 4a5899610d Add support for .srcjar files from genrules and srcs
am: af05017b75

Change-Id: I381c6d6be55ccb8fe3e5af661ce948d9525b3489
2017-11-17 21:37:45 +00:00
Colin Cross e77d7dc920 Fix java AIDL properties to match C/C++
am: ebe1a51c81

Change-Id: I570e578626bc9876b778919c52179e38f806161c
2017-11-17 21:37:25 +00:00
Colin Cross dbe0ca5a79 Fix proto flags in java
am: d5dbfb78a0

Change-Id: I656802ef2bd4894b5bda331476f43da05d75496d
2017-11-17 21:37:08 +00:00
Colin Cross 6dfde48ba1 Merge changes from topics "soong_logtags", "droiddoc_srcjars"
* changes:
  Fix genrules depending on Go tools
  Use logtags without merged file
  Export extract-srcjars.sh to Make
  Remove partial javastream proto support
  Add support for .srcjar files from genrules and srcs
  Fix java AIDL properties to match C/C++
  Fix proto flags in java
2017-11-17 21:32:27 +00:00
Colin Cross 93d0b33f46 Merge changes I0434b003,I1a1a01c5
am: fd9b570c5e

Change-Id: I9ce9c108f828946a992bf941063d0b6646b47f74
2017-11-17 21:11:32 +00:00
Treehugger Robot fd9b570c5e Merge changes I0434b003,I1a1a01c5
* changes:
  Fix using aidl files from filegroups
  Add cc_library tests
2017-11-17 21:07:21 +00:00
Colin Cross b1bd1aabca Use logtags without merged file
Assume logtags files will have hardcoded tag numbers and don't
build against the merged file.  Simplifies the build when
logtags files are split across Make and Soong.

Test: m checkbuild
Change-Id: I1e995ec458690fcadb1b86d64864f277aa9fe3af
2017-11-17 11:22:08 -08:00
Colin Cross 1763da8eb9 Export extract-srcjars.sh to Make
Export extract-srcjars.sh to Make so that it can be used to add
srcjar support to droiddoc rules.

Test: m checkbuild
Change-Id: I203ba6dad731ec9167eb8706bbfb345a484f024b
2017-11-17 11:22:08 -08:00
Colin Cross d243091381 Remove partial javastream proto support
javastream proto is rarely used and tricky to support directly
in java because it depends on an extra host tool.  It can be
supported with a genrule, so just remove the partial built-in
support.

Test: m checkbuild
Change-Id: Iffe75e7040cb889ca17fdd85ef3e8e64fc3aa9e9
2017-11-17 11:22:08 -08:00
Colin Cross af05017b75 Add support for .srcjar files from genrules and srcs
Allow srcs to contain .srcjar files, which will be extracted just
before javac.  Also allow genrules and generated sources to directly
return .srcjar files.

Test: m checkbuild
Change-Id: Ie4cf60ecb9d2ec63a4c2275221544203b1383597
2017-11-17 11:22:08 -08:00
Colin Cross ebe1a51c81 Fix java AIDL properties to match C/C++
The C/C++ aidl properties use:
aidl: {
    local_include_dirs: [],
    include_dirs: [],
}

But the Android.bp file was expecting:
aidl_include_dirs: [],
export_aidl_include_dirs: [],

Update java AIDL support to match the C support, which is
also what the androidmk conversion tool is creating.

Test: m checkbuild
Change-Id: I3df763d0b203b1b6556798a21b0553e7d35ad7d5
2017-11-17 11:22:08 -08:00
Colin Cross d5dbfb78a0 Fix proto flags in java
Compute the common proto flags and pass them to the protoc invocation
when generating java files.

Test: m checkbuild
Change-Id: I0d4c23ad001d01eab03b404545383f009214106d
2017-11-17 11:22:08 -08:00
Colin Cross 35143d0466 Fix genrules depending on Go tools
genrules lost the ability to depend on Go tools after
I05e945f38915d49cd3c0ab72a86576949bc7eff2 which converted
VisitDirectDeps from blueprint Modules to android Modules.
Add VisitDirectDepsBlueprint to visit all modules including
blueprint Modules, and use it in genrule.  Also add a check
for disabled modules that was being handled by
VisitDirectDeps.

Test: m checkbuild
Change-Id: I65724283166c63596d071e598c08fed87ef32896
2017-11-17 11:22:08 -08:00
Colin Cross f18e11074d Fix using aidl files from filegroups
Compute sources including from filegroup and genrule dependencies
before determining if any sources will cause flags to be added.

Test: gen_test.go
Change-Id: I0434b003bbda07a58bb2ce1a0a72997918c8fae2
2017-11-17 11:22:08 -08:00
Colin Cross ad59e75a56 Add cc_library tests
Add tests around reusing objects between static and shared
libraries.

Test: library_test.go
Change-Id: I1a1a01c5ea9f9edfbcaa5b29c39c281630e04f70
2017-11-17 11:22:04 -08:00
Tobias Thierer 61324f379a Support EXPERIMENTAL_USE_OPENJDK9=false.
am: a7cdd156a6

Change-Id: I7c8932d3cd984b75995b7c09dd5e2ba70ad5c743
2017-11-17 15:19:33 +00:00
Tobias Thierer a7cdd156a6 Support EXPERIMENTAL_USE_OPENJDK9=false.
This fourth possible value currently has the same semantics
as a default/unset EXPERIMENTAL_USE_OPENJDK9, but allows
people to explicitly switch back to the old semantics when
the default changes.

Test: make showcommands core-oj (in environments with
      EXPERIMENTAL_USE_OPENJDK9 set to "", "1.8", and "true").
Bug: 38177295

Change-Id: I25accf14344a05349a6e97572d7c2c1f6a7f2063
2017-11-17 13:14:11 +00:00
Jeff Gaston 9da1cb4708 Implement diff_build_graphs.sh
am: ef633e0959

Change-Id: Ib55be2e3f2bbfd4f5207f8e3c69ed33c397f9c36
2017-11-17 03:25:28 +00:00
Jeff Gaston 8f11041096 multiproduct_kati support for a custom list of products
am: b61e3f79ec

Change-Id: I2b1095c0756ea18f4949bf1ff17e25bc8858e4df
2017-11-16 21:12:33 +00:00
Jeff Gaston ef633e0959 Implement diff_build_graphs.sh
It runs multiproduct_kati against the pre-changed and post-changed
code and confirms that the ninja files remain unchanged

Test: ./diff_build_graphs.sh 'build/blueprint:work^' 'build/blueprint:work'
Bug: 67478260

Change-Id: Ib43f54428b7c5abbe7706f464ee16dc8d0ef6f76
2017-11-15 16:07:14 -08:00
Jeff Gaston b61e3f79ec multiproduct_kati support for a custom list of products
Test: multiproduct_kati --products="aosp_arm,aosp_arm64"
Bug: 67478260
Change-Id: Icf7b8b0c30a2dc8e093ab109172675ff74f43adc
2017-11-15 15:31:38 -08:00
Colin Cross c7155993ee Set -fomit-frame-pointer for all devices
am: 20823f95e6

Change-Id: I01bbd0dd9b777c2f48ffd5c036f2ef511c2c07a6
2017-11-15 21:48:15 +00:00
Colin Cross 20823f95e6 Set -fomit-frame-pointer for all devices
-fomit-frame-pointer was only being set for arm and mips.  Since
we always use unwind tables and not frame pointers to unwind, and
since ART generated code does not use frame pointers, just turn
off frame pointers everywhere to gain an extra register.

Bug: 68951394
Test: m checkbuild
Change-Id: I9237d486a0c0215cdafd96d66712082df0eba785
2017-11-15 18:52:42 +00:00
Colin Cross f053a45ad9 Merge changes Iae2bda98,I68e64888,I75af16e7
am: d03553cf13

Change-Id: I775a10c73ab21f6afb102e7a0a1d8ef42d061137
2017-11-15 01:44:15 +00:00
Treehugger Robot d03553cf13 Merge changes Iae2bda98,I68e64888,I75af16e7
* changes:
  Remove gcc-specific optimizations
  Move some flags to affect all devices
  Move -fvisibility-inlines-hidden to global device cppflags
2017-11-15 01:34:46 +00:00
Jiyong Park bd913486bf Merge "Make cc.NewLLndkStubLibrary as public"
am: 31c3239038

Change-Id: I360c2eaa52ad750e0948a0f16aa82c963d54f6bb
2017-11-15 01:29:46 +00:00
Colin Cross 7b38d380bd Merge changes I5059a1e3,I5a06a893
am: fff8ad2f35

Change-Id: If2bde9159092b2b2dfcb1cc03885781555875db0
2017-11-15 01:29:17 +00:00
Dan Willemsen ebe75b0228 Merge "Update default configuration"
am: 90377447c8

Change-Id: I6a064a213953d4279f185af19f2efa7fed4bfb98
2017-11-15 01:28:57 +00:00